Switch between multi-language sites PAGE TO PAGE

If you have created additional (non official) documentation or tutorials or something like that please post this here
drmole
Posts: 5
Joined: Fri 29. Jul 2005, 17:54

Post by drmole »

hallo zusammen,

ich setze gerade die Lösung von pepe um. Klappt alles klasse. Aber bei mir schleicht sich z.B. zwischen "en" und dem Seitenalias ein %20 in der URL.

Woran liegt das? Hat mir jemand einen Tip?
pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Post by pepe »

Zeig mal eine Kopie deines Aufrufs innerhalb der Vorlage...

Die kompette Anweisung incl. <td>...</td> oder <div>...</div>
einschließlich der Zeile, die anschließend folgt!

Zusätzlich die echo-Befehlszeile deines php-scripts!
pierre.meli
Posts: 42
Joined: Thu 18. Nov 2004, 23:07
Location: Switzerland
Contact:

Post by pierre.meli »

"%20" (= 0x20 hexadezimal = 32 ASCII) ist ein Leerschlag " ". Falls dieser nicht da sein soll musst Du ihn wohl im Script entfernen
Gruss Pierre
Image
drmole
Posts: 5
Joined: Fri 29. Jul 2005, 17:54

Post by drmole »

Also der Aufruf sieht wie folgt aus. Er hält sich an die Vorgabe von Pepe. Woher das Leerzeichen kommt, kann ich echt nicht sagen:

<td width="90"><!-- Umschaltung/switch -> ENGLISCH -->
<a href="index.php?en{PHP:scripts/strip-prefix.php}" target="_self">englisch</a></td>

gruß
drmole
pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Post by pepe »

Und wie ist der echo Befehl im Script?
drmole
Posts: 5
Joined: Fri 29. Jul 2005, 17:54

Post by drmole »

Folgendermaßen sieht das Script aus. Eigentlich genauso wie in der Beschreibung von Pepe

$alias = $GLOBALS['content']['struct'][($GLOBALS['aktion'][0])]['acat_alias'];
$search = "_";
$aliasNOprefix = stristr($alias,$search);
echo $aliasNOprefix;?>
pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Post by pepe »

Mhh...

Und wie ist dein ALIAS der Ausgangsseite? Steckt da der Wurm?

Komisch, komisch :cry: :shock: :cry:

Vieleicht legst du mal ein ADMIN - Account an und gibst mir die Daten per PN???
drmole
Posts: 5
Joined: Fri 29. Jul 2005, 17:54

Post by drmole »

Das System läuft derzeit auf meinem Laptop. Insofern kann ich leider keinen Zugriff ermöglichen. Wenn ich z.B. den Aufruf Script mit dem Wort Test ersetze funktioniert es einwandfrei ...index.php?en_test. Seltsam. Falls jemand eine Lösung hat ...

mfg und Danke
drmole
drmole
Posts: 5
Joined: Fri 29. Jul 2005, 17:54

Post by drmole »

Noch ein kleine Frage hätte ich ... Sie wurde schon ziemlich oft gestellt. Aber ich habe irgendwie nichts konkretes gefunden.

Im Forum gibt es verschiedene Lösungen zur Fixierung der Navigation auf der 2.Ebene. Wie bewerkstellige ich dies auf der 3. Ebene, da ich die zweite Ebene über eine andere Navigationsleiste ansteuere. Gibt es da eine kleine Anleitung.
Bspw.:
DE
>Über uns
>> Unternehmensprofil

Ich will nur Unternehmensprofil. ÜBer uns steuere ich über die LEiste an.

Für einen Tip wäre ich sehr dankbar.

Gruß
drmole
Fexxx
Posts: 36
Joined: Fri 10. Jun 2005, 15:20

Post by Fexxx »

pepe wrote:Versuch mal folgendes:
Anstelle von {NAV_TABLE_COLUMN} setzt du einfach in deine Vorlage:

Code: Select all

[PHP] 
$check_id = $GLOBALS['content']['cat_id']; 
while( $GLOBALS['content']['struct'][$check_id]['acat_struct'] <> 0 ) { 
$check_id = $GLOBALS['content']['struct'][$check_id]['acat_struct']; 
} 
echo '{NAV_TABLE_COLUMN:'.$check_id.'}'; 
[/PHP]
Damit wird dann nur noch der Navigationsanteil unterhalb von de bzw. en angezeigt!
funktioniert der Ansatz auch mit jedem anderen menü? Habe dieses im Einsatz: --...--/index.php/topic,95.0.html.
Dort kann die die Ebene im RepTag icht angeben werden (glaube ich?).
musons
Posts: 43
Joined: Sun 9. Jan 2005, 21:36

Post by musons »

actualy. very hard to understand.
maybe someone can write step by step waht can need to do
User avatar
Kosse
Posts: 1066
Joined: Thu 9. Sep 2004, 12:08
Location: Brussels, Belgium
Contact:

Post by Kosse »

Hi musons,

it's quite easy, as Pepe first post said:
  1. copy the strip-prefix.php in your site (ex: phpwcms_template/inc_script/strip-prefix.php)
  2. when you create your SITE STRUCTURE, be carefull to create TWO (or more depends how many languages you want to include) main structures
    Example:
    - HOME
    -- EN
    --- home
    --- company
    --- contact
    -- DE
    --- startseite
    --- company
    --- contact
  3. Be carefull to create SAME structure for every language
  4. When creating the structures put an ALIAS with the same name (except the prefix en_ or de_ ) for every structure level, in our example:
    - HOME
    -- EN (alias: en_)
    --- home (alias: en_home)
    --- company (alias: en_company)
    --- contact (alias: en_contact)
    -- DE (alias: de_)
    --- startseite (alias: de_home)
    --- company (alias: de_company)
    --- contact (alias: de_contact)

    --> The aliases must have the same name!
  5. Create TWO (or more) templates, one for each language
  6. In template put your "switch language" (for example in header)
    For english pages put:
    <a href="index.php?de{PHP:phpwcms_template/inc_script/strip-prefix.php}" target="_self">DEUTSCH</a>
    For german pages put:
    <a href="index.php?en{PHP:phpwcms_template/inc_script/strip-prefix.php}" target="_self">ENGLISH</a>
That's it, simple and effective! What didn't you get in Pepe's explanation?

Cheers

EDITED: because of a possible confusion in paths (be carefull where you put your strip-prefix.php, in this example we've used phpwcms_template/inc_script/ so we don't create new folders in phpwcms and don't alter it's structure )
Last edited by Kosse on Wed 15. Feb 2006, 22:28, edited 2 times in total.
pepe
Posts: 3954
Joined: Mon 19. Jan 2004, 13:46

Post by pepe »

The "many words" in my explanation :roll:

Your shortform is much better, Kosse :wink:


greetz to be from a verry raiyny de
pepe
User avatar
Kosse
Posts: 1066
Joined: Thu 9. Sep 2004, 12:08
Location: Brussels, Belgium
Contact:

Post by Kosse »

pepe wrote:The "many words" in my explanation :roll:

Your shortform is much better, Kosse :wink:


greetz to be from a verry raiyny de
pepe
Same here... greetz to de from a verrrrrrry rainy be
;)

And THANK YOU again, !!!vielen danke!!!, I use your little add-on on almost every site :D

Cheers
larmann
Posts: 311
Joined: Thu 23. Jun 2005, 10:51
Location: Hamburg
Contact:

Alias wird vom System abgeändert

Post by larmann »

Hallo,

ich habe das mehrsprachige Skript von pepe eingebaut und die Zweisprachigkeit läuft super. Nun lege ich gerade auch einen dritten (spanischen) Zweig an und habe dabei mal kurz gepennt. Folgendes ist mir passiert:

Ich habe im Adminbereich -> Seitenstruktur -> einen neuen Zweig angelegt, habe die Überschrift "La Asociation" vergeben und den Alias entsprechend "es_verein" genannt. Dann habe ich im Frontend geprüft und alles wurde richtig angezeigt, außer: Es hätte "La Asociacion" heißen müssen. Also hole ich mir einen Kaffee aus der Küche und berichtige den Fehler. Dann prüfe ich im Fontend und sehe, dass der spanische Zweig gar nicht mehr angezeigt wird. Bei Überprüfung im Backend sehe ich, dass ich den spanischen Zweig an den letzen Ast des englischen angesetzt habe, was ja völliger Quatsch ist. Lösche ich die Fehler und beginne den spanischen Zwei komplett neu. Dazu vergebe ich wieder die Überschrift "La Asociacion" und den Alias "es_verein" und speichere ab.

Was nun passiert ist etwas seltsam. Nachdem ich abgespeichert habe und sich die Backendseite "La Asociacion" neu aufbaut hat das System den Alias in "es_verein_trk" umbenannt. Seltsam, oder? Ich versuche das Gleiche noch mal und das System benennt den Alias "es_verein_t8h".

So geht das natürlich nicht. Das Skript funktioniert ja nur, wenn der Alias jeweils in allen Sprachen gleich ist und sich nur durch "en_" , "de_" oder "es_" unterscheidet. Was mache ich denn jetzt?

Vielen Dank!
Post Reply