Sprachabhängige Links hinzufügen Sprachabhängige Links hinzufügen
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Sprachabhängige Links hinzufügen

Started by Starlight, September 12, 2010, 09:23:15 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Starlight

Hallo, ich nerve mal wieder. ;)

Ich würde gerne in meiner Galerie eigene Links hinzufügen, die auch in den Sprachdateien aufgenommen werden. Dazu habe ich schon dieses Thema gefunden. http://forum.coppermine-gallery.net/index.php/topic,8658.0.html
Klingt einfach, ist es an sich bestimmt auch.
Ich schätze, bei mir hapert es mal wieder daran, den richtigen Codeabschnitt in meine theme.php einzufügen.

Wenn ich nämlich das

$param = array('{ALB_LIST_TGT}' => "index.php$cat_l",
        '{ALB_LIST_TITLE}' => $lang_main_menu['alb_list_title'],
        '{ALB_LIST_LNK}' => $lang_main_menu['alb_list_lnk'],
suche, stelle ich fest, das habe ich bei mir nicht drin, also muss ich es aus dem sample nehmen. Allerdings darf ich ja da nicht nur diesen Schnipsel nehmen, sondern... ja, den ganzen Block irgendwie.
Aber ich tu mich da so schwer von wo bis wo.

Ich habe das gesamte Stück reinkopiert von

// Function for creating a main menu (SYS_MENU or SUB_MENU)
bis zur Linie

// Function to display first level Albums of a category (nicht mit eingefügt)

Das kann dann wohl allerdings auch nicht stimmen, denn dann passierte folgendes: Die Platzhalter für meine Links standen zwar da, aber vor allen anderen Links im Menü standen auch welche, alle immer mit {_ico}
Also erstmal rückgängig das ganze...

Wie mache ich es also richtig? Wer ist so lieb und schaut mal? http://starlights-graphics.de/gallery

Starlight

Hmm, und ich hatte vergessen, da der link ja auf zwei unterschiedeliche Seiten (Englisch und Deutsch) führen soll, müsste auch soetwas wie hier noch mit rein. http://forum.coppermine-gallery.net/index.php/topic,21633.0.html

Aber da wüsste ich dann überhaupt nicht mehr wohin. Und eine Auflösung des ganen gibt es in dem Thema leider nicht...

Αndré

In deinem Fall würde ich alles in der theme.php verarbeiten. Also dort die aktuelle Sprache herausfinden ($CONFIG['lang']) und dann entsprechend den Link beschriften und den Verweis anpassen. Das hat auch gleichzeitig den Vorteil, dass du nach einem Upgrade die Sprachdateien nicht wieder anpassen musst.

Starlight

Okay, verstehe. Trotzdem weiß ich nict, was ich dazu in meine theme.php kopieren muss. Hab es noch weitere zig mal versucht und scheitere immer

Αndré

Das kommt darauf an wo diese Links sein sollen. Ich vermute es handelt sich um die folgenden 4 Links?
Quote{GALLERY_LNK}
{TUTORIALS_LNK}
{LAYOUTS_LNK}
{GUESTBOOK_LNK}

Starlight

Ja genau. :) Soll ich noch irgendwas anhängen? theme.php vielleicht?

Αndré


Starlight

Gut. Bittesehr. Danke fürs Anschauen. :)

Αndré

Anbei deine theme.php mit der nötigen Funktion und einem Beispiel. Relevanter neuer Code ist zum einen
    if ($CONFIG['lang'] == 'german') {
        $foo['bar']['lnk'] = "Hallo";
        $foo['bar']['tgt'] = "#german";
        $foo['bar']['title'] = "Testtitel";
    } else {
        $foo['bar']['lnk'] = "Hello";
        $foo['bar']['tgt'] = "#english";
        $foo['bar']['title'] = "Test title";
    }

und zum anderen
        '{GALLERY_LNK}' => $foo['bar']['lnk'],
        '{GALLERY_TGT}' => $foo['bar']['tgt'],
        '{GALLERY_TITLE}' => $foo['bar']['title'],

Starlight

Danke. Allerdings weiß ich nicht, wie das dann mit weiteren Links klappt. Weil der Teil

   if ($CONFIG['lang'] == 'german') {
        $foo['bar']['lnk'] = "Hallo";
        $foo['bar']['tgt'] = "#german";
        $foo['bar']['title'] = "Testtitel";
    } else {
        $foo['bar']['lnk'] = "Hello";
        $foo['bar']['tgt'] = "#english";
        $foo['bar']['title'] = "Test title";
    }
ist doch soweit immer gleich...? Gibt's dann keine Verwechslungen? Hmmmm... Ich hab grad bestimmt irgendeinen blöden Denkfehler...
Und woher weiß diese Funktion jetzt die URLs meiner Links?

Starlight

Uh, die Frage mit den URLs war sehr dämlich... :D Hab's grad gesehen. Das mit der "Verwechslungsgefahr" hab ich aber noch nicht durchschaut. ^^

Αndré

Für weitere Menüeinträge erweiterst du das Array einfach. Z.B.
   if ($CONFIG['lang'] == 'german') {
        $foo['bar']['lnk'] = "Hallo";
        $foo['bar']['tgt'] = "#german";
        $foo['bar']['title'] = "Testtitel";
        $foo['bar2']['lnk'] = "Hallo2";
        $foo['bar2']['tgt'] = "#german2";
        $foo['bar2']['title'] = "Testtitel2";
    } else {
        $foo['bar']['lnk'] = "Hello";
        $foo['bar']['tgt'] = "#english";
        $foo['bar']['title'] = "Test title";
        $foo['bar2']['lnk'] = "Hello2";
        $foo['bar2']['tgt'] = "#english2";
        $foo['bar2']['title'] = "Test title2";
    }

Starlight

Aaaah, okay, bar erweitern. :) Dann krieg ich es hin denke ich. Das ich irgendwas umbenennen muss, wusste ich, aber nicht was. ;) Danke dir!