Seite 1 von 1
Hauptnavigations Frage
Verfasst: Do 27. Dez 2007, 19:26
von cms
Im Contenido hab ich Folgendes Problem . Es werden ja immer nur Die Kategorien in der Navigation angezeigt. Und würde nun gern Wissen wie man die Jeweiligen Artikel der Kategorie Auch als navigationspunkt Anzeigen lassen kann. Und wo in der Datenbank sind die Artikeldaten gespeichert?
gruß cms
Verfasst: Do 27. Dez 2007, 20:24
von Contenider
Soweit ich das beurteilen kann, geht das mit dem Standard Navigationsmdul nicht, Du könntest einen Artikelteaser dazu missbrauchen, also die Newsliste. Die müsste man aber umbauen. Sitemap wäre vielleicht auch eine Möglichkeit.
Verfasst: Do 27. Dez 2007, 20:56
von cms
Ja das Stimmt ich werde nun ein modul dazu schreiben. Werde die daten aus der Db holen. Wenn jemand interesse hat kann es ja dann hier online stellen.
gruß cms
Verfasst: Fr 25. Jan 2008, 14:49
von MrK
Sowas würde ich auch gerade benötigen. Hast du schon ein entsprechendes Modul geschrieben?
LG,
MrK
Verfasst: Fr 25. Jan 2008, 15:30
von cms
ich stell nachher mal on .

Verfasst: Fr 25. Jan 2008, 17:54
von cms
was brauchst genau . Alle artikel aus einem Baum ? Nur die eine Ebene darunter liegenden Kattegorien ?
Verfasst: Fr 25. Jan 2008, 20:30
von holger.librenz_4fb
Hi.
Yepp, die Navi aus dem Standardmandanten gibt es nicht her. Aber wie schauts mit nem Sitemap-Modul aus? Da kursieren hier ja auch einige und die sollten genau das tun - das Layout muss natürlich ggf. angepasst werden.
So long
Holger
Verfasst: Fr 25. Jan 2008, 21:30
von wosch
cms hat geschrieben:Ja das Stimmt ich werde nun ein modul dazu schreiben.
Nur zur Info.
Solch ein Modul gibt es bereits.
Es zeigt alle Artikel der ausgewählten Kategorie an.
Der Thread dazu ist bei 4.6.x - Module zu finden.
Der Modul arbeit sehr schön und nutzt die Modul-Templates der der 4.6.8.x-Version
Nur so zur Info, da anscheinend niemand mehr das Modul kennt.
(Und nein, von mir ist es nicht, aber ich hatte es mal getestet und fand es super)
Verfasst: Sa 26. Jan 2008, 15:47
von cms
hab das modul ja schon fertig nun wollte ich bloss wissen was er genau braucht ? meins ist mit template und ja . also ich wollte eben nur wissen ob er die artikel als unternavi haben möchte oder eher die kattegorien ?

Verfasst: So 27. Jan 2008, 02:45
von MrK
Hi cms. Ich brächte Artikel als Navigationspunkte. Ich habe hald meine Kathegorien ( im moment nur 1 ebene ) und als unterpunkte sollten artikel auch im menü angezeigt werden (wenn die entsprechende katheorie ausgewählt ist). Ich kann mir das ganze auch selber anpassen, wenn es nicht genau dem entspricht, was ich suche. Aber mit funktionierender Vorlage tu ich mir als zeimlicher PHP und SQL Laie um einiges leichter.
LG,
MrK
Verfasst: So 27. Jan 2008, 22:20
von cms
INPUT:
Code: Alles auswählen
// selected category
$selected = "CMS_VALUE[0]";
echo "<table cellspacing=\"0\" cellpadding=\"10\" border=\"0\">
<tr valign=\"top\">
<td>Kategorie wählen:</td>
<td>
<select name=\"CMS_VAR[0]\">";
if($selected!="0" && $selected!=""){
echo"<option value=\"0\">--- kein ---</option>";
}else{
echo"<option selected=\"selected\" value=\"0\">--- kein ---</option>";
}
// fetch all categorys
$query = "SELECT A.idcat, A.level, C.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 C.visible=1 ORDER BY A.idtree";
// execute query
$db->query($query);
// loop result and build the options
while ($db->next_record()) {
// indent spacer
$spaces = "|";
// how many levels
$levels = $db->f("level");
for ($i = 0; $i < $levels; $i ++) {
// add 2 spaces for every level
$spaces = $spaces . "--";
} // end for
$spaces .= ">";
if ($selected == $db->f("idcat")) {
// selected category
echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";
} else {
// category
echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";
} // end if
} // end while
echo " </select>";
echo " </td>
</tr>
echo $query;
</table>";
OUTPUT
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Hilfsnavigation
* Author(s) : Andreas Lindner
* Copyright : Contenido - four for business, Andreas Lindner
* Created : 05.08.2005
* Modified : CMS 2008
************************************************/
cInclude("frontend", "includes/functions.navigation.php");
cInclude('classes', 'class.template.php');
$catStart = "CMS_VALUE[0]";
if(($catStart=='')||($catStart=='0')){
$cApiClient = new cApiClient($client);
$catStart= $cApiClient->getProperty('navigation', 'idcat_hilfsnavi');
}
if(!is_object($oClient)) {
$oClient = new cApiClient($client);
}
$db = new DB_Contenido;
$db2 = new DB_Contenido;
$navigation = array();
$navigation = createNavigationArray($catStart, $db);
$templNav_1 = array();
$templNav_2 = array();
$i=0;
if (count($navigation) > 0) {
$merkeids=array();
foreach ($navigation as $key => $data)
{
$templNav_1[$i]= '<li><a href="'.$sess->url('front_content.php?idcat='.$data['idcat']).'">» '.$data['name'].'</a><li> ';
$sql = "SELECT * FROM con_cat_art WHERE idcat=".$key;
$db2->query($sql);
$v=0;
while ($db2->next_record())
{
$sql = "SELECT * FROM con_art_lang";
$db->query($sql);
while ($db->next_record())
{
if($db2->f(idart)==$db->f(idart))
{
$templNav_2[$i][$v]='<li><a href="front_content.php?idart='.$db->f(idart).'">'.$db->f(title).'</a></li>';
$v++;
}
}
}
$i++;
}
}
// Ausgabe Navigation ....
// wollte oben kein echo wirwa
$ende=count($templNav_1);
for($n=0;$n<$ende;$n++){
echo $templNav_1[$n];
//unternavi
$endeunternav=count($templNav_2[$n]);
for($un=0;$un<$endeunternav;$un++)
{
echo $templNav_2[$n][$un];
}
}
?>
Wie du das nun gestalltest und umsetzt ist jetzt dein ding.
Ist erstmal so das es geht

Verfasst: So 27. Jan 2008, 22:48
von cms
wollte das template noch mit einbauen . aber hatte noch nicht die zeit dazu . Aber das dürftest du auch alleine schaffen jetzt

Verfasst: Di 29. Jan 2008, 03:37
von MrK
Ja super. Template schaff ich schon

Danke!