The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
![]()
Hi,
our forum get monthly new subforums. and at the moment we define where and to who we will show our ads (which are located in postbit_legacy, forumhome, forumdisplay, showthread, header, headerinclude, footer, navbar templates) by template conditionals. but everytime a new subforum created we have to update the array $GLOBALS['forumid'] all conditionals with the new forumid. 1. to save time, we are thinking of adding a "$show_ads_forumid_variable" to somewhere and use it the conditionals, so we dont need always to update all conditionals with the new forumid. 2. we put in the forum-options (forum-manager) a field like "show ads (yes/no)", so all templates in this forum will not show the ads if no-> selected.... i will be happy, when somebody could help me with this issue out, i am also will to pay for it... thank for you... |
#2
|
|||
|
|||
![]()
You could create a plugin using hook location parse_templates and code something like this:
Code:
global $show, $forumid; if (isset($forumid) AND in_array($forumid, array(1, 2, 3))) { $show['ads_forumid_variable'] = 1; } then change all your template conditions to be: Code:
<if condition="$show['ads_forumid_variable']"> if you wanted to get fancy you could make the forum list a field in the settings, or you could even make it an option when creating a forum. |
#3
|
|||
|
|||
![]()
Thank you Kevin.
a) work this plugin also with conditions in postbit_legacy template? b) in forums with the forumid 1, 2, 3, the ad will shown or not shown, if i use <if condition="$show['ads_forumid_variable']"> in the postbit_legacy template |
#4
|
|||
|
|||
![]() Quote:
I haven't tried it, but I thought it would. Are you asking because it doesn't work in postbit_legacy? Quote:
|
#5
|
|||
|
|||
![]()
ah ok, so if i wouldnt like to show, i should use
PHP Code:
curiously the ads also not shown in forumhome ... although i just give some forumids in the plugin... postbit_legacy doesnt work ![]() |
#6
|
|||
|
|||
![]()
I think froumhome does not have an associated forumid, so if you want them to show in forumhome, maybe try this:
Code:
global $show, $forumid; if (!isset($forumid) OR !in_array($forumid, array(1, 2, 3))) { $show['ads_forumid_variable'] = 1; } I'm not sure why it wouldn't work in postbit_legacy. What did you have in that template before? |
#7
|
|||
|
|||
![]()
my aim is the set the forumids in the plugin where i dont want to show the ads... so how my final plugin code should look like, if i use <if condition="$show['ads_forumid_variable']"></if> in the templates...
in postbit_legacy it worked before only if i used just 1 forumid like "$forumid != 3" but with arrays never worked for me ... i tried: $thread['forumid'] $GLOBALS['forumid'] $foruminfo['forumid'] $forum['forumid'] ![]() |
#8
|
|||
|
|||
![]()
I think you should be able to use the same condition (checking $show[''ads_forumid_variable']) in all places, if the plugin code is correct. It seems like it should work even in postbit_legacy.
I tested this: using hook parse_templates and this code: Code:
global $show, $forumid; if (!isset($forumid) OR !in_array($forumid, array(1, 3, 4))) { $show['ads_forumid_variable'] = 1; } Then in postbit_legacy template I have: Code:
<if condition="$show['ads_forumid_variable']"> Show Ads!!! </if> and I find that the "Show Ads!" appears in forum 2 but not in others. |
#9
|
|||
|
|||
![]()
thanks kevin for ur support so far!
it works with all other templates beside postbit_legacy... i have this condition: <if condition="(($post[postcount] % $vboptions[maxposts] == 1)) AND ($show['member']) AND $show['ads_forumid_variable']"> usually it should show for members who are not visiting the forum (ids in plugin) in the first post an ad. but it doesnt... i allready disabled and flushed all caching stuff (xcache,etc..) maybe there is a correlation within other plugins? i select "1" as "order" for your plugin ... but it doesnt help... i used andreas, template modification system which hooks starts at "template_compile" ... maybe this makes the problem? is there any other location where i can hook your plugin? |
#10
|
||||
|
||||
![]()
I've created this https://vborg.vbsupport.ru/showthread.php?t=286403 which may help, really simple and does the job (pretty much)
![]() |
![]() |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|