Breadcrump, Pfadangabe rekursiv

Gesperrt
Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Breadcrump, Pfadangabe rekursiv

Beitrag von Oldperl » Fr 26. Aug 2005, 11:14

Beim stöbern im Forum fiel mir ein Modul für die 4.4'er Versionen auf, das den Pfad rekursiv zur Hauptkategorie anzeigt. Da dieses Modul nicht ohne weiteres mit der 4.5'er Version funktionieren wollte, habe ich es komplett neu umgesetzt auf 4.5.x.

Dabei habe ich versucht so viel wie möglich Contenido-eigene Funktionen zu benutzen.

Hier also das modul "breadcrumb", ich stelle aber auch (wenn ich's schaff) übers Woende noch die xml-files online.

In Beschreibung:

Code: Alles auswählen

MODUL         : breadcrumb 1.0
 Contenido-Ver.: > 4.5.x (not tested with lower versions)

 Author        :     Ortwin Pinke
 Copyright     :     
 Created       :     2005-08-25

 Please enter modifications in the following format
 and do a comment in source code
 then please send file to module@dceonline.de, thx

 Modified      :      YYYY-DD-MM
 Modified by   :      name of modifier
 reason for modification?

 Beschreibung:
 Das Modul zeigt den "breadcrumb"-Pfad (breadcrumb = Brotkrumen) ausgehend
 von der aktuellen Kategorie bis zum Stammverzeichnis als Kategorienamen mit
 einem Seperator dazwischen.
 Folgende Einstellungen im Backend sind möglich:

 Als Link anzeigen: Jeder Kategoriename ist verlinkt, ansonsten nur Text.

 1. Kategorie nicht anzeigen: Das Level 0 wird hier ein- oder ausgeblendet

 Zeichen für Seperator: hier kann ein alphanum. Zeichen als Seperator eingegeben werden
 			(standard >). Vor und nach dem Zeichen wird standardmässig
                         ein Leerzeichen eingefügt.

 In die 'format.css' wird die beigefügte 'breadcrumb.css' per CopyandPaste am ende eingefügt.

 <<< Todo >>>

 - Bild als Seperator
 - Vardefinition in array, damit auch leichteres unset
 - Zuschaltbare Anzeige des aktuellen Artikels

 Für Anregungen, Vorschläge und Verbesserungen bin ich wie immer dankbar
Der Eingabeteil (Input):

Code: Alles auswählen

/***********************************************
* CONTENIDO MODUL - INPUT
*
* MODUL         : breadcrumb 1.0
* Contenido-Ver.: > 4.5.x (not tested with lower versions)
*
* Author        :     Ortwin Pinke
* Copyright     :     
* Created       :     2005-08-25
*
* Please enter modifications in the following format
* and do a comment in source code
* then please send file to module@dceonline.de, thx
*
* Modified      :      YYYY-DD-MM
* Modified by   :      name of modifier
* reason for modification?
*
************************************************/
// include needed functions
cInclude("includes", "functions.forms.php");

// set constant variable
$input_field_width = 30;
$input_field_maxlen = 10;


// set var names
$var_show_with_link = "CMS_VAR[0]";
$var_show_first_element = "CMS_VAR[1]";
$var_seperator_breadcrumb = "CMS_VAR[2]";
$show_with_link = "CMS_VALUE[0]";
$show_first_element = "CMS_VALUE[1]";
$seperator_breadcrumb = "CMS_VALUE[2]";


// output form
echo '<table cellspacing="0" cellpadding="10" border="0">
        <tr valign="top">
          <td>'.mi18n("Show with link:").'</td><td>';
echo formGenerateCheckbox($var_show_with_link, "enabled", (($show_with_link != "enabled")?false:true), mi18n("Yes")).'</td></tr>';
echo '<tr valign="top">
          <td>'.mi18n("Don't show first cat:").'</td><td>';
echo formGenerateCheckbox($var_show_first_element, "enabled", (($show_first_element != "enabled")?false:true), mi18n("Yes")).'</td></tr>';
echo '<tr valign="top"><td>'.mi18n("Sign(s) for separator:").'</td><td>';
echo formGenerateField ("text", $var_seperator_breadcrumb, $seperator_breadcrumb, $input_field_width, $input_field_maxlen).'</td></tr>';

echo "</table>";
Der Ausgabeteil [Output):

Code: Alles auswählen

<?PHP
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* MODUL         : breadcrumb 1.0
* Contenido-Ver.: > 4.5.x (not tested with lower versions)
*
* Author        :     Ortwin Pinke
* Copyright     :    
* Created       :     2005-08-25
*
* Please enter modifications in the following format
* and do a comment in source code
* then please send file to module@dceonline.de, thx
*
* Modified      :      YYYY-DD-MM
* Modified by   :      name of modifier
* reason for modification?
*
************************************************/

// include functions
cInclude("includes", "functions.con.php");

// set vars
$show_with_link = "CMS_VALUE[0]";
$show_first_element = "CMS_VALUE[1]";
$seperator_breadcrumb = "CMS_VALUE[2]";
$linkClass_breadcrumb = "linkbreadcrumb";
$textClass_breadcrumb = "textbreadcrumb";
$sepClass_breadcrumb = "sepbreadcrumb";
$ausgabe = "";
$firstTreeElementToUse = "";

// set default if variables not set
if ($show_with_link == "enabled"){
	$show_with_link = true;
         }else{
         $show_with_link = false;
         }

if ($show_first_element == "enabled"){
	$firstTreeElementToUse = 1;
         }else{
         $firstTreeElementToUse = 0;
         }

if ($seperator_breadcrumb == ""){
	$seperator_breadcrumb = htmlspecialchars(" > ");
         }else{
         $seperator_breadcrumb = "&nbsp;".htmlspecialchars($seperator_breadcrumb)."&nbsp;";
         }


// make breadcrumb path
conCreateLocationString($idcat, $seperator_breadcrumb, $ausgabe, $show_with_link, $linkClass_breadcrumb, $firstTreeElementToUse);

// format output
if ($show_with_link) {
         echo "<div class=\"".$sepClass_breadcrumb."\">".$ausgabe."</div>";
         }else{
	echo "<div class=\"".$textClass_breadcrumb."\">".$ausgabe."</div>";
         }

// unset variables
unset($show_with_link);
unset($show_first_element);
unset($seperator_breadcrumb);
unset($ausgabe);
unset($firstTreeElementToUse);
unset($linkClass_breadcrumb);
unset($textClass_breadcrumb);
unset($sepClass_breadcrumb);
?>
Die 'breadcrumb.css':

Code: Alles auswählen

/* CSS breadcrumb */

A.linkbreadcrumb:link	{font-family: Arial, Helvetica, sans-serif; font-size:10; font-weight: bold; text-decoration: none; color: #000000}
A.linkbreadcrumb:visited    {font-family: Arial, Helvetica, sans-serif; font-size:10; font-weight: bold; text-decoration: none; color: #000000}
A.linkbreadcrumb:hover	{font-family: Arial, Helvetica, sans-serif; font-size:10; font-weight: bold; text-decoration: none; color: #FF0000}
A.linkbreadcrumb:active	{font-family: Arial, Helvetica, sans-serif; font-size:10; font-weight: bold; text-decoration: none; color: #00FF00}

.textbreadcrumb {
         border: 0px;
         background-color: #FFFFFF;
         padding-left: 0px;
         font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	color: #000000;
}


.sepbreadcrumb {
         border: 0px;
         background-color: #FFFFFF;
         padding-left: 0px;
         font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	color: #000000;
}

/* CSS breadcrumb end */
So das war's, die Installation sollte klar sein (CopyandPaste).
Die Todo-Liste steht in der Beschreibung und ich werde sie in der nächsten Version mit einbauen.

Das Modul in Funktion gibts leider zur Zeit noch nicht zu sehen :cry:
Aber sobald die Kundendomain online ist poste ich den link hier.

Na dann viel Spaß damit :wink:

Gruß aus dem heut mal sonnigen Frankenland

Ortwin
Zuletzt geändert von Oldperl am Do 20. Nov 2008, 10:21, insgesamt 3-mal geändert.
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

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

Beitrag von emergence » Mo 10. Okt 2005, 09:27

ist auch ne möglichkeit die interne contenido funktion zu benutzen...
- Vardefinition in array, damit auch leichteres unset
gute idee...

gibts das teil schon irgendwo zur ansicht ?
*** make your own tools (wishlist :: thx)

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Beitrag von Oldperl » Di 8. Nov 2005, 16:36

emergence hat geschrieben: gibts das teil schon irgendwo zur ansicht ?
Ja ist online unter http://www.arb-jobvermittlung.de

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

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

Beitrag von jost » Di 8. Nov 2005, 17:22

Kleiner Hinweis: Herr bläß sieht aber nicht sehr hoffnungsfroh aus :lol: Eventuell muss das Foto mal getauscht werden??

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Beitrag von Oldperl » Mi 9. Nov 2005, 07:39

@jost:
Danke für den Tipp, ich nehm mal an du meinst das Bild unter Existenzgründungsberatung?
Ja stimmt, sollte man wohl ein positiveres Bild einfügen, werde das mal anregen, danke :)
Nur zur Info, es ist nicht Herr Bläß 8)
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin » Mi 9. Nov 2005, 11:57

Na ja, das Bild heisst auch "Verzweiflung", was erwartet ihr da? :wink:

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Beitrag von Oldperl » Mi 9. Nov 2005, 12:04

Naja, auf alle Fälle scheint es zu Diskussionen anzuregen :wink: und das ist ja auch schon mal ein Weg in aller Munde zu sein :roll:
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Gesperrt