Wir erstellen gerade eine Website, bei der wir intensiv von <we:ifPageLanguage> Gebrauch machen - ist eine wirklich schöne Erweiterung für WebEdition, vor allem im Zusammenhang mit sprachabhängigen Listviews.
Nun haben wir gerade das Problem, dass wir auch eine Objektklasse mit Objektdetailseite verwenden - es sind technische Daten zu Tagungsräumen, die wir ungern doppelt halten wollen. Nun kann ja ein Objekt leider nur eine Sprache bekommen, d.h. auch bei Anzeige des Objekts im englischen Workspace spuckt auf der Detailseite das PageLanguage-Tag immer noch "de_DE" aus.
Gibt es eine Möglichkeit, die von WebEdition ermittelte PageLanguage nachträglich mit PHP zu überschreiben? Dann könnten wir bei Objekt-Detailseiten über den Workspace klären, ob sie gerade im en- oder im de-Pfad angezeigt werden. Wenn im en-Pfad, würden wir gern mit "PageLanguage = "en_GB" (grob gesagt) arbeiten, sodass man den weiteren Tags dann "vorgaukeln" könnte, dass sie es mit einem englischen Objekt zu tun haben.
Anders gefragt: woher holt sich <we:ifPageLanguage> die Info, welche Sprache gerade aktiv ist?
Dank & Gruß,
Alex
Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
-
- Senior Member
- Beiträge: 425
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Dresden
- Kontaktdaten:
Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
http://www.xport.de – Internet-Agentur für Hotels
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Naja, PageLanguage holt sich die Sprache aus dem Dokument, für mich klingt es so, als suchst du
<we:ifObjectLanguage>
http://webedition.org/de/webedition-cms ... ctlanguage
<we:ifObjectLanguage>
http://webedition.org/de/webedition-cms ... ctlanguage
-
- Senior Member
- Beiträge: 425
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Dresden
- Kontaktdaten:
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Naja, wenn ich das Objekt unter "Eigenschaften" auf englisch umstelle, dann greift da auch ifPageLanguage und zeigt mir die englischen Infos.
Wie gesagt, das ganze passiert auf einer Objekt-Detailseite mit SEO-Url, nicht in einer Objekt-Listview.
Ist ifObjectLanguage nicht nur für ein mittels <we:object> eingebundenes Objekt gedacht?
Gruß,
Alex
Wie gesagt, das ganze passiert auf einer Objekt-Detailseite mit SEO-Url, nicht in einer Objekt-Listview.
Ist ifObjectLanguage nicht nur für ein mittels <we:object> eingebundenes Objekt gedacht?
Gruß,
Alex
http://www.xport.de – Internet-Agentur für Hotels
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Hi,
ich habs nicht getestet, aber eigentlich sollte das auch bei einem we:object klappen.
Falls dem nicht so ist, dann bitte einen Bug-Report aufmachen.
ich habs nicht getestet, aber eigentlich sollte das auch bei einem we:object klappen.
Falls dem nicht so ist, dann bitte einen Bug-Report aufmachen.
webEdition-Kern-Entwickler
-
- Senior Member
- Beiträge: 425
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Dresden
- Kontaktdaten:
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Ähm, es geht ja bei uns nicht um ein we:object.
Wir arbeiten ja mit einer ganz normalen Objekt-Detailseite, d.h. ein Template, das wir bei der Objektklasse für einen Arbeitsbereich definiert haben.
In dem Template selbst arbeiten wir ja nicht mit we:object.
Die Frage ist ja - und das wird vermutlich bei Dokumenten ähnlich sein -, woher holt sich <we:ifPageLanguage> die aktuelle Sprache des Dokuments/Objekts, und ist dieser Wert zur Laufzeit (quasi ganz am Anfang des Templates) auch per PHP veränderbar?
Dank & Gruß,
Alex
Wir arbeiten ja mit einer ganz normalen Objekt-Detailseite, d.h. ein Template, das wir bei der Objektklasse für einen Arbeitsbereich definiert haben.
In dem Template selbst arbeiten wir ja nicht mit we:object.
Die Frage ist ja - und das wird vermutlich bei Dokumenten ähnlich sein -, woher holt sich <we:ifPageLanguage> die aktuelle Sprache des Dokuments/Objekts, und ist dieser Wert zur Laufzeit (quasi ganz am Anfang des Templates) auch per PHP veränderbar?
Dank & Gruß,
Alex
http://www.xport.de – Internet-Agentur für Hotels
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
http://www.domainpreisvergleich.de – Domain-Preisvergleich inkl. Verfügbarkeits-Check – ist meine Wunschdomain noch frei, und wo registriere ich sie am günstigsten?
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Hallo Alex,
ifPageLanguage greift schon auf die in den Eigenschaften eingestellte Sprache des Objekts/Dokuments zu. Ist ja auch sinnvoll
webEditions Ansatz für mehrsprachige Seiten ist einfach nach dem Prinzip "je Sprache ein Dokument / Objekt" aufgebaut. Du könntest noch so vorgehen, dass Du die Dinge, die in allen Sprachen gleich sind, in eine extra Klasse auslagerst und diese Objekt dann wiederum als Objektfeld in den einzelnen Sprachversionen zuweist. Nicht elegant in der Pflege, aber so musst Du die Dinge nur einmal anlegen.
Gruß
Thomas
ifPageLanguage greift schon auf die in den Eigenschaften eingestellte Sprache des Objekts/Dokuments zu. Ist ja auch sinnvoll
webEditions Ansatz für mehrsprachige Seiten ist einfach nach dem Prinzip "je Sprache ein Dokument / Objekt" aufgebaut. Du könntest noch so vorgehen, dass Du die Dinge, die in allen Sprachen gleich sind, in eine extra Klasse auslagerst und diese Objekt dann wiederum als Objektfeld in den einzelnen Sprachversionen zuweist. Nicht elegant in der Pflege, aber so musst Du die Dinge nur einmal anlegen.
Gruß
Thomas
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
sorry Alex, hab das Posting nicht ganz gelesen.
Aber wo wir gerade bei Mehrsprachigkeit sind:
die Verlinkung zw. den Dokumenten ist bis 6.2.6 fehlerhaft. In 6.2.7 kam noch ein Fix dazu der einiges richtet. Mein letzter Stand ist, das erst in der 6.3 das Problem vollständig gefixt ist.
Wenn ihr also was neu aufbaut, dann mußt ihr bei älteren Versionen leider mit Problemen rechnen. Bzw. es ist möglich das beim Update ein paar Verknüpfungen verschwinden.
Aber wo wir gerade bei Mehrsprachigkeit sind:
die Verlinkung zw. den Dokumenten ist bis 6.2.6 fehlerhaft. In 6.2.7 kam noch ein Fix dazu der einiges richtet. Mein letzter Stand ist, das erst in der 6.3 das Problem vollständig gefixt ist.
Wenn ihr also was neu aufbaut, dann mußt ihr bei älteren Versionen leider mit Problemen rechnen. Bzw. es ist möglich das beim Update ein paar Verknüpfungen verschwinden.
webEdition-Kern-Entwickler
-
- webEdition Partner
- Beiträge: 330
- Registriert: Mi 28. Apr 2004, 00:27
- Wohnort: Münster
- Kontaktdaten:
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP änder
Hallo zusammen,
ich möchte das Thema noch mal wieder aufwärmen. Ich suche nach einer Lösung für das gleiche Problem: Bei der Objektdarstellung im Arbeitsbereich bekommt das "Triggerdokument" die Sprache des Objektes. Damit lässt sich der Ansatz zwei Sprachen in einem Objekt zu verwalten (wofür Objekte ja ganz gut geeignet wären) nur mühsam realisieren. Den Ansatz, für die gemeinsamen Daten beispielsweise englischer und deutscher, in vielen Bereichen identischer Objekte eine zweite Klasse anzulegen kann ich den Kunden nicht vermitteln. Die wollen weniger und nicht mehr Objekte.
Gibt es nicht doch eine Möglichkeit, pagelanguage des Objektes durch die pagelanguage des Triggerdokumentes zu überschreiben?
@Thomas: Bei Objekten kann ich den Ansatz, für jede Sprache ein Objekt nicht wirklich nachvollziehen, denn die sind ja gerade gedacht für die Verwendung an verschiedenen Stellen in der Site.
Denkbar wäre da ja vielleicht auch eine Auswahlmöglichkeit -> Sprache des darstellenden Dokumentes oder Sprache des Objektes zu verwenden.
Ludger
ich möchte das Thema noch mal wieder aufwärmen. Ich suche nach einer Lösung für das gleiche Problem: Bei der Objektdarstellung im Arbeitsbereich bekommt das "Triggerdokument" die Sprache des Objektes. Damit lässt sich der Ansatz zwei Sprachen in einem Objekt zu verwalten (wofür Objekte ja ganz gut geeignet wären) nur mühsam realisieren. Den Ansatz, für die gemeinsamen Daten beispielsweise englischer und deutscher, in vielen Bereichen identischer Objekte eine zweite Klasse anzulegen kann ich den Kunden nicht vermitteln. Die wollen weniger und nicht mehr Objekte.
Gibt es nicht doch eine Möglichkeit, pagelanguage des Objektes durch die pagelanguage des Triggerdokumentes zu überschreiben?
@Thomas: Bei Objekten kann ich den Ansatz, für jede Sprache ein Objekt nicht wirklich nachvollziehen, denn die sind ja gerade gedacht für die Verwendung an verschiedenen Stellen in der Site.
Denkbar wäre da ja vielleicht auch eine Auswahlmöglichkeit -> Sprache des darstellenden Dokumentes oder Sprache des Objektes zu verwenden.
Ludger
----
ludger müller
gestaltung für bildschirm und papier aus münster in westfalen
bureau.artbeit.de
-----
Gründungsmitglied im webEdition e.V.
ludger müller
gestaltung für bildschirm und papier aus münster in westfalen
bureau.artbeit.de
-----
Gründungsmitglied im webEdition e.V.
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
Auch wenn zwei Jahre alt, muss ich davon ausgehen, dass es hier noch keine Lösung gibt.
Die würde ich allerdings gerade auch dringenst brauchen...
Die würde ich allerdings gerade auch dringenst brauchen...
-
- Senior Member
- Beiträge: 1319
- Registriert: Do 22. Mai 2003, 23:25
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
naja, funktionieren sollte das schon. Du musst dafür die automatischen Wege der Objektdarstellung verlassen. D.h. du darfst die Objekte nicht per we_objectID aufrufen.
Dafür musst du dir in den Listviews Links mit eigenen Parametern bauen, die du dann in we:object lädst.
Wenn du das so machst, sollte immer die Sprache des Anzeigedokuments aktiv sein.
Dabei musst du dann auf Komfortfunktionen wie seoUrls und we:pageLanguage verzichten. Aber die funktionieren die diesem Szenario eh nicht.
Grüße Elko
Dafür musst du dir in den Listviews Links mit eigenen Parametern bauen, die du dann in we:object lädst.
Wenn du das so machst, sollte immer die Sprache des Anzeigedokuments aktiv sein.
Dabei musst du dann auf Komfortfunktionen wie seoUrls und we:pageLanguage verzichten. Aber die funktionieren die diesem Szenario eh nicht.
Grüße Elko
-
- webEdition Partner
- Beiträge: 109
- Registriert: Do 1. Jan 1970, 02:00
- Wohnort: Weimar
- Kontaktdaten:
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
@igma: Ich habe mir für jede Sprache (de,en,fr) einen Objekt Ordner angelegt und dieser bekommt die entsprechende Sprache und das Dokument für die Darstellung zugeordnet.
Danach habe ich erst alle Objekte für eine Sprache angelegt und diese dann immer für die beiden anderen Sprachen kopiert. Mit dem Button Sprache übertragen wird die Sprache auf alle Objekte im Ordner übertragen. Um das ganze dann noch völlig perfekt zu machen kannst du jetzt noch jedem Objekt das passende Objekt der anderen Sprache zuordnen.
Auf der Übersichtsseite wird die Sprache der Seite im Listview geprüft und die entsprechenden Objekte ausgegeben.
<we:listview type="object" rows="6" classid="3" categoryids="$catID" catOr="true" languages="top">
Funktioniert SUPER mit WE 6.4.4!
Danach habe ich erst alle Objekte für eine Sprache angelegt und diese dann immer für die beiden anderen Sprachen kopiert. Mit dem Button Sprache übertragen wird die Sprache auf alle Objekte im Ordner übertragen. Um das ganze dann noch völlig perfekt zu machen kannst du jetzt noch jedem Objekt das passende Objekt der anderen Sprache zuordnen.
Auf der Übersichtsseite wird die Sprache der Seite im Listview geprüft und die entsprechenden Objekte ausgegeben.
<we:listview type="object" rows="6" classid="3" categoryids="$catID" catOr="true" languages="top">
Funktioniert SUPER mit WE 6.4.4!
- Dateianhänge
-
- screen.JPG (222.92 KiB) 5840 mal betrachtet
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
... in webEdition 7 kann man das jetzt auch komfortabel über die Content-Varianten lösen.
-
- Senior Member
- Beiträge: 1319
- Registriert: Do 22. Mai 2003, 23:25
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
@Andreas: unterstützen die denn dann auch eigene Sprachen für die Varianten?
Re: Wie "PageLanguage" auf Objekt-Detailseiten per PHP ändern?
@Elko: jaein, man kann zwar mit der Lösung nicht mit <we:pageLanguage/> arbeiten, aber in Kombination mit <we:ifHasVariant/> und dem Variantennamen, der dann z. B. DE oder EN lautet lassen sich weiterhin Sprachspezifika wie mit <we:pageLanguange> abbilden.
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 23 Gäste