View Full Version : rawphrase in custom php file
aminp30
09-18-2015, 02:03 PM
Hi
I created php page in vb 4.2.1
in my php code I used html codes too and I need add vb:rawphrase in it.but it doesn't work.
what should I do?
this is example code:
<table>
<thead><tr><th colspan="2">{vb:rawphrase question_text}</th><th>{vb:rawphrase choices}</th><th>{vb:rawphrase score}</th></tr></thead>
<tfoot><tr><td colspan="4"><div id="paging"><input type="submit" value="{vb:rawphrase submit_question}"></div></td></tr></tfoot>
What does the PHP code in your custom PHP file look like?
Also you're entirely sure those phrases exist?
aminp30
09-18-2015, 03:23 PM
What does the PHP code in your custom PHP file look like?
Also you're entirely sure those phrases exist?
thank Dave for reply
what do you mean of look like?
I created a php page. for example "quiz". then I add template named "quiz". then in plugins I add some code to include another php file to quiz.php
I need add vb:rawphrase and vb:stylevar in second php file
yes I'm sure.
Scandal
09-19-2015, 04:21 PM
thank Dave for reply
what do you mean of look like?
I created a php page. for example "quiz". then I add template named "quiz". then in plugins I add some code to include another php file to quiz.php
I need add vb:rawphrase and vb:stylevar in second php file
yes I'm sure.
Inside a php file you use $vbphrase['phrasevarname'] and - I think - $stylevar['stylevarname'].
Inside a template you use {vb:rawphrase question_text} etc.
About the phrases, be sure you have set inside the php file, the correct Phrase Groups:
$phrasegroups = array(
'posting',
'vbblogglobal',
'postbit',
'vbblogcat',
);
(the above is an example - this code is places usually at the start of the php file, before the include o /global.php)
You set a group for each phrase you add on the system.
aminp30
09-19-2015, 07:02 PM
thank you so much dear Scandal
this code work for me without define phrasegroups:
<form action="" method="get"><div class="datagrid"><table>
<thead><tr><th colspan="2"><?php echo $vbphrase[quiz_question_text] ?></th><th><?php echo $vbphrase[quiz_choices] ?></th><th><?php echo $vbphrase[quiz_score] ?></th></tr></thead>
but I need add some phrase and stylevar in the code using {vb:rawphrase something}
because I have phrases with variable and I can't add variable with php code
would you please tell me more about phrasegroups and its array contents?
Scandal
09-22-2015, 03:29 PM
hmmm, did you use the templater of vbulletin to display the content?
An example of use it is in this article (https://vborg.vbsupport.ru/showthread.php?t=228112).
In the above article, there is the example template "TEST". Inside "TEST" you can use {vb:rawphrase something} instead of $vbphrase with php's echo's.
Of course, phrase "something" in {vb:rawphrase something} should belongs to a phrase group which you have setup in $phrasegroups = array(...) at the start of your php file.
To build the $phrasegroups array, you just need the phrase group varname (which you can find in admincp > (sidebar) Languages & Phrases > Phrase Manager > (button) Add New Phrase > (see the source code of Phrase Type select menu).
For help reasons, I attach you here the phrase group varnames:
accessmask==Access Masks
activitystream==Activity Stream
advertising==Advertising
album==Albums
attachment_image==Attachment / Image
banning==Banning Tools
bbcode==BB Code Tools
calendar==Calendar
ckeditor==CKEditor
contenttypes==Content Types
cpcms==Content Management System AdminCP
cpglobal==Control Panel Global
cphelptext==Control Panel Help Text
cphome==Control Panel Home Pages
cpoption==Control Panel Options
cppermission==Permissions
cprank==Control Panel User Ranks
cprofilefield==Custom Profile Fields
cpuser==Control Panel User Management
cpusergroup==Control Panel User Groups
cron==Scheduled Tasks
diagnostic==Diagnostic Tools
emailbody==Email Body Text
emailsubject==Email Subject Text
error==Error Messages
faqtext==FAQ Text
faqtitle==FAQ Title
forum==Forum-Related
forumdisplay==Forum Display
fronthelp==Frontend FAQ/Help
frontredirect==Front-End Redirect Messages
global" selected="selected==GLOBAL
help_faq==FAQ / Help Management
holiday==Holidays
hvquestion==Human Verification Questions
infraction==User Infractions
infractionlevel==User Infraction Levels
inlinemod==Inline Moderation
language==Language Tools
logging==Logging Tools
maintenance==Maintenance Tools
messaging==Messaging
moderator==Moderators
notice==Notices
panjo==Panjo
plugins==Plugin System
pm==Private Messaging
poll==Polls
postbit==Postbit
posting==Posting
prefix==Thread Prefixes
prefixadmin==Thread Prefixes (Admin)
profilefield==Profile Field Tools
promotion==Promotion Tools
register==Register
reputation==Reputation
reputationlevel==Reputation Levels
search==Searching
showthread==Show Thread
socialgroups==Social Groups
sql==SQL Tools
stats==Statistics Tools
style==Style Tools
subscription==Subscription Tools
tagscategories==Tag and Category Tools
thread==Thread Tools
threadmanage==Thread Management
timezone==Timezones
user==User Tools (global)
vbblock==Forum Blocks
vbblocksettings==Forum Blocks Settings
vbblogadmin==vBulletin Blog Admin
vbblogcat==vBulletin Blog Admin Categories
vbblogglobal==vBulletin Blog Global
vbcms==Content Management System
vbpager==vB Pager
vbsettings==vBulletin Settings
widgettypes==CMS Widget Types
wol==Who's Online
In the above page you add also your phrases. So, if you add the following code in your php file:
$phrasegroups = array('wol', 'socialgroups');
.. when your php file loads, will load also all phrases that belongs to the above groups and you can use them in your template/php code as {vb:rawphrase or $vbphrase.
aminp30
09-22-2015, 06:36 PM
thank you Scandal for reply
yes I did.
as you said, I add phrase group in my php file but it dosn't work yet. please take a look at my code:
<?php
error_reporting(E_ALL & ~E_NOTICE);
define('THIS_SCRIPT', 'questions');
define('CSRF_PROTECTION', true);
$phrasegroups = array('global');
$specialtemplates = array();
$globaltemplates = array('questions');
$actiontemplates = array();
require_once('./global.php');
require_once('./includes/functions.php');
// ################################################## #####################
// ######################## START MAIN SCRIPT ############################
// ################################################## #####################
$allow= array(5,6,20,27);
if(in_array($vbulletin->userinfo[usergroupid], $allow) == 0){ print_no_permission(); }
$navbits = construct_navbits(array('' => $vbphrase['questions']));
$navbar = render_navbar_template($navbits);
$pagetitle = 'Questions';
$templater = vB_Template::create('questions');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('pagetitle', 'questions');
print_output($templater->render());
?>
and part of my second php code is:
<form action="" method="get"><div class="datagrid"><table>
<thead><tr><th>{vb:rawphrase quiz_question_text}</th><th>{vb:rawphrase quiz_choices}</th><th>{vb:rawphrase quiz_score}</th></tr></thead>
<tfoot><tr><td colspan="4"><div id="paging"><input type="submit" value="{vb:rawphrase quiz_submit_question}"></div></td></tr></tfoot>
<tbody><tr>
is there any thing wrong?
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.