Wie Kategorie unsichtbar machen?

Gesperrt
4423
Beiträge: 133
Registriert: Mi 3. Sep 2003, 10:46
Kontaktdaten:

Wie Kategorie unsichtbar machen?

Beitrag von 4423 »

Wenn ich in Content --> Kategorie bei einem bereits bestehenden Baum eine weitere Kategorie anfüge, also gewissermassen einen neuen Navigationspunkt in meinem Navigationsmenue erstelle, dann ist dieser direkt auf der Website sichtbar, selbst wenn ich der neuen Kategorie kein Template zuweise, die neue Kategorie auf "offline" steht und für die neue Kategorie weder Start- noch sonstige Artikel erstellt wurden.

Wie kann ich in Ruhe mein Navigationsmenue ändern/erweitern, ohne dass sich das Menue direkt sichtbar auf der Website ändert?
vielen Dank

jens
-------------------------------------------------------

http://www.pinger-eden.de
4423
Beiträge: 133
Registriert: Mi 3. Sep 2003, 10:46
Kontaktdaten:

Beitrag von 4423 »

Keiner ne Idee?

Was nutzt mir die On-/Offline-Option bei den Kategorienbäumen (Content --> Kategorie), wenn ich den neuen Link sofort auf der Website sehe sobald ich die neue Kategorie angelegt habe :cry:

Ach ja: Version 4.4.2 auf Linux Apache
-------------------------------------------------------

http://www.pinger-eden.de
Black Widow
Beiträge: 174
Registriert: Mi 22. Okt 2003, 11:08
Kontaktdaten:

Beitrag von Black Widow »

Hi!

Das wird wohl daran liegen, dass die SQL-Abfrage, die die Kategorien für Deine Navigation ermittelt, das Attribut online nicht beachtet und einfach ausgibt, nicht nur die online=1!
Leider hab ich die Standardnavi nicht mehr in meinem Contenido. Kannst Du mir mal den Output-Code Deiner Navi posten?

Black Widow
4423
Beiträge: 133
Registriert: Mi 3. Sep 2003, 10:46
Kontaktdaten:

Beitrag von 4423 »

Hi,

also der


INPUT

// 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>
</table>";


-----------------------------------------------------------------------------------

und der

OUTPUT

<?
include_once($cfg["path"]["contenido"].$cfg["path"]["includes"]."functions.con.php");

$catStart = "CMS_VALUE[0]";

if ($catStart != "") {
$catIds = conDeeperCategoriesArray($catStart);

echo '<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>';

if ( is_array($catIds) ) {

foreach($catIds as $key=>$val) {
// Ersten Eintrag ueberspringen, weil das der Menupunkt selbst ist
// und nicht angezeigt werden soll.
if ($key != 0) {

$sql = "SELECT CAT.idcat AS idcat, name FROM ".
$cfg["tab"]["cat"]." AS CAT, ".
$cfg["tab"]["cat_lang"]." AS CATLANG
WHERE CAT.idcat = ".$val."
AND CAT.idcat = CATLANG.idcat";

$db->query($sql);


while ( $db->next_record() ) {
echo '<td width="90">';
if ($db->f("idcat") == $idcat){
echo "<a class=\"hilfson\" ";
}else{
echo "<a class=\"hilfsoff\" ";
}

echo ' href="front_content.php?idcat='.$db->f("idcat").'">'.$db->f("name").'</a></td>';
} // end while

} // if
} // end foreach
} // end if (is_array)

echo '</tr></table>';

}
?>

-----------------------------------------------------------------------------------

Ist eine leicht abgewandelte Service-Navi, die den gerade aktiven Link hervorhebt.

Mit dem online=1 habe ich irgendwo hier im Forum schon mal gelesen, ich findes aber nicht mehr.

danke für deine hilfe!

jens
-------------------------------------------------------

http://www.pinger-eden.de
agon
Beiträge: 83
Registriert: Mi 29. Okt 2003, 16:01
Kontaktdaten:

Beitrag von agon »

Hallo,

erweitere mal die SQL-Abfrage im Output um

Code: Alles auswählen

AND CATLANG.visible='1'
Gruß
Andreas
4423
Beiträge: 133
Registriert: Mi 3. Sep 2003, 10:46
Kontaktdaten:

Beitrag von 4423 »

Super, so gehts :D

Tausend Dank

jens
-------------------------------------------------------

http://www.pinger-eden.de
Black Widow
Beiträge: 174
Registriert: Mi 22. Okt 2003, 11:08
Kontaktdaten:

Beitrag von Black Widow »

Hi 4423!

Ja, genau! So müsste es gehen! Hab ich ja richtig vermutet ... :P
Konnte leider erst wieder heute schreiben, ist mir agon ja zuvor gekommen! :wink:

Black Widow
Gesperrt