BottomNavigation/Navigationspfad als Listenelemente

Gesperrt
ClemensSchnitzler
Beiträge: 137
Registriert: Di 17. Aug 2004, 12:32
Kontaktdaten:

BottomNavigation/Navigationspfad als Listenelemente

Beitrag von ClemensSchnitzler » Mo 27. Aug 2007, 06:11

Ich setzte Contenido 4.6.15 mR ein und habe ddas Modul der BottomNavigation so "umgebaut" das es mit Listenelementen arbeitet. Hierfür habe ich den Code wie folgt umgearbeitet:

Code: Alles auswählen

<?php
/***********************************************
* Bottom Navigation Output
*
* Author      :     Willi Man
* Copyright   :     four for business AG
* Version	  : 	1.0
* Created     :     17-03-2005
* Modified    :     05-08-2005, Andreas Lindner
************************************************/

#System properties in use:
#Type: navigation, Name: idcat_bottomnavi
#Contains idcat of tree to be displayed in bottom navigation


#Includes
cInclude("frontend", "includes/functions.navigation.php");
cInclude('classes', 'class.template.php');

#Get settings	
$cApiClient = new cApiClient($client);
$catStart = $cApiClient->getProperty('navigation', 'idcat_bottomnavi');

if (!is_object($oClient)) {
	$oClient = new cApiClient($client);
}

#Get sub categories
$navigation = array ();
$navigation = createNavigationArray($catStart, $db);

#Output sub categories
$output = '';
if (count($navigation) > 0) {
	foreach ($navigation as $key => $data) {
		$output .= '<li><a href="'.$sess->url("front_content.php?idcat=".$data['idcat']).'" title="'.$data['name'].'">'.$data['name'].' |</a> </li>';
	}
}
if (strlen($output) > 0) {
	$output = substr($output, 0, strlen($output) - 3);
}

echo $output;
?>
Wenn ich mir die Seite im Frontend anschaue scheint alles richtig zu sein. Im XHTML-Validator bekomme ich jedoch Fehlermeldungen ausgeworfen.

Code: Alles auswählen

#  Warning  Line 108, Column 188: character "<" is the first character of a delimiter but occurred as data.

…takt/" title="Kontakt">Kontakt |</a> </

✉

This message may appear in several cases:

    * You tried to include the "<" character in your page: you should escape it as "<"
    * You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&", which is always safe.
    * Another possibility is that you forgot to close quotes in a previous tag.

# Error Line 110, Column 4: end tag for "li" omitted, but OMITTAG NO was specified.

</ul>

✉

You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".
# Info Line 108, Column 134: start tag was here.

…" title="Sitemap">Sitemap |</a> </li><li><a href="/kontakt/" title="Kontakt">

Im Quelltext habe ich den Fehler gefunden:

Code: Alles auswählen

<ul class="footernavi"><li><a href="/test/" title="Test">Test |</a> </li><li><a href="/sitemap/" title="Sitemap">Sitemap |</a> </li><li><a href="/kontakt/" title="Kontakt">Kontakt |</a> </

</ul>
hinter dem letzten Element wird wird der li-Tag nicht geschlossen. Ich habe nun versucht </li> an anderer Stelle im Code zu platzieren, bekomme aber leider immer immer wieder fehlerhaften PHP-Code im Backend angezeigt.

Kann mir bitte jemand einen Rat geben wo ich das Element genau platzieren muss? Vielen Dank!

Den Navigationspfad würde ich auch gerne als Listenelemente definieren. Hier fehlt mir aber der komplette Durchblick wo ich im Code des Standardmoduls <li> und </li> einfügen müsste vielleich kann mir da auch einer von Euch weiterhelfen. In diesem Zusammenhang noch eine kurze Frage als Separator habe ich :: definiert das ist ok. :: hätte ich aber auch gerne vor dem ersten Eintrag. Wo kann ich dies eingeben. Zur Verwendung kommt das Standardmodul Navigationspfad.

Vielen Dnak für Eure Hilfe

Gruss

Clemens

emergence
Beiträge: 10644
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 27. Aug 2007, 06:57

if (strlen($output) > 0) {
$output = substr($output, 0, strlen($output) - 3);
}
nimm das raus...
*** make your own tools (wishlist :: thx)

ClemensSchnitzler
Beiträge: 137
Registriert: Di 17. Aug 2004, 12:32
Kontaktdaten:

Beitrag von ClemensSchnitzler » Mo 27. Aug 2007, 10:00

@emergence

Vielen Dank, das hat gegriffen!

@ALL

Bleibt noch die Frage des Navigationspfades.

Vielleicht kann mir hier auch noch jemand helfen.

Gruss

Clemens

emergence
Beiträge: 10644
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 28. Aug 2007, 15:00

Bleibt noch die Frage des Navigationspfades.
such mal location string bzw urhere
die module lassen sich für deinen zweck wesentlich einfacher anpassen, als das modul des demo mandanten...
wäre auch möglich das es deine anpassungen schon gibt...
*** make your own tools (wishlist :: thx)

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Di 28. Aug 2007, 15:07

such mal nach breadcrump. allerdings sei hier gewarnt: es macht für jeden eintrag eine abfrage auf das rdbms...
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

ClemensSchnitzler
Beiträge: 137
Registriert: Di 17. Aug 2004, 12:32
Kontaktdaten:

Beitrag von ClemensSchnitzler » Do 30. Aug 2007, 08:39

Danke das Thema ist gelöst

Gruß

Clemens

Gesperrt