PDA

Voir la version complète : help cache template


funakoshi
26/05/2007, 18h40
voila je suis en train de creer un hack et j'appelle une template dans le forumhome

alors dans mon code
eval('$test .= "' . fetch_template('funapack_template') . '";');


dans le forumhome sous $navbar
$test

et là ça marche impec mais ce que je voudrais faire c'est
dans mon code

eval('$test.= "' . fetch_template('funapack_template') . '";');
$vbulletin->templatecache['FORUMHOME'] = str_replace($navbar, $navbar . ' $test', $vbulletin->templatecache['FORUMHOME']);


pour qu'il n'y ait rien a modifier dans le forumhome et qu'il trouve le $navbar tout seul
et là ça ne fonctionne pas...
ou est l'erreur?
merci beaucoup pour votre aide
@+

Sofia
26/05/2007, 18h52
Ceci :


<plugin active="1" executionorder="5">
<title>cache templates</title>
<hookname>cache_templates</hookname>
<phpcode><![CDATA[global $globaltemplates;

$globaltemplates = array_merge($globaltemplates, array('funapack_template'));]]></phpcode>
</plugin>
<plugin active="1" executionorder="5">
<title>Ton titre</title>
<hookname>forumhome_complete</hookname>
<phpcode><![CDATA[
eval('$test = "' . fetch_template('funapack_template') . '";');
$vbulletin->templatecache['FORUMHOME'] = str_replace(
'$navbar',
'$navbar $test',
$vbulletin->templatecache['FORUMHOME']
);
}]]></phpcode>
</plugin>

MtoR
26/05/2007, 19h36
Pour le première hook, je ne suis pas trop d'accord avec toi Sofia car là tu créé un hook qui va s'exécuter à chaque chargement de n'importe quelle page.

Donc funakoshi, je te conseille plutôt de créér le premier hook sur forumhome_complete :).

Sofia
26/05/2007, 19h38
Pour le première hook, je ne suis pas trop d'accord avec toi Sofia car là tu créé un hook qui va s'exécuter à chaque chargement de n'importe quelle page.

Donc funakoshi, je te conseille plutôt de créér le premier hook sur forumhome_complete :).

Oui, tu as raison Mtor, j'ai pas fais gaffe qu'il ne s'agissait que de l'index. ;) J'ai corrigé :)

funakoshi
26/05/2007, 19h54
oui j'avais bien (pardon j'avais oublié)

hook location cache_templates

if (THIS_SCRIPT == "index")
{
global $globaltemplates;
$globaltemplates = array_merge($globaltemplates, array('funapack_template'));
}


et
dans forumhome_start

eval('$test.= "' . fetch_template('funapack_template') . '";');
$vbulletin->templatecache['FORUMHOME'] = str_replace($navbar, $navbar . ' $test', $vbulletin->templatecache['FORUMHOME']);



je viens de m'apercevoir que y a une erreur de syntaxe
merci a vous deux ça fontionne
avec
eval('$test = "' . fetch_template('funapack_template') . '";');
$vbulletin->templatecache['FORUMHOME'] = str_replace(
'$navbar',
'$navbar $test',
$vbulletin->templatecache['FORUMHOME']
);

ça fera des modif en moins a l'install ;) merci
@+