Hướng dẫn Hướng dẫn tạo trang riêngtrong vbb 4

  • Thread starter Thread starter xmen94
  • Start date Start date
X

xmen94

New Member
Vip
This is an updated article
on how to create your
own vbulletin powered
page. It's only for use
with vB4.
This is NOT my work. I'm
posting this from another
thread where vB Style
took the time to write
this out. And his work is
based on the article by
Gary King here - How to
create your own
vBulletin-powered page!
(uses vB templates)
Instructions to Create
your Own Page:
1. Create the php page:
- 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:
<?php
// ###############
######## SET PHP
ENVIRONMENT ######
#################
####
error_reporting(E_ALL &
~E_NOTICE);
// ###############
##### DEFINE
IMPORTANT CONSTANTS
#################
######
define('THIS_SCRIPT',
'test');
define('CSRF_
PROTECTION', true);
// change this depending
on your filename
// ###############
#### PRE-CACHE
TEMPLATES AND DATA #
#################
####
// get special phrase
groups
$phrasegroups = array();
// get special data
templates from the
datastore
$specialtemplates = array
();
// pre-cache templates
used by all actions
$globaltemplates = array
('TEST',
);
// pre-cache templates
used by specific actions
$actiontemplates = array
();
// ###############
########## REQUIRE
BACK-END #########
#################
##
// if your page is outside
of your normal vb
forums directory, you
should change directories
by uncommenting the
next line
// chdir ('/path/to/your/
forums');
require_once('./
global.php');
// ###############
#################
#################
#################
#####
// ###############
######### START
MAIN SCRIPT ########
#################
###
// ###############
#################
#################
#################
#####
$navbits = construct_
navbits(array('' => 'Test
Page'));
$navbar = render_
navbar_template($
navbits);
// ###### YOUR
CUSTOM CODE GOES
HERE #####
$pagetitle = 'My Page
Title';
// ###### NOW YOUR
TEMPLATE IS BEING
RENDERED ######
$templater = vB_
Template::create('TEST');
$templater->register_
page_templates();
$templater->register
('navbar', $navbar);
$templater->register
('pagetitle', $pagetitle);
print_output($templater-
>render());
?>
- Be sure to change
'TEST' to the actual
template name, and
change 'test' to the
filename or a unique
name for the page. Also,
change 'Test Page' and
'My Page Title' to
whatever you want to
show in the navbits, such
as 'Viewing Member
Profile' (just an example).
2. Create the
Template:
- If you are in debug
mode, create the
template in your MASTER
STYLE so it shows up in
all your styles, otherwise
make sure you create the
template in the style you
are using. If following the
page above, call the
template TEST with the
following content:
HTML Code:
{vb:stylevar htmldoctype}
<html xmlns="http://
www.w3.org/1999/
xhtml" dir="{vb:stylevar
textdirection}"
lang="{vb:stylevar
languagecode}"
id="vbulletin_html">
<head>
<title>{vb:raw
vboptions.bbtitle} -
{vb:raw pagetitle} </title>
{vb:raw headinclude}
{vb:raw headinclude_
bottom}
</head>
<body>
{vb:raw header}
{vb:raw navbar}
<div id="pagetitle">
<h1>{vb:raw
pagetitle}</h1>
</div>
<h2
class="blockhead">Title<
/h2>
<div
class="blockbody
settings_form_border">
<div
class="blocksubhead">
DuyK_1</div>
<div
class="blockbody">
<div
class="blockrow">
DuyK</br>
DuyK</br>
DuyK</br>
DuyK</br>
DuyK</br>
</div>
</
div>
</div>
{vb:raw footer}
</body>
</html>
Instructions to Add
your Page to the Who's
Online List (WOL):
Create two plugins using
the following hooks.
Replace mypage and
similar with your
information.
1. hook location -
online_location_
process:
PHP Code:
switch ($filename)
{
case 'test.php':
$userinfo['activity'] =
'mypage';
break;
// add more cases here
if you have more than
one custom page. no
need for multiple
plugins. one plugin can
handle all.
}
2. hook location online_
location_unknown:
PHP Code:
switch ($userinfo
['activity'])
{
case 'mypage':
$userinfo['where'] = '<a
href="test.php?'.$
vbulletin->session->vars
[sessionurl].'">My Page</
a>';
$userinfo['action'] =
"Viewing My Page";
$handled = true;
break;
// add more cases here if
you have more than one
custom page. no need
for multiple plugins. one
plugin can handle all.
}
Resource: vBulletin.org

----------> Bổ sung bài viết lúc 13:28 PM <----------> Bài viết trước lúc 13:27 PM <----------

Nguon:
DAICA
 

Facebook Comments

Similar threads

Admin
Replies
4
Views
3K
AdminAdmin is verified member.
Admin
H
Replies
0
Views
1K
htnkenji
H
Back
Top