MyBB.de Forum
In bestimmten Postings etwas zusätzliches Anzeigen? - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html)
+--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html)
+--- Thema: In bestimmten Postings etwas zusätzliches Anzeigen? (/thread-22168.html)

Seiten: Seiten: 1 2


In bestimmten Postings etwas zusätzliches Anzeigen? - baeckerman83 - 17.03.2010

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. Sad Kann mir jemand das Template verraten?

Achja es ist ein MYBB in der Grundinstallation mit dem default Template.


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - StefanT - 17.03.2010

Ich kann dir nicht sagen, warum es nicht funktioniert. Richtig bist du jedenfalls.


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - baeckerman83 - 17.03.2010

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()
{
}
?>



RE: In bestimmten Postings etwas zusätzliches Anzeigen? - StefanT - 17.03.2010

Das ist nur eine lokale Variable, du musst sie also global setzen: http://de.php.net/manual/de/language.variables.scope.php


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - baeckerman83 - 17.03.2010

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>


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - StefanT - 17.03.2010

Im Template gehört auch kein Semikolon rein. Benutzt du auch das veränderte Template?


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - baeckerman83 - 17.03.2010

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>



RE: In bestimmten Postings etwas zusätzliches Anzeigen? - StefanT - 18.03.2010

Wird denn das "Hier:" angezeigt?


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - baeckerman83 - 19.03.2010

Hiho!
Ja das hier wird angezeigt. Habe es jetzt anders gelöst, wenn ich da das in $post['test_ben'] schreibe dann gehts.


RE: In bestimmten Postings etwas zusätzliches Anzeigen? - StefanT - 19.03.2010

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.