Ich habe hier im Forum ein paar Tolle Zeilen für ein Sitemap gefunden.
Nun möchte ich den gesammten Block jedoch auf eine bestimmte Zeichenanzahl beschränken. also machte ich in Zeile 8 stdWrap.crop = 50. doch der crop reagiert ganz komisch. es sind weit mehr als 50 Zeichen. und bei 49 kommt zum Beispiel wieder nichts? kann sich das jemand erklären? der crop auf zeile 65 funktioniert wunderbar.
im TSconfig:
TCEFORM.tt_content.menu_type {
addItems.102 = Messe Teaser
}
im Setup
# php-Datei fuer die userfunction einbinden
includeLibs.user_getpages = fileadmin/maschinenbau/dev/user_getpages.inc
# neue Sitemap erstellen
tt_content.menu.20.102 = CONTENT
tt_content.menu.20.102 {
stdWrap.crop = 50
# 1. Abfrage basierend auf den Seiten
table = pages
select {
# pidinlist > userfunction um eine Rekursion zu erhalten auf die gewaehlten Ausgangspunkte in Sitemap
pidInList.cObject = USER
pidInList.cObject {
userFunc = user_getpages->main
treeDepth = 3
}
orderBy = sorting ASC
#where = tx_rgteaser_teaser = 1
}
# Darstellung der SEITEN
renderObj = COA_INT
renderObj {
# an Stelle 10 der Seiten-titel
10 = TEXT
10.field = title
10.wrap = <h1>|</h1>
# Wir merken uns die Seiten-ID fuer spaeter
20 = LOAD_REGISTER
20 {
meinRegister.cObject = TEXT
meinRegister.cObject.field= uid
}
# an Stelle 50 wird der Seiteninhalt erzeugt
50 = COA
50.wrap = ----|----
50 {
###########
20 = CONTENT
20 {
# Abfrage an Tabelle tt_content = Seiteninhalt
table = tt_content
select {
# wir holen uns die die Seitenid von vorher
pidInList.data = register:meinRegister
# max = 2
orderBy = sorting ASC
}
# Wie soll der Seiteninhalt gerendert werden
renderObj = COA
renderObj {
# Stelle 20 der Text, beschraenkt auf 350 Zeichen
20 = TEXT
20 {
field = bodytext
crop = 9350 | ... | 1
wrap= |
parseFunc < tt_content.text.20.parseFunc
}
/*
30 = TEXT
30 {
value = [mehr]
typolink.parameter.field=pid
typolink.parameter.dataWrap=|#{field:uid}
wrap = |
}
*/
}
}
###########
}
}
}
im PHP-File user_getpages.inc
<?php
class user_getpages {
function main($content,$conf) {
global $TSFE;
$pid_list_arr = explode(",",$this->cObj->data['pages']);
$pid_list="";
while(list(,$val)=each($pid_list_arr)) {
$pid_list.=$val.",".$this->cObj->getTreeList($val,$conf["treeDepth"]);
}
$pid_list = ereg_replace(",$","",$pid_list);
return $pid_list;
}
}
?>