Hallo zusammen
Ich habe folgendes Problem.
Meine Extension läuft ohne Probleme in Typo3 v4.4.0.
Jedoch möchte ich auf die angelegeten Datensätze meiner Extension, welche in einem SysFolder liegen, mittels RTE verlinken können. Wie bei tt_news, wäre es toll, wenn ich einen Reiter oder einfach auf den SysFolder klicken könnte, um die Datensätze meiner Extension zu verlinken.
Bei der Suche nach einer Lösung bin ich immer wieder auf folgendes Script gestossen. Es will jedoch nicht funktionieren.
RTE.default.linkhandler.tx_flpwccases_cases {
default { # pid des Speicherordners
parameter = 10 # pid der Einzelansicht
additionalParams = &cid={field:uid}
additionalParams.insertData = 1
select = uid,company as header,hidden,starttime,endtime,bodytext
sorting = crdate desc
}
# id of the Storage folder containing the tt_address records
3 {
parameter = 10
additionalParams = &cid={field:uid}
additionalParams.insertData = 1
select = uid,company as header,hidden,website as bodytext
sorting = company
}
}
Später habe ich gesehen, dass Linkhandler eine Extension ist.
- Benötige ich für den oben stehenden Code diese Extension?
- Gibt es eine Möglichkeit, so etwas ohne eine zusätzliche Extension zu machen?
Besten Dank
Reeko
Also, habe jetzt den Linkhandler installiert und es klappt fast alles ;-)
Der Reiter erscheint, die Datensätze kann ich auswählen, jedoch werden die Links auf der Seite nicht verlinkt.
Wenn ich im RTE arbeite, werden die Links als solches dargestellt. Schaue ich mir die Links hingegen auf der Seite an, steht da nur der Text und kein Link.
Bei tt_news klappts.
Das habe ich im TsConfig
RTE.default.tx_linkhandler {
fl_pwc_cases {
label = PwC Cases
listTables = tx_flpwccases_cases
onlyPids = 3
}
}
mod.tx_linkhandler {
fl_pwc_cases {
label = PwC Cases
listTables = tx_flpwccases_cases
onlyPids = 3
}
}
und das im Setup vom Template
RTE.default {
linkhandler {
tx_flpwccases_cases {
# id of the Storage folder containing the tt_address records
3 {
parameter = 10
additionalParams = &cid={field:uid}
additionalParams.insertData = 1
select = uid,company as header,hidden,company as bodytext
sorting = company
}
}
}
}
Extension key: fl_pwc_cases
Tablename: tx_flpwccases_cases
Detail PID: 10
SysFolder PID = 3
Was mache ich falsch?
Danke und Gruss
Reeko
Ok ich habs...
ext_localconf.php
t3lib_extMgm::addPageTSConfig('
RTE.default.tx_linkhandler {
fl_pwc_cases {
label = PwC Cases
listTables = tx_flpwccases_cases
onlyPids = 3
}
}
mod.tx_linkhandler {
fl_pwc_cases {
label = PwC Cases
listTables = tx_flpwccases_cases
onlyPids = 3
}
}
');
und ext_typoscript_setup.txt
// Definiert, wie der Link aussehen soll
plugin.tx_linkhandler {
tx_flpwccases_cases {
# force link generation also when the tt_news record are hidden or deleted
forceLink = 0
# typolink settings
parameter = 10
additionalParams = &cid={field:uid}
additionalParams.insertData = 1
useCacheHash = 1
}
}
Nun habe ich aber auf ein weiteres Poblem gestossen:
wenn ich nun im RTE meiner Extension einen Link setze, sieht das so aus:
<a href="record:tx_flpwccases_cases:2">Ich bin ein Link</a>
Soweit so gut. Nur, wie kann ich diesen Wert in meiner Extension in einen Link umwandeln, dass folgendes dabei raus kommt:
<a href="http://meinedomain.com/index.php?id=10&cid=2">Link</a>
Habe es schon mit
$link = 'record:tx_flpwccases_cases:2';
$link = $this->pi_getPageLink($link);
echo $link;
Leider erhalte ich dann nur einen leeren String...
Wie kann ich solche Links (record:tx_flpwccases_cases:2) in einen gültigen Link umwandeln?
Besten Dank und Gruss
Reeko