MyBB.de Forum

Normale Version: neuer Link im Menü des Benutzer-CPs
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

für das Benutzer-CP habe ich eine eigene, neue Seite erstellt und einen Link in dem Bereich "Sonstiges" erzeugt, indem ich in dem Template usercp_nav_misc einen zusätzlichen Link erzeugt habe.
PHP-Code:
<tr><td class="trow1 smalltext"><a href="xxxx.php" class="usercp_nav_item usercp_nav_attachments">{$lang->nav_name}</a></td></tr

Nun zum Problem:

Der Link erscheint nicht immer! Wenn ich z.B. einen anderen Link in dem Menü anklicke, dann verschwindet die Grafik des Links und auch der Linkname. An dem Platz des Links steht dann nur "---". Wenn ich aber die Variable {$lang->nav_name} durch einen festen Namen ersetzte, dann gibt es das Problem nicht. Allerdings fehlt dann natürlich der Bezug auf die verschiedenen Sprachen.

In der entsprechenden php-Datei habe ich die lang-Datei mittels
PHP-Code:
// Load global language phrases
$lang->load("usercp"); 
geladen und auch den Namen nav_name in der usercp.lang.php eingefügt. Kann es sein, dass ich in der php-Datei evtl. auch einen Hook laden muss? Wenn ja, welchen? Blush
Die Icons werden über die usercp.css eingebunden, die normalerweise nur bei der usercp.php und der private.php geladen wird. (Einstellungen im Theme) Und die Sprachvariable müsste immer verfügbar sein, die entsprechende Sprachdatei geladen ist.
Müsste ich evtl. in die Datei noch folgendes einbauen?
PHP-Code:
require_once MYBB_ROOT."inc/functions_user.php";
usercp_menu();
$plugins->run_hooks("usercp_start");
.....
$plugins->run_hooks("usercp_end"); 
Das musst du auf jeden Fall drinne haben.

PHP-Code:
require_once MYBB_ROOT."inc/functions_user.php";
usercp_menu(); 

Die hooks müssen nicht geladen werden.
leider bringt das noch nicht die erhoffte Lösung. Wenn ich das Benutzer-CP anklicke, dann ist die Grafik und der Link vorhanden. Auch, wenn ich mich in dem Bereich "Dein Pofil" bewege.
Wenn ich aber z.B. in den privaten Nachrichten oder den Einstellungen der Spielhalle bin, dann verschwindet der Link. Sad
usercp.lang.php ist die falsche Sprachdatei hierfür.

usercpnav.lang.php ist die linke Navigation Wink
Super, das war es!

Danke Dir Big Grin
Nun muss ich diesen Thread noch einmal bemühen.

Es handelt sich zwar wieder um einen Link, der über ein Plugin im Benutzer-CP unter Sonstiges eingefügt wird, der seinen Namen aber aus einer separaten lang-Datei des Plugins holt. Hierzu habe ich auf MyBBCoder schon einen Thread eröffnet.

Problem: Im Benutzer-CP wird immer die englische Version des Link-Namen gezogen und nicht die aus der deutschen lang-Datei.


Würde mich freuen, wenn mir jemand einen Tipp geben könnte, woran das liegen könnte.
Ersetze
PHP-Code:
find_replace_templatesets('usercp_nav_misc''#</tbody>#''<tr><td class="trow1 smalltext">
<a href="plugindatei.php" class="usercp_nav_item usercp_nav_editlists">
$lang->plugindatei_lang '</a></td></tr></tbody>'); 

mit
PHP-Code:
find_replace_templatesets('usercp_nav_misc''#</tbody>#''<tr><td class="trow1 smalltext">
<a href="plugindatei.php" class="usercp_nav_item usercp_nav_editlists">
{$lang->plugindatei_lang}</a></td></tr></tbody>'
); 

Und in den momentan aktiven Templates, kannst du den Namen des Links einfach mit der {$lang->plugindata_lang} ersetzen. Der String wird mit der oberen Methode nämlich direkt ins Template geschrieben.
Hallo Manueal,

danke für Deine Antwort.Smile
Das hatte ich bereits probiert. Ebenso wie "{\$lang->plugindatei_lang}". Aber in beiden Fällen erscheint dann gar kein Linkname mehr. Sad
Seiten: 1 2