MyBB.de Forum
Plugin - Template und Hook - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Entwicklung (https://www.mybb.de/forum/forum-74.html)
+--- Thema: Plugin - Template und Hook (/thread-32520.html)



Plugin - Template und Hook - baeckerman83 - 23.08.2015

Hiho!

Ich nutze MyBB 1.8.5
Ich habe ein Template "forumdisplay_newreply_bottom"

Code:
<a href="newreply.php?tid={$bet_tid}" class="button new_reply_button">
    <img class="newthread new_reply_bottom" src="{$theme['imglangdir']}/newreply_bottom.gif" alt="{$lang->post_thread}" title="{$lang->post_thread}" />
</a>

Nun bekomme ich es aber nicht hin das $bet_tid gefüllt wird. hatte dort auch schon nur $tid stehen, das ging auch nicht.

PHP-Code:
$plugins->add_hook("showthread_end""template_newthread_bottom");

function 
template_newthread_bottom(){
    global $templates;
    global $tid;
    global $bet_tid;

    $bet_tid=5;
    echo "TEST".$tid."B";
    eval("\$forumdisplay_newreply_bottom = \"".$templates->get("forumdisplay_newreply_bottom")."\";"); 


Das echo wird ausgegeben und aber das Template erscheint nicht.

Kann mir da jemand bitte helfen?


RE: Plugin - Template und Hook funktioniert nicht. - baeckerman83 - 23.08.2015

PHP-Code:
$plugins->add_hook("global_intermediate""template_newthread_bottom");

function 
template_newthread_bottom(){
    global $bet_tid;
    global $mybb;
    global $templates
    
    eval
("\$forumdisplay_newreply_bottom = \"".$templates->get("forumdisplay_newreply_bottom")."\";");

    $bet_tid=$mybb->get_input('tid'MyBB::INPUT_INT);



ich habe noch ein Hook ausprobiert. Dann wird die Varibale $bet_tid ausgegeben im Template das klappt. Aber das Template "forumdisplay_newreply_bottom" wird nicht ausgegeben.

Hab dann noch versucht unter global.php

PHP-Code:
$plugins->run_hooks('global_intermediate');

 eval(
"\$forumdisplay_newreply_bottom = \"".$templates->get("forumdisplay_newreply_bottom")."\";"); 

Um zu sehen das die Hook stelle richtig ist, und ja dann klappt es auch alles. Aber wieso nicht wenn ich den Hook nutze? Fehlt mir noch was?


RE: Plugin - Template und Hook - baeckerman83 - 27.08.2015

Hat keiner eine Idee?


RE: Plugin - Template und Hook - frostschutz - 27.08.2015

global fehlt


RE: Plugin - Template und Hook - baeckerman83 - 28.08.2015

Was meinst du mit Global fehlt?


RE: Plugin - Template und Hook - StefanT - 28.08.2015

Um $forumdisplay_newreply_bottom außerhalb der Funktion nutzen zu können, muss die Variable global verfügbar gemacht werden; so wie du das mit $mybb oder $templates bereits machst. Siehe auch: http://php.net/manual/de/language.variables.scope.php


RE: Plugin - Template und Hook - baeckerman83 - 28.08.2015

Oh man ich dachte ich hätte das versucht und es hat nicht geklappt. Super danke jetzt geht es!