Flex-CE nur bei bestimmter Subdomain ausgeben
| Autor | Nachricht |
|---|---|
|
Verfasst am: 23. 11. 2009 [16:57]
|
|
|
JayR
Themenersteller
Dabei seit: 07.11.2004
Beiträge: 265
|
Hallo zusammen, ich würde gerne ein flexibles Contentelement erstellen, welches lediglich ein Container für weitere Content Elemente darstellt. Zusätzlich soll es jedoch ein Dropdown geben, mit dem ich die Subdomain angeben kann, für welche dieser Container angezeigt werden soll. Ein Beispiel einer Seite im Typo3-Baum, welche über zwei Subdomains aufgerufen werden kann: www.mydomain.de/de/test.html Diese Seite soll einen Textblock enthalten "Internationale Testseite". en.mydomain.de/de/test.html Diese Seite soll einen Textblock enthalten "Englische Testseite". Ich würde gerne zwei flexible Elemente auf der Seite einfügen, welche dann jeweils wieder ein CE ("Normaler Text" Das eine soll dann bei "www.mydomain.de" und das andere bei "en.mydomain.de" angezeigt werden. Die Container die der Subdomain nicht entsprechen sollen einfach ignoriert werden. Nun sehe ich zwei Varianten, weiß aber nicht, ob das überhaupt so möglich ist. 1. TypoScript-Abfragen direkt in der TV-Datenstruktur 2. Externes Skript anfügen, welches die Anzeige des Containers freigibt oder verweigert Ich bin mir jedoch sehr unsicher, ob es überhaupt möglich ist einen Container je nach Situation (Subdomain) auszugeben oder nicht?! Könnt Ihr mir einen Tipp geben, ob und wie so etwas funktionieren könnte?! Vielen Dank im Voraus! Gruß Jan PS: !!!Bitte sagt nicht, dass es auch über die Sprachwahl gehen würde. Das ist ein drastisch vereinfachtes Beispiel für eine ziemlich komplexe Webseite mit 4 Ländern und 5 Sprachen die sowohl die normale Mehrsprachigkeit als auch eine Regelung über Subdomains der verschiedenen Länder verwendet!!! |
|
Verfasst am: 23. 11. 2009 [19:13]
|
|
|
JayR
Themenersteller
Dabei seit: 07.11.2004
Beiträge: 265
|
Ich hab gerade einen Weg gefunden die Ausgabe der enthaltenen Content Elemente in ein PHP Script umzuleiten. Dazu rufe ich im TypoScript-Element der FCE-Datenstruktur ein PHP_SCRIPT auf. Ein einfaches [globalString = ENV:HTTP_HOST=www.mydomain.de] scheint an dieser Stelle nicht zu funktionieren! Jetzt fehlen nur noch zwei Dinge: 1. Woher weiß ich (bzw. das PHP_SCRIPT) welche Elemente in diesem Container enthalten sind? 2. Wie kann ich auf die Selector Box zugreifen, bzw. den Wert an das Skript übergeben? Hier ist die XML-Datenstruktur des FCE: TYPOSCRIPT <?xml version="1.0" encoding="iso-8859-1" standalone="yes" ?> <T3DataStructure> <ROOT type="array"> <tx_templavoila type="array"> <title>ROOT</title> <description>Select the HTML element on the page which you want to be the overall container element for the template.</description> </tx_templavoila> <type>array</type> <el type="array"> <field_test type="array"> <tx_templavoila type="array"> <title>CE</title> <sample_data type="array"> <numIndex index="0"></numIndex> </sample_data> <eType>ce</eType> <TypoScript><![CDATA[ 10= PHP_SCRIPT 10.file = fileadmin/templates/fce_script.php 10.domain = {$baseurl} #10.selectbox = Wie kommt hier der Wert der selectbox (field_check) rein? }]]> </TypoScript> <oldStyleColumnNumber type="integer">0</oldStyleColumnNumber> </tx_templavoila> <TCEforms type="array"> <config type="array"> <type>group</type> <internal_type>db</internal_type> <allowed>tt_content</allowed> <size>5</size> <maxitems>200</maxitems> <minitems>0</minitems> <multiple>1</multiple> <show_thumbs>1</show_thumbs> </config> <label>CE</label> </TCEforms> </field_test> <field_check type="array"> <tx_templavoila type="array"> <title></title> <sample_data type="array"> <numIndex index="0"></numIndex> </sample_data> <eType>select</eType> </tx_templavoila> <TCEforms type="array"> <config type="array"> <type>select</type> <items type="array"> <numIndex index="0" type="array"> <numIndex index="0">www.mydomain.de</numIndex> <numIndex index="1">www.mydomain.de</numIndex> </numIndex> <numIndex index="1" type="array"> <numIndex index="0">en.mydomain.de</numIndex> <numIndex index="1">en.mydomain.de</numIndex> </numIndex> </items> <default>0</default> </config> <label></label> </TCEforms> </field_check> </el> </ROOT> </T3DataStructure> |



