ich habe mir Contenido installiert, und komme bis jetzt auch gut zurecht, aber jetzt stehe ich vor einem kleinen Problem. Da ich nicht wirklich Kentnisse in PHP habe, könnt ihr mir vielleicht helfen!
Ich habe das Navigationspfad-Modul aus dem Beispielmandanten genommen. Ich würde es aber gerne so haben, dass er mir am Anfang schon den Namen des Menübaumes anzeigt. Als Beispiel: Hauptnavigation > Was ist Contenido, und nicht erst bei "Contenido" beginnt. Wisst ihr, was ich meine?
Hier nochmal der Code:
Code: Alles auswählen
<?php
#Settings
$separator = '>';
$max_length = 65;
#Get path to root
$dummy = conCreateLocationString($idcat, ' '.$separator.' ', $retval, true, "navipath", 1);
if ($retval=='') {
$retval=' ';
} else {
$pattern = "'>.*?<'";
preg_match_all($pattern, $retval, $matches);
$matches = $matches[0];
#Get effective text length
$length = 0;
foreach ($matches as $value) {
$length += strlen($value) - 2;
}
#Get shorten factor
if ($length > $max_length * 4) {
$shorten = 5;
}
elseif ($length > $max_length * 3) {
$shorten = 4;
}
elseif ($length > $max_length * 2) {
$shorten = 3;
}
elseif ($length > $max_length) {
$shorten = 2;
} else {
$shorten = 1;
}
#Shorten items
if ($length > $max_length) {
foreach ($matches as $value) {
if (strpos($value, $separator) === FALSE) {
$text = substr($value, 1, strlen($value) - 2);
$len = strlen($text);
if (strpos($text, ' ') === FALSE) {
$text_new = $text;
} else {
$text_new = capiStrTrimAfterWord($text, intval($len / $shorten));
}
if (strlen($text) != strlen($text_new)) {
$text_new .= '...';
}
$text_new = '>'.$text_new.'<';
$retval = str_replace('>'.$text.'<', $text_new, $retval);
}
}
}
$retval = str_replace('"/index.html"', '"Home/index.html"', $retval);
}
echo $retval;
?>
ich hoffe, ihr könnt mir da ein bisschen weiterhelfen und danke im Vorraus!
Mara