Seite 1 von 1

Haupt- und Hilfsnavis

Verfasst: Mi 3. Dez 2003, 17:43
von locke
Hi,

ich hab folgendes Problem: Ich kann seit einigen Tagen meine Hauptnavi nicht mehr benutzen. Wenn ich es im Container als Modul eingebe erscheint im CMS nix mehr. Alles WEIß!!! Wenn ich es nicht mehr als Modul einfüge und den Container leer lasse, erscheint alles andere ganz normal.

Habe es mit der Hilfsnavi probiert. Im Grunde hab ich da einfach navifirst (on und off) ersetzt durch die Inhalte in der Hilfsnavi. :wink:

Naja, jetzt erscheint zwar der Rest, aber da wo die Navi sein soll, is' wieder nix. Nur das vorgegebene Layout als Hg. :evil:

Meine Frage: Was tun?

-Danke-

Verfasst: Mi 3. Dez 2003, 17:48
von ttb
? Das Template für die Hilfsnavi ist die hilfsnavi.html.

In den Dateien navfirst_on/off.html muss mindestens folgendes drinstehen:

Code: Alles auswählen

<!-- BEGIN:BLOCK -->
<a target="{TARGET}" href="{HREF}" title="{NAME}">{NAME}</a>
<!-- END:BLOCK -->

Haupt- und Hilfsnavi

Verfasst: Mi 3. Dez 2003, 17:55
von locke
Ok. Steht jetzt wieder so drin. Aber hab jetzt wieder das selbe Problem mit dem weißen Bildschirm...
Am Modul liegt es glaub ich nicht. Ich habs schon ca 20 überprüft.

Verfasst: Mi 3. Dez 2003, 18:05
von ttb
Steht denn was im errorlog?

Haupt- und Hilfsnavi

Verfasst: Do 4. Dez 2003, 10:56
von locke
Das steht im "error" drin. Ist das so weit richtig?

<html>
<head>
<title>Fehler</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="expires" content="0">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="Refresh" content="0; URL=http://www.contenido.de">
<meta name="robots" content="follow,noindex">
</head>
<body bgcolor="#ffffff">
&nbsp;
</body>
</html>

Verfasst: Do 4. Dez 2003, 11:08
von locke
Hier der Inhalt meiner Hauptnavi:



input:


/**
* Navigation
*
* INPUT
*
* @autor Jan Lengowski <Jan.Lengowski@4fb.de>
* @copyright four for business AG 2003
*/

?>
<table cellspacing="0" cellpadding="0" cellpadding="4">

<tr>
<td class="text">Baum wählen:</td>
<td>
<select name="CMS_VAR[0]">
<option value="0">-- kein --</option>
<?php

$sql = "SELECT
A.idcat,
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 AND
A.level = '0'
ORDER BY
A.idtree";

$db->query($sql);

while ( $db->next_record() ) {

if ( "CMS_VALUE[0]" == $db->f("idcat") ) {
echo '<option selected="selected" value="'.$db->f("idcat").'">'.$db->f("name").'</option>';

} else {
echo '<option value="'.$db->f("idcat").'">'.$db->f("name").'</option>';

}
}

?>
</select>
</td>
</tr>

</table>

<?php

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

output:


<?php

/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Navigation 1.1
* Author : Jan Lengowski
* Copyright : Contenido - four for business
* Created : 15-05-2003
* Modified : 26-05-2003
************************************************/

if ( !is_object($db2) ) {
$db2 = new DB_Contenido;
}

/**
* Check if a category is child
* of another category
*
* @return boolean true/false
* @author Jan Lengowski <Jan.Lengowski@4fb.de>
* @copyright four for business AG 2003
*/
function catIsChildOf($id, $idparent) {

global $cfg, $client, $lang;

$db = new DB_Contenido;

$parent = $id;

while ( $parent != 0 ) {

$sql = "SELECT
a.parentid
FROM
".$cfg["tab"]["cat"]." AS a,
".$cfg["tab"]["cat_lang"]." AS b
WHERE
a.idclient = '".$client."' AND
b.idlang = '".$lang."' AND
a.idcat = b.idcat AND
a.idcat = '".$parent."'";

$db->query($sql);
$db->next_record();

$parent = $db->f("parentid");

if ($parent == $idparent) {
return true;
}

}

return false;

}

if ( catIsChildOf($idcat, CMS_VALUE[0]) ) {
$sel_idcat = $idcat;
} else {
$sel_idcat = CMS_VALUE[0];
}

/* Include Template Class */
include_once($cfg["path"]["contenido"] . 'classes/class.template.php');

/**
* Array storing alle the
* navigation data
*/
$navitems = array();


/* Template Instance */
$tpl = new Template;

/**
* Recursive function for creating
* the navigation array
* @param Int $idcat Category id
*/
function nav($idcat) {

global $navitems, $client, $lang, $cfg;

$db = new DB_Contenido;
$db2 = new DB_Contenido;

$sql = "SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'";

$db->query($sql);
$db->next_record();

$parentid = $db->f("parentid");

if ( $parentid == 0 ) {

if ( $idcat != CMS_VALUE[0] ){

$navitems = array();

$sql = "SELECT
A.idcat,
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
B.idclient = '$client' AND
C.idlang = '$lang' AND
C.visible = '1' AND
B.parentid = 'CMS_VALUE[0]'
ORDER
BY A.idtree";

$db->query($sql);

while ($db->next_record()) {

/* Check for external redirects... */
$sql = "SELECT
a.external_redirect AS ext
FROM
".$cfg["tab"]["art_lang"]." AS a,
".$cfg["tab"]["cat_art"]." AS b,
".$cfg["tab"]["cat"]." AS c
WHERE
b.idcat = '".$db->f("idcat")."' AND
b.is_start = '1' AND
c.idclient = '".$client."' AND
c.idcat = b.idcat AND
a.idart = b.idart AND
a.idlang = '".$lang."'";

$db2->query($sql);
$db2->next_record();

$target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"target" => $target);
}

}

return true;
}

$sql = "SELECT
A.idcat,
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
B.idclient = '$client' AND
C.idlang = '$lang' AND
C.visible = '1' AND
B.parentid = '$parentid'
ORDER BY
A.idtree";

$db->query($sql);

while ($db->next_record()) {

/* Check for external redirects... */
$sql = "SELECT
a.external_redirect AS ext
FROM
".$cfg["tab"]["art_lang"]." AS a,
".$cfg["tab"]["cat_art"]." AS b,
".$cfg["tab"]["cat"]." AS c
WHERE
b.idcat = '".$db->f("idcat")."' AND
b.is_start = '1' AND
c.idclient = '".$client."' AND
c.idcat = b.idcat AND
a.idart = b.idart AND
a.idlang = '".$lang."'";

$db2->query($sql);
$db2->next_record();

$target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

$tmp_nav[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"target" => $target);
}

$tmp_nav[$idcat]["sub"] = $navitems;
$navitems = $tmp_nav;

/* Function call */
nav($parentid);

} // end function

$sql = "SELECT
A.idcat,
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
B.idclient = '$client' AND
C.idlang = '$lang' AND
C.visible = '1' AND
B.parentid = '$sel_idcat'
ORDER BY
A.idtree";

$db->query($sql);

while ( $db->next_record() ) {

/* Check for external redirects... */
$sql = "SELECT
a.external_redirect AS ext
FROM
".$cfg["tab"]["art_lang"]." AS a,
".$cfg["tab"]["cat_art"]." AS b,
".$cfg["tab"]["cat"]." AS c
WHERE
b.idcat = '".$db->f("idcat")."' AND
b.is_start = '1' AND
c.idclient = '".$client."' AND
c.idcat = b.idcat AND
a.idart = b.idart AND
a.idlang = '".$lang."'";

$db2->query($sql);
$db2->next_record();

$target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"target" => $target);
}

/* Create Navigation Array */
nav($sel_idcat);

/* Start Output buffer */
ob_start();

echo '<table cellspacing="0" cellpadding="0" border="0">';

foreach ($navitems as $key => $data) {

/* 1. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();

if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navfirst_on.html');
} else {
$tpl->generate('templates/navfirst_off.html');
}

if (is_array($data['sub'])) {

foreach ($data['sub'] as $key => $data) {

/* 2. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();

if ($idcat == $data['idcat'] || is_array($data['sub'])) {
$tpl->generate('templates/navsecond_on.html');
} else {
$tpl->generate('templates/navsecond_off.html');
}

if (is_array($data['sub'])) {

foreach ($data['sub'] as $key => $data) {

/* 3. Navigations Ebene */
$tpl->reset();
$tpl->set('d', 'NAME', $data['name']);
$tpl->set('d', 'TARGET', $data['target']);
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
$tpl->next();

if ($idcat == $data['idcat']) {
$tpl->generate('templates/navthird_on.html');
} else {
$tpl->generate('templates/navthird_off.html');
}

} // end foreach

} // end if

} // end foreach

} // end if

} // end foreach

echo '</table>';

/* Read out buffer */
$html = ob_get_contents();

/* Clean buffer */
ob_end_clean();

/* Output buffer-contents */
echo $html;

?>


(Ich dank dir)

Verfasst: Fr 5. Dez 2003, 14:38
von Niko7
Hallo,

ich habe den in- und output Code einmal auf meiner Seite eingebunden, und er Funktioniert super, ist auch genau solch eine Navi welche ich benötigen würde, doch da hätte ich noch einige Fragen:

Wie kann ich das Aussehen anpassen, d.h. mein eigenes CSS einbinden?

Was hat es mit den Dateien templates/navfirst_on.html auf sich, kann ich damit das aussehen beeinflussen? und wo muß ich diese einstellen?

Bin in Contenido noch sehr sehr neu :wink: und habe daher noch viele Fragen, die für den einen oder anderen doff klingen.

Vielen Dank
Niko

Verfasst: Fr 5. Dez 2003, 14:48
von ttb
Die Dateien liegen standardmäßig in cms/templates. - In ihnen sollte jedoch mind. das von mir genannte Grudgerüst drinstehen. In den a-Tags kann man auch beliebig Klassen einbinden mittels id- bzw. class-Attribut. :)

Eigene CSS-Dateien bzw. CSS-Definitionen kannst du anlegen bzw. definieren über Style -> Styleeditor. ;)

Verfasst: Fr 5. Dez 2003, 14:57
von locke
Gibt keine doofen Fragen!

Also, schau mal in deinen wincom. Da findest du dein tamplate (nicht zu verwechseln mit css!) In deinem Tamplate kannst du dann deine navi so darstellen wie dus haben möchtest. Setz ein table davor und dahinter, dann erkennst du besser was du machst. Das table solltest du aber spätestens beim Abspeichern löschen. Du hast die Möglichkeit Farben zu verändern, Bilder rein zu setzten uvm. Ich empfehl dir im Dreamwaever zu arbeiten. Ist einfacher.

Deinen Style kannst du dann auch direkt anlegen und sehen. Geh in deinen Wincom und such die Datei style im css verzeichnis. Sollte es die noch nicht geben, leg eine an. Im Dreamwaever kannst du dann ganz normal deinen Objekten Styles zu ordnen.

Sag Bescheid, wenn ichs zu kompliziert erklärt hab.

Grüße :roll:

Super!!

Verfasst: Fr 5. Dez 2003, 15:20
von Niko7
Hallo,

vielen Dank!!!!

Hat wunderbar funktioniert.

Habe mein css und noch ein mousover eingebaut :lol:

Noch einmal Danke
Niko

Verfasst: Fr 5. Dez 2003, 15:23
von locke
Immer wieder gern. Bringt mir auch was. So verstehe ich dann auch einiges, was ich noch nicht wusste. :oops:

Meld dich ruhig wenn was ist.
Bis dann :wink: