Beiträge: 149
Themen: 47
Registriert seit: 08.03.2010
MyBB-Version: 1.8.*
17.03.2010, 12:26
(Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2010, 13:18 von baeckerman83.)
Hiho!
Gibt es einen Hook an dem ich in einem Thread was zusätzliches posten kann?
Also etwa so:
tid=1 pid=6 und dort dann vor dem Beitrag Schreiben "Dieser Beitrag ist sinnvoll". Nur so als Beispiel.
Edit: Ok den Hook (postbit) habe ich gefunden, aber in welchem Template muss ich da etwas ändern? Wenn ich postbit oder post_bit_classic änder tut sich gar nichts. Habe dort auch einfach mal {$post['message']} raus geworfen, aber da sich nichts ändert bin ich wohl im falschen Template.
Kann mir jemand das Template verraten?
Achja es ist ein MYBB in der Grundinstallation mit dem default Template.
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Ich kann dir nicht sagen, warum es nicht funktioniert. Richtig bist du jedenfalls.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 149
Themen: 47
Registriert seit: 08.03.2010
MyBB-Version: 1.8.*
Mhm jetzt gehts. Hat wohl am Browsercache gelegen.
Ich habe $plugin_test_ben; im Template eingefügt, aber das wird nicht ausgegeben. In meinem Plugin habe ich das aber richtig definiert. Wieso gibt er mir das nicht aus?
Template:
Code:
{$ignore_bit}
<a name="pid{$post['pid']}" id="pid{$post['pid']}"></a>
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="{$post_extra_style} {$post_visibility}" id="post_{$post['pid']}">
<tbody>
<tr>
<td class="tcat">
<div class="float_left smalltext">
{$post['postdate']}, {$post['posttime']} <span id="edited_by_{$post['pid']}">{$post['editedmsg']}</span>
</div>
{$post['posturl']}
</td>
</tr>
<tr>
<td class="trow1 {$unapproved_shade}">
<table cellspacing="0" cellpadding="0" border="0" style="width: 100%;">
<tr>
<td class="post_avatar" width="1" style="{$post['avatar_padding']}">
{$post['useravatar']}
</td>
<td class="post_author">
<strong><span class="largetext">{$post['profilelink']}</span></strong> {$post['onlinestatus']}<br />
<span class="smalltext">
{$post['usertitle']}<br />
{$post['userstars']}
{$post['groupimage']}
</span>
</td>
<td class="smalltext post_author_info" width="165">
{$post['user_details']}
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="trow2 post_content {$unapproved_shade}">
<span class="smalltext"><strong>{$post['icon']}{$post['subject']} {$post['subject_extra']}</strong></span>
<div class="post_body" id="pid_{$post['pid']}">
{$post['message']}
</div>
{$post['attachments']}
{$post['signature']}
<div class="post_meta" id="post_meta_{$post['pid']}">
{$plugin_test_ben;}
</div>
</td>
</tr>
<tr>
<td class="trow1 post_buttons {$unapproved_shade}">
<div class="author_buttons float_left">
{$post['button_email']}{$post['button_pm']}{$post['button_www']}{$post['button_find']}
</div>
<div class="post_management_buttons float_right">{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}{$post['button_warn']}{$post['button_reply_pm']}{$post['button_replyall_pm']}{$post['button_forward_pm']}{$post['button_delete_pm']}
</div>
</td>
</tr>
</tbody>
</table>
Hier habe ich $plugin_test_ben; eingefügt, aber das wird nicht ausgegeben. In meinem Plugin habe ich das aber richtig definiert. Wieso gibt er mir das nicht aus?
Plugin:
Code:
<?
// Die Informationen, die im Pluginmanager angezeigt werden
function test_ben_info()
{
return array(
"name" => "Hello_Ben",
"description" => "Pluginbeschreibung",
"website" => "Webseite des Plugins (Herstellerseite)",
"author" => "Name des Erstellers",
"authorsite" => "Webseite des Erstellers",
"version" => "1.0",
);
}
// Diese Funktion wird aufgerufen, wenn das Plugin aktiviert wird.
function test_ben_activate()
{
}
$plugins->add_hook("postbit", "test_ben");
function test_ben()
{
$plugin_test_ben="hallo Ben!";
echo $plugin_test_ben;
}
// Diese Funktion wird aufgerufen, wenn das Plugin deaktiviert wird.
function test_ben_deactivate()
{
}
?>
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Das ist nur eine lokale Variable, du musst sie also global setzen:
http://de.php.net/manual/de/language.var....scope.php
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 149
Themen: 47
Registriert seit: 08.03.2010
MyBB-Version: 1.8.*
17.03.2010, 16:24
(Dieser Beitrag wurde zuletzt bearbeitet: 17.03.2010, 16:29 von baeckerman83.)
Wenn ich da global $plugin_test_ben; einbaue geht es aber auch nicht. Das hatte ich auch auch schon versucht. Und jetzt auch noch mal.
Hier mal der Link zum Forum:
http://81.89.101.37/mybb/showthread.php?tid=1 Da hinter hier sollte das stehen. Habe das Template noch mal angepasst um zu sehen das es auch dort ausgegeben wird.
<div class="post_meta" id="post_meta_{$post['pid']}">
Hier: {$plugin_test_ben;}
</div>
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Im Template gehört auch kein Semikolon rein. Benutzt du auch das veränderte Template?
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 149
Themen: 47
Registriert seit: 08.03.2010
MyBB-Version: 1.8.*
Ja nutze das Template. Auch ohne Semikolon gehts nicht.
Hier nochmal der wichtige Quelltextteil:
Code:
<td class="trow2 post_content {$unapproved_shade}">
<span class="smalltext"><strong>{$post['icon']}{$post['subject']} {$post['subject_extra']}</strong></span>
<div class="post_body" id="pid_{$post['pid']}">
{$post['message']}
</div>
{$post['attachments']}
{$post['signature']}
<div class="post_meta" id="post_meta_{$post['pid']}">
Hier:{$plugin_test_ben}
</div>
</td>
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Wird denn das "Hier:" angezeigt?
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 149
Themen: 47
Registriert seit: 08.03.2010
MyBB-Version: 1.8.*
Hiho!
Ja das hier wird angezeigt. Habe es jetzt anders gelöst, wenn ich da das in $post['test_ben'] schreibe dann gehts.
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Ich denke, es liegt daran, dass das Template auch in einer Funktion ausgeführt wird und da natürlich kein global dafür vorhanden ist.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.