Breadcrumb

Gesperrt
jost
Beiträge: 322
Registriert: Mo 10. Jan 2005, 20:12
Kontaktdaten:

Breadcrumb

Beitrag von jost »

Moin,

ich suche ein Breadcrumb-Modul, das die einzelnen Linktiefen auch anklickbar macht. Was ich habe, ist ein Modul aus dem Forum - allerdings wird der Breadcrumb da nur als normaler Text ausgegeben, also Home > Test 1 > Test 2, aber "test 1" und "home" sollten auch klickbar sein. Meine Suche ware molto unerfolgreich. Hat jemand einen Tipp?

Danke und Gruß,
J.
OAA
Beiträge: 134
Registriert: Sa 15. Nov 2003, 15:54
Wohnort: Regensburg
Kontaktdaten:

Beitrag von OAA »

kuckst du hier:

Code: Alles auswählen

<?php 

/*********************************************** 
* 
* MODUL: Location-String (ohne Startikel) 
* 
* Author    :     Martin Horwath 
* Created   :     10.09.2003 
* Modified  :     05.02.2005 (by matze) 
* 
************************************************/ 


$nav_tp = $idcat; 

// AUSGABE Location-String (nur Kategorien) 
while($nav_tp > 0) { 
  $sql = "SELECT 
              parentid, A.idcat, A.level, name 
          FROM 
              ".$cfg["tab"]["cat_tree"]." AS A, 
              ".$cfg["tab"]["cat"]." AS B, 
              ".$cfg["tab"]["cat_lang"]." AS C 
          WHERE 
              A.idcat=B.idcat AND 
              B.idcat=C.idcat AND 
              C.idlang='$lang' AND 
              B.idclient='$client' AND 
              B.idcat ='$nav_tp'"; 

  $db->query($sql); 
  $db->next_record(); 
  $nav_tree[$db->f("level")][idcat] = $nav_tp; 
  $nav_tree[$db->f("level")][parent] = $db->f("parentid"); 
  $nav_tree[$db->f("level")][name] = $db->f("name"); 
  $nav_tree[$db->f("level")][link] = $sess->url("front_content.php?idcat=".$db->f("idcat")."&client=".$client."&lang=".$lang.""); 
  $nav_tp = $db->f("parentid"); 
} 

for($i=0;$i<count($nav_tree);$i++) { 
  echo "<a class=\"breadcrump\" href=\"".$nav_tree[$i][link]."\">".$nav_tree[$i][name]."</a>"; 
  if($nav_tree[$i][idcat] != $idcat) { 
    echo " > "; // seperator 
  } 
} 



// AUSGABE vom aktuellen Artikeltitel 
$i=$i-1; 
$new_idart=$idart; 

$sql = "SELECT 
             idart, is_start 
        FROM 
              ".$cfg["tab"]["cat_art"]." 
        WHERE 
              idart='$new_idart' AND is_start='0'"; 

$db->query($sql); 

if($db->next_record()) { 

  $sql = "SELECT 
             idartlang, title 
          FROM 
              ".$cfg["tab"]["art_lang"]." 
          WHERE 
              idartlang='$new_idart'"; 

  $db->query($sql); 
  $db->next_record(); 
  $art_titel=$db->f("title"); 

echo " > <a class=\"breadcrump\" href=\"".$nav_tree[$i][link]."&idart=$new_idart\">".$art_titel."</a>"; 

} 
?> 

jost
Beiträge: 322
Registriert: Mo 10. Jan 2005, 20:12
Kontaktdaten:

Beitrag von jost »

Herzlichen Dank - das ging ja schnell 8) Wenn jetz tnoch der BVB gewinnt, wird das ein prima Tag.
jost
Beiträge: 322
Registriert: Mo 10. Jan 2005, 20:12
Kontaktdaten:

Beitrag von jost »

Oben genannten Breadcrumb habe ich jetzt eingebaut, bekomme es aber nicht hin, "ihm" einen Style zuzuweisen. Ich habe extra eine Klasse .breadcrumb geschrieben und der Zelle in meinem Template, in der der Breadcrumb ausgegeben wird, zugewiesen. Aber niente. Muss ich da ihm Code selber was zuweisen?

Ratlos und in der Hoffnung auf Tipps:

Jost
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Nein, sollte auch so gehen. Statt .breadcrump kannst Du auch a.breadcrump (in der CSS-Definition) versuchen, aber gehen sollte es.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

wo hast du das style definiert ?
in einer externen stylesheet datei ?
wird diese im layout nachgeladen ?
mach mal nen reload der seite...
*** make your own tools (wishlist :: thx)
jost
Beiträge: 322
Registriert: Mo 10. Jan 2005, 20:12
Kontaktdaten:

Beitrag von jost »

Freunde, besten Dank. Geht jetzt. Der Fehler war so trivial: "breadcrumb" stand in der CSS - aber "breadcrump" wäre ja richtig gewesen.

Sorry für meine Kurzsicht...
mf_total
Beiträge: 1
Registriert: Mo 27. Jun 2005, 17:32
Kontaktdaten:

Beitrag von mf_total »

Hallo,

ich wollte nur mitteilen, dass das Modul genial ist. Ich brauchte es nur kopieren und einfügen und es hat ohne Anpassung sofort funktioniert - Danke!! (Ich hatte vorher viele Misserfolge mit anderen Modulen.) Für Einsteiger in Contenido ist das super. Ich muss mich erst langsam in das ganze Gerüst einfinden.

MfG
2pauli
Beiträge: 20
Registriert: Do 16. Jun 2005, 13:00
Kontaktdaten:

Code anpassen

Beitrag von 2pauli »

Wie müsste der Code aussehen, wenn ich immer nur die 2. Kategorieebene anzeigen lassen möchte?
Also "Hauptnavigation" soll nicht angezeigt werden, ebenso auch keine weitere 3., 4., ... Unterebene.
vicky-pag
Beiträge: 56
Registriert: Mo 25. Jul 2005, 19:33
Wohnort: Montabaur
Kontaktdaten:

Beitrag von vicky-pag »

Hallo!

Klasse Modul, echt super - vielen Dank! :D

Ich habe das Design schon in einer CSS-Datei angepasst. Funktioniert alles super. Das einzige, was ich noch nicht farblich ändern konnte, war der ">" zwischen den verschiedenen Ebenen. Vielleicht kann mir da ja noch jemand einen Tipp geben.

Kann man das Modul auch so umschreiben, dass jeweils die erste Ebene (Hauptnavigation, Servicenavigation und News) nicht angezeigt wird? Ich habe leider noch keine Ahnung von PHP... :(

Es wäre toll, wenn mir jemand von euch "Großen" helfen könnte.

Danke und liebe Grüße aus Montabaur
Vicky :)
fumix
Beiträge: 7
Registriert: Fr 12. Aug 2005, 11:54
Wohnort: Langenzersdorf/NÖ
Kontaktdaten:

Beitrag von fumix »

Das einzige, was ich noch nicht farblich ändern konnte, war der ">" zwischen den verschiedenen Ebenen. Vielleicht kann mir da ja noch jemand einen Tipp geben.

Die Separatoren können wie folgt beeinflusst werden:

An zwei Stellen Folgendes einfügen: <span class=\"breadcrumb\"> > </span>

...
echo " <span class=\"breadcrumb\"> > </span>"; // seperator
...

echo " <span class=\"breadcrumb\"> > </span> <a class=\"breadcrumb\" href=\"".$nav_tree[$i][link]."&idart=$new_idart\">".$art_titel."</a>";

In der CSS-Datei muss es natürlich die Klasse .breadcrumb geben.
Hier noch einmal der modifizierte Code:

Code: Alles auswählen

<?php 

/*********************************************** 
* 
* MODUL: Location-String (ohne Startikel) 
* 
* Author    :     Martin Horwath 
* Created   :     10.09.2003 
* Modified  :     05.02.2005 (by matze) 
* Modified  :     25.08.2005 (by fumix) 
* 
************************************************/ 


$nav_tp = $idcat; 

// AUSGABE Location-String (nur Kategorien) 
while($nav_tp > 0) { 
  $sql = "SELECT 
              parentid, A.idcat, A.level, name 
          FROM 
              ".$cfg["tab"]["cat_tree"]." AS A, 
              ".$cfg["tab"]["cat"]." AS B, 
              ".$cfg["tab"]["cat_lang"]." AS C 
          WHERE 
              A.idcat=B.idcat AND 
              B.idcat=C.idcat AND 
              C.idlang='$lang' AND 
              B.idclient='$client' AND 
              B.idcat ='$nav_tp'"; 

  $db->query($sql); 
  $db->next_record(); 
  $nav_tree[$db->f("level")][idcat] = $nav_tp; 
  $nav_tree[$db->f("level")][parent] = $db->f("parentid"); 
  $nav_tree[$db->f("level")][name] = $db->f("name"); 
  $nav_tree[$db->f("level")][link] = $sess->url("front_content.php?idcat=".$db->f("idcat")."&client=".$client."&lang=".$lang.""); 
  $nav_tp = $db->f("parentid"); 
} 

for($i=0;$i<count($nav_tree);$i++) { 
  echo "<a class=\"breadcrumb\" href=\"".$nav_tree[$i][link]."\">".$nav_tree[$i][name]."</a>"; 
  if($nav_tree[$i][idcat] != $idcat) { 
    echo " <span class=\"breadcrumb\">  > </span>"; // seperator 
  } 
} 



// AUSGABE vom aktuellen Artikeltitel 
$i=$i-1; 
$new_idart=$idart; 

$sql = "SELECT 
             idart, is_start 
        FROM 
              ".$cfg["tab"]["cat_art"]." 
        WHERE 
              idart='$new_idart' AND is_start='0'"; 

$db->query($sql); 

if($db->next_record()) { 

  $sql = "SELECT 
             idartlang, title 
          FROM 
              ".$cfg["tab"]["art_lang"]." 
          WHERE 
              idartlang='$new_idart'"; 

  $db->query($sql); 
  $db->next_record(); 
  $art_titel=$db->f("title"); 

echo " <span class=\"breadcrumb\">  > </span> <a class=\"breadcrumb\" href=\"".$nav_tree[$i][link]."&idart=$new_idart\">".$art_titel."</a>"; 

} 
?> 
Grüße aus LE
vicky-pag
Beiträge: 56
Registriert: Mo 25. Jul 2005, 19:33
Wohnort: Montabaur
Kontaktdaten:

Beitrag von vicky-pag »

Hallo,

vielen Dank für den geänderten Code, aber leider funktioniert es noch nicht. Es scheint mir, als würde das Modul das Design, dass ich in der CSS-Datei beschriben habe, gar nicht annehmen. Und das, obwohl ich im Layout auf die Datei verweise (kein Schreibfehler :D )...

Vielleicht liegt es ja an meiner CSS-Datei. Ich weiß nicht, wo der Fehler steckt...

Code: Alles auswählen

/*breadcrumb*/

a.breadcrumb:text{
 font-family: helvetica, arial, geneva, sans-serif;
 color:#FFECBF;
} 
a.breadcrumb:link{
 color:#C1C9FF;
}
a.breadcrumb:visited{
 color:#C1C9FF;
}
Vielleicht könnt ihr mir ja weiterhelfen. :?
Liebe Grüße aus Montabaur
Vicky

P.S. Mit dem unveränderten Code für dieses Modul hatten ja wenigstens die Links die richtige Farbe. Liege ich mit der Annahme richtig, dass ich die Trennpfeile mit dem text-Abschnitt in der CSS-Datei bearbeiten können müsste??
Simone
Beiträge: 193
Registriert: Fr 9. Sep 2005, 06:39
Kontaktdaten:

Beitrag von Simone »

bei mir sind die a. alle groß geschrieben

Code: Alles auswählen

A.breadcrump:link	{font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}
A.breadcrump:visited {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}
A.breadcrump:hover	{font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #D70029}
A.breadcrump:active	{font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}

Hat das was zu sagen? Ich dachte ja auch immer, es wäre nicht wichtig, aber weil in meinem Ur.css die Links A. geschrieben sind, habe ich mich einfach dran gehalten.

Nur so ne Idee ...

Die Trennpfeile in der format.css

Code: Alles auswählen

.weiss {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; color:#FFFFFF;}
Im Layout:

Code: Alles auswählen

 <td width="400" height="14" class="weiss">
<!--breadcrumb-->
CMS_CONTAINER[11]
<!--breadcrump ende-->
</td>
Simone[/code]
i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt »

Eine CSS Frage, endlich. :)

es ist unwichtig ob du das A klein oder groß schriebst.

Das hier:

Code: Alles auswählen

A.breadcrump:link   {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}
A.breadcrump:visited {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}
A.breadcrump:hover   {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #D70029}
A.breadcrump:active   {font-family: verdana, helvetica, arial, geneva, sans-serif; font-size:10; text-decoration: none; color: #FFFFFF}
geht aber viel kleiner:

Code: Alles auswählen

a.breadcrump {
	font-family: verdana, helvetica, arial, geneva, sans-serif;
	font-size: 10px;
	text-decoration: none;
	color: #fff;
}

a.breadcrump:hover {
	color: #d70029;
}
Die Pfeile solltest so einfärben können:

Code: Alles auswählen

span.breadcrump {
	color: blue;
}
Gruss,
Michael

"Keep on riding this Bike!" (Jackson Mulham)
Simone
Beiträge: 193
Registriert: Fr 9. Sep 2005, 06:39
Kontaktdaten:

Beitrag von Simone »

Gewiß geht es kleiner, aber ich bin von Natur aus faul. Will heißen, wenn ich oben den Code habe, kopiere ich ihn, ändere nur schnell die Bezeichnung und die Farben.
Gesperrt