The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
How to create your own vBulletin-powered page! (uses vB templates)
Want to create your very own vBulletin powered page which includes the header, footer, and the user permissions system as well? Well now you can Want to know how it will look? Take a look at the attached screenshot below! Now includes the Who's Online modification! Also, instructions included on how to create your own pages that are integrated with current vBulletin files! I'm going to give you a generic page but you can easily modify the contents of the page by changing the template So here we go Instructions: Create a new file, whatever you want to call it (let's say test.php). Open up test.php and add the following (replace TEST with whatever template you want to show): PHP Code:
Now create the template, called TEST with the following content: HTML Code:
$stylevar[htmldoctype] <html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]"> <head> <title>$vboptions[bbtitle]</title> $headinclude </head> <body> $header $navbar <table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"> <tr> <td class="tcat">Title</td> </tr> <tr> <td class="alt1">Text</td> </tr> </table> $footer </body> </html> Now check it out by going to test.php Who's Online Modification Now if you want to show who is browsing this new page of yours, just open up includes/functions_online.php and find: PHP Code:
PHP Code:
Then find: PHP Code:
PHP Code:
---------------------------------- Also if you want to create your own pages 'within' current vBulletin files, do the following: Open the file you want, and then right before the final ?> in the source code, add the following: PHP Code:
edit by Lynne: If running 3.8.4 or above, see this post to take care of the PHP 5.3.0-related problems - https://vborg.vbsupport.ru/showpost....postcount=1171 |
#1242
|
|||
|
|||
Is there a way to block custom pages like these from guests being able to view them unless they log in? with having the link to the pages in the navbar as well?
|
#1243
|
||||
|
||||
Quote:
HTML Code:
<if condition="$show['member']"> ALL YOUR CONTENT HERE <else /> <tr> <td> <h2>You need to be registered or logged in to view this page</h2> </td> </tr> </if> |
#1244
|
||||
|
||||
It's not a good idea to do this on the template level. Just add this at the top of your custom code in the php file:
PHP Code:
|
#1245
|
|||
|
|||
ahh excellent thank you very much ^_^
|
#1246
|
||||
|
||||
Cellarius, why is it not a good idea to manage it at template level?, doing it with a template conditional means that it's easily manipulated later by admins...etc rather than having to access server files, unless i'm missing a security flaw or something?
|
#1247
|
||||
|
||||
First and foremost: Performance. Why run the whole file, go through the whole variable/template registering and rendering process etc. just to show nothing in the end?
Next, you break UI consistency by not using the usual way of handling such errors: You need to code your error message yourself instead of using the standard no permissions message, which is phrased and thus works with multi language environments. Last, but not least: There is a standard procedure in vB to do this, and that's the way I did it. Just look at the original files. And if there is a standard way, it should be used. Anyway, I really don't follow your argumentation - how often do your Admins need to change which usergroups get access to a custom page? This does not seem like a weekly operation to me, does it? This is a set it and forget it decision, is it not? |
#1248
|
|||
|
|||
Dont work for me
|
#1249
|
||||
|
||||
Your php code does not get parsed. Make sure your file has the .php extension and starts with <?php.
|
#1250
|
||||
|
||||
Quote:
--------------- Added [DATE]1274003452[/DATE] at [TIME]1274003452[/TIME] --------------- Could it be incorporated in a pluggin where you can state which templates cannot be accessed? Could you also tell me how to do this in a php statement? <if condition="is_member_of($vbulletin->userinfo, array(1, 2, 3))">. |
#1251
|
||||
|
||||
Quote:
Quote:
Quote:
Quote:
|
#1252
|
||||
|
||||
Quote:
Could it be incorporated in a pluggin where you can state which templates cannot be accessed? Could you also tell me how to do this in a php statement? <if condition="is_member_of($vbulletin->userinfo, array(1, 2, 3))">. |
#1253
|
||||
|
||||
Quote:
https://vborg.vbsupport.ru/showthread.php?t=83390 The code for your hook would be: PHP Code:
Quote:
PHP Code:
|
#1254
|
||||
|
||||
Cellarius, if you wouldn't mind helping a little further, i have created an xml for the hook (as per Pauls' thread), custom_template_permission (custom) is how it's shown in the plugins hook location dropdown, what would i need to add template names and permissions to a plug in?, when the plugin is created would the options be in the admincp nav as a button?
|
#1255
|
||||
|
||||
Add the php code for the hook (see my prev post) at the top of the custom code section of your custom php file.
To disallow usergroups from this custom php page add this to the plugin: PHP Code:
PHP Code:
No, this will add no option to your admincp. This adds a normal hook, and you would need to edit the plugin in the plugin sectin of AdminCP. If this is for your own use only, this is the way I'd do it. An AdminCP option just adds unnecessary overhead. Honestly, I wouldn't even add that hook. Just edit your custom php file directly - thats the most performant and simple way, really. And once again: This code does not block access to templates. It blocks access to the whole php file, so to say. |
#1256
|
||||
|
||||
I appreciate the time you took to answer, for now i will add it to the custom php, i was asking the other questions for building things in to the admincp in future.
|
#1257
|
|||
|
|||
how to make a php page with it???
which may display some data from sql database.??? |
#1258
|
||||
|
||||
Just as is explained in the article.
Quote:
Really, it's barely possible to answer unspecific questions like that. |
#1259
|
|||
|
|||
i made my custome page by this tutorial.
now i want to display some data from sql database on it through PHP. all i got till now is that data is currently comming from Template??? can you please tell me where to write my php code?? |
#1260
|
||||
|
||||
If you have your custom page up and running following this tutorial then the purpose of this article and thread is achieved. It can't be the place for every custom programming question. You need to open your own thread for your question. Even better, do some reading before: https://vborg.vbsupport.ru/showthread.php?t=119350
|
#1261
|
|||
|
|||
Thnx For Replying, Im Still Clueless...I Know All Database Queries.
My Question is just that where to write my PHP code and queries to display data properly on this page. |
#1262
|
||||
|
||||
Well, your code goes after the section where it says START MAIN SCRIPT. Save the results of your code into variables, register them, and call them in the template.
|
#1263
|
|||
|
|||
Thnx a lot, Now i got some idea.
--------------- Added [DATE]1274196333[/DATE] at [TIME]1274196333[/TIME] --------------- can you please tell me how to dislpay registered variables in php??? what is proper code??? i am using VB4 --------------- Added [DATE]1274196683[/DATE] at [TIME]1274196683[/TIME] --------------- This Is My Code include "connect.php"; $query = "select * from plants"; $result = mysql_query($query); $row = mysql_fetch_array($result); $templater->register('query', $query); $templater->register('result', $result); $templater->register('row', $row); if(mysql_num_rows($result) > 0) { while($row = mysql_fetch_array($result)) { echo "data found"; } } else { echo "No Record With These Parameters"; } |
#1264
|
||||
|
||||
You're in the wrong thread completely. This is for vB3, but you are using vB4 and thus followed a completely different tutorial. You really need to do some reading on how to register variables for vB4 (there's a tutorial for that, too), and then ask in your own thread. This is totally off topic here, and I won't continue answering in this thread. Before doing so: Please use code or php tags if posting code, and please read the article I linked you to regarding the vB database classes. If doing database operations insinde vB, you really should use them.
|
#1265
|
|||
|
|||
|
#1266
|
|||
|
|||
hello my test.php is like this and gives some errors any help pls?
http://izmir.tr.kg/test.php ? any help? thank you... |
#1267
|
|||
|
|||
Does this work in VB4?
|
#1268
|
||||
|
||||
No. But the article in the vB4 Articles section does.
|
#1269
|
|||
|
|||
Could you please provide a link to that article, i can't find it
Thank you! |
#1270
|
||||
|
||||
It's on the first page of the vB4 articles section.
|
#1271
|
|||
|
|||
I'm having trouble getting this working.
Am getting the following errors (below). ======= Warning: fetch_template() calls should be replaced by the vB_Template class. Template name: navbar in [path]/includes/functions.php on line 3957 Parse error: syntax error, unexpected T_STRING in /home/bostonwh/public_html/adhub1.php(42) : eval()'d code on line 1 Warning: fetch_template() calls should be replaced by the vB_Template class. Template name: adhub1 in [path]/includes/functions.php on line 3957 ======= The last part of my custom php file (named adhub1.php) is as follows (see just below): (and I do have a template named 'adhub1'.) Line 42 - which is where the error msg points to - is the line there that contains '... fetch_template('navbar' ...' Any ideas ? I must be missing something simple. Thanks. // ############ START MAIN SCRIPT ################ $navbits = array(); $navbits[$parent] = 'adhub1'; $navbits = construct_navbits($navbits); eval('$navbar = "' . fetch_template('navbar') . '";'); eval('print_output("' . fetch_template('adhub1') . '");'); ?> |
#1272
|
|||
|
|||
Quote:
This is for vB3 and not vB4 |
#1273
|
|||
|
|||
I see.
Thanks. I was led to this thread by another one (https://vborg.vbsupport.ru/showthread.php?t=228112)... but see that this is for vb3 and that one appears to have tailored the work for vb4. |
#1274
|
|||
|
|||
Hi I am using VB 3.84, I have followed the instructions but getting this error when i go to the page, any ideas, thanks
Quote:
|
#1275
|
|||
|
|||
If I turn Gzip off in VBadmin then the custom page shows up, but then I have no compression and a slow site, how can i get the custom page to show up with th egzip enabled? Thanks
|
#1276
|
||||
|
||||
Quote:
|
#1277
|
||||
|
||||
Hi my friends
I want to see members use online. Create a new page on the outside, but more of how to root forum. Sample web.com/forum/index.php << root forum web.com/new/index.php << my add new sub folder |
#1278
|
|||
|
|||
Can anyone explain how to use this approach to get an OScommerce installation (that lives outside the forums directory) to use vBulletin header/footer/navbar templates and usergroup permissions?
I have an OScommerce installation that I'd like to wrap with my vb header, navbar and footer template and have the user permissions tied in so that the header navigation that is displayed differs from usergroup to usergroup. I just can't figure out where to plug in some of the php code in the OScommerce files. |
#1279
|
|||
|
|||
I didn't get a thing . Is there some good tutorial ,step by step i mean.
|
#1280
|
||||
|
||||
Quote:
look very closely and make sure all the names match up to what they need to be. I just got this working nicely on 3.8.3 |
#1281
|
||||
|
||||
ok so if i want to make this work outside of the forums directory, how do you change the navbits so it doesn't link back to the forum?
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|