Quote: Steffen Düsel (snduesel) wrote on Thu, 17 July 2014 20:09
----------------------------------------------------
Quote: Oliver W. wrote on Thu, 17 July 2014 17:45
----------------------------------------------------
> Hallo,
>
> es ist doch sicherlich irgendwie möglich, auf festgelegte Constants zugreifen zu können.
> Hintergrund ist, das ich für eine Ext. für verschiedene Bäume eine ID setzen möchte.
>
> Daher möchte ich diese IDs je Baum/Webseite (root lvl 1) auslesen.
> Hat jemand einen Tip?
>
> Danke!
>
> Gruß
> Olli
----------------------------------------------------
in den CONSTANTS definierst du die Variable:
meine_variable = 123
Im SETUP holst du dir diese Variable in die Konfiguration deiner Extension,
z.B.:
plugin.tx_meineext {
meine_variable = {$meine_variable}
}
Dann hast du in deiner Extension den Wert der Variable in
$conf['meine_variable']
----------------------------------------------------
Ich denke die Methode würde bei dir am besten zutreffen:
++++++++++++++
typo3conf/ext/deine_extension/Configuration/TypoScript/setup.txt
++++++++++++++
plugin.tx_deineextension {
view {
templateRootPath =
{$plugin.tx_deineextensionview.templateRootPath}
partialRootPath =
{$plugin.tx_deineextension.view.partialRootPath}
layoutRootPath = {$plugin.tx_deineextension.view.layoutRootPath}
}
persistence {
storagePid = {$plugin.tx_deineextension.persistence.storagePid}
}
features {
# uncomment the following line to enable the new Property
Mapper.
# rewrittenPropertyMapper = 1
}
language {
lang = {$plugin.tx_deineextension.language.lang}
}
countrygroup {
pl = {$plugin.tx_deineextension.countrygroup.pl}
tr = {$plugin.tx_deineextension.countrygroup.tr}
ro = {$plugin.tx_deineextension.countrygroup.ro}
at = {$plugin.tx_deineextension.countrygroup.at}
fr = {$plugin.tx_deineextension.countrygroup.fr}
be = {$plugin.tx_deineextension.countrygroup.be}
dk = {$plugin.tx_deineextension.countrygroup.dk}
en = {$plugin.tx_deineextension.countrygroup.en}
de = {$plugin.tx_deineextensioncountrygroup.de}
}
}
++++++++++++++
typo3conf/ext/deine_extension/Configuration/TypoScript/constants.txt
++++++++++++++
plugin.tx_deineextension {
view {
# cat=plugin.tx_deineextension/file; type=string; label=Path to
template root (FE)
templateRootPath =
EXT:tx_deineextension/Resources/Private/Templates/
# cat=plugin.tx_deineextension/file; type=string; label=Path to
template partials (FE)
partialRootPath =
EXT:tx_deineextension/Resources/Private/Partials/
# cat=plugin.tx_deineextension/file; type=string; label=Path to
template layouts (FE)
layoutRootPath =
EXT:tx_deineextension/Resources/Private/Layouts/
}
persistence {
# cat=plugin.tx_deineextension//a; type=string; label=Default
storage PID
storagePid =
}
language {
# cat=plugin.tx_deineextension//a; type=string; label=Default
language
lang = de
}
countrygroup {
# cat=plugin.tx_deineextension//a; type=string; label=Default pl
pl = 12748
# cat=plugin.tx_deineextension//a; type=string; label=Default tr
tr = 12586
# cat=plugin.tx_deineextension//a; type=string; label=Default ro
ro = 12540
# cat=plugin.tx_deineextension//a; type=string; label=Default at
at = 12494
# cat=plugin.tx_deineextension//a; type=string; label=Default fr
fr = 12448
# cat=plugin.tx_deineextension//a; type=string; label=Default be
be = 12402
# cat=plugin.tx_deineextension//a; type=string; label=Default dk
dk = 12245
# cat=plugin.tx_deineextension//a; type=string; label=Default eu
eu = 2036
# cat=plugin.tx_deineextension//a; type=string; label=Default de
de = 2
}
}
+++++++++++++++++
Konfiguration dann auch über Page-Template - Constants möglich
+++++++++++++++++
# Start Language
#plugin.tx_deineextension.language.lang= en
plugin.tx_deineextension.countrygroup.pl= 0
plugin.tx_deineextension.countrygroup.tr= 0
plugin.tx_deineextension.countrygroup.ro= 0
plugin.tx_deineextension.countrygroup.at= 0
plugin.tx_deineextension.countrygroup.fr= 12106
plugin.tx_deineextension.countrygroup.be= 0
plugin.tx_deineextension.countrygroup.dk= 0
plugin.tx_deineextension.countrygroup.en= 12106
plugin.tx_deineextension.countrygroup.de= 12105
++++++++++++++
Beispiel Funktion in PHP
++++++++++++++
public function findCountryGroupPageUidByEuroMapFromTypoScript($euroMap)
{
switch ($euroMap) {
case "Polen":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["pl"];
case "Türkei":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["tr"];
case "Romänien":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["ro"];
case "Deutschland":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["de"];
case "Belgien":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["be"];
case "Dänemark":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["dk"];
case "Frankreich":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["fr"];
case "Österreich":
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["at"];
default;
return
$GLOBALS['TSFE']->tmpl->setup["plugin."]["tx_deineextension."]["countrygroup."]["en"];
}
}
++++++++++++++++++++++
So macht du übrigends den Redirect anhand der PageUid:
$arguments = array('registrationModel' => $registrationModel);
$pageUidCountryOrganisation =
$this->findCountryGroupPageUidByEuroMapFromTypoScript($euroMap);
$this->uriBuilder->setTargetPageUid($pageUidCountryOrganisation);
$uri = $this->uriBuilder->uriFor('action', $arguments, 'controller');
$this->redirectToUri($uri);
++++++++++++++++++++++
Ich hoffe du kannst damit was anfangen. "deineextension" musst du natürlich
noch ersetzen ;)
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german