WebsiteBaker Community Forum
WebsiteBaker Support (2.12.x) => General Help & Support =>
Hilfe & Support (deutsch) => Topic started by: isd on February 13, 2020, 03:00:01 PM
-
Ich habe eine (relativ alte) WebsiteBaker Version auf die Version 2.12.2 gebracht. Es funktioniert soweit alles. Auch die Menüs werden angezeigt.
Es gibt ein Hauptmenü und bei manchen Unterseiten noch ein zusaätzliches Menü auf der rechten Seite.
Auch diese Menüs werden angezeigt und funktionieren fehlerfrei.
Das Seitenmenü verursacht jedoch immer folgenden Fehler im Errorlog:
show_menu2 error: $aOptions is invalid. No flags supplied!
Und so sieht der Aufruf aus:
show_menu2(1, 6, SM2_CURR+1, false, '<li><a href="[url]?id=[page_id]" target="[target]" class="[class]">[menu_title]</a>', "\n</li>", false, false, false, '<ul id="side_menu" class="menu">');
Ich blick den Fehler nicht. Was mache ich noch falsch.
Kann mir einer einen Tipp geben?
-
Hallo, showmenu erwartet an der 4. Stelle etwas anderes als: false
Tausche
show_menu2(1, 6, SM2_CURR+1, false, ...
gegen
show_menu2(1, 6, SM2_CURR+1, SM2_ALL, ...
-
Bringt keine Änderung - selber Fehler im Log.
-
Dann hast du noch einen showmenu Aufruf im Template.
Bestimmt im Footer.
-
Es gibt den besagten Menüaufruf für die rechte Seite wie oben angegebeen und zusätzlich noch den Menüaufruf für das horizontale Hauptmenü:
show_menu2(0, SM2_ROOT+1, SM2_START+0, SM2_ALL, false, "\n</li>", false, false, false, '<ul id="header_menu" class="menu">');
-
War das false vorher schon da? Also
show_menu2(0, SM2_ROOT+1, SM2_START+0, false, false, "\n</li>",
Wenn nein, muss es weg.
show_menu2(0, SM2_ROOT+1, SM2_START+0, SM2_ALL, "\n</li>",
-
Ja war vorher schon da.
Wenn ich es weg machen erscheint das ganze Menü nicht mehr.
-
Lass das Hauptmenü wie es war. Es geht also nur um das erste von dir gepostete Menü.
Die Lösung dafür hast du bekommen.
Wenn trotzdem Fehlermeldungen kommen, dann gibt es noch ein Menü irgendwo oder du hast was falsch gemacht.
Zeig mal.
-
Wenn trotzdem Fehlermeldungen kommen, dann gibt es noch ein Menü irgendwo oder du hast was falsch gemacht.
Zeig mal.
Was denn? Die ganze index.php des Templates?
-
Ja, somit können wir die ZUsammenhänge im ganzen sehen.
Von mir aus auch als pm an dbs, wenn du es nicht öffentlich machen willst.
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<?php simplepagehead(); ?>
<!-- <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> -->
<link href="<?php echo TEMPLATE_DIR; ?>/screen.css" rel="stylesheet" type="text/css" media="screen" />
<link href="<?php echo TEMPLATE_DIR; ?>/print.css" rel="stylesheet" type="text/css" media="print" />
<?php
// this allows to include the optional module files (frontend.css, frontend.js) into the head section
if(function_exists('register_frontend_modfiles')) {
register_frontend_modfiles('css');
register_frontend_modfiles('jquery');
register_frontend_modfiles('js');
}
?>
<?php
// this allows to add custom information to the head section of your template (WB-->Settings-->Website Header)
echo WEBSITE_HEADER;
?>
</head>
<body>
<div class="main">
<div class="header_print"><img align="middle" src="<?php echo TEMPLATE_DIR; ?>/images/header_print.jpg" border="0"></div>
<div class="header"><img align="middle" src="<?php echo TEMPLATE_DIR; ?>/images/header.png" border="0">
</div><!-- end header -->
<?php
// Only show menu items if we are supposed to
if(SHOW_MENU) {
?>
<div id="navContainer">
<div id="nav" class="clearfix">
<?php
show_menu2(0, SM2_ROOT+1, SM2_START+0, SM2_ALL, false, "\n</li>", false, false, false, '<ul id="header_menu" class="menu">');
?>
</div><!-- end nav -->
<!-- Language-Flags ausgeben - strtolower(LANGUAGE) -->
<div id="language_select">
<?php
echo "<a href=\"" .WB_URL . "/pages/de/news.php\">deutsch</a><br />";
echo "<a href=\"" .WB_URL . "/pages/en/news.php\">english</a>";
?>
</div><!-- end LanguageFlags -->
</div><!-- end navContainer -->
<?php } ?>
<div id="contentContainer">
<?php ob_start();
page_content(2);
$content2=ob_get_contents();
ob_end_clean();
?>
<?php if ($content2<>"") { ?>
<div class="sideColumn">
<?php
// Pressemenü für deutsche Seite anhand Page-ID
if (strtolower(LANGUAGE)=="de") {
show_menu2(1, 6, SM2_CURR+1, SM2_ALL, '<li><a href="[url]?id=[page_id]" target="[target]" class="[class]">[menu_title]</a>', "\n</li>", false, false, false, '<ul id="side_menu" class="menu">');
}
// Pressemenü für englische Seite anhand Page-ID
if (strtolower(LANGUAGE)=="en") {
show_menu2(1, 136, SM2_CURR+1, false, '<li><a href="[url]?id=[page_id]" target="[target]" class="[class]">[menu_title]</a>', "\n</li>", false, false, false, '<ul id="side_menu" class="menu">'); }
?>
<?php echo page_content(2); ?></div>
<div class="content"><?php echo page_content(1); ?></div>
<?php } else { ?>
<div class="contentfull"><?php echo page_content(1); ?></div>
<?php } ?>
</div><!-- end contentContainer -->
<div class="footer" class="clearfix">
<div class="baker_footer">
<?php page_footer(); ?><br /><a href="<?php echo WB_URL; ?>/pages/de/impressum.php">Datenschutzerklärung & Impressum</a>
</div><!-- end baker_footer -->
<div class="footer_community">
</div><!-- end footer_community -->
</div><!-- end footer -->
</div><!-- end main -->
</body>
</html>
-
Wann wolltest du von dem 3. Menüaufruf erzählen?
show_menu2(1, 136, SM2_CURR+1, false, ...
Hier musst du natürlich auch das false ersetzen wie in dem darüber.
-
Ja, das "false" hab ich da natürlich auch ersetzt. Ich hatte die alte Version kopiert.
Es sieht also so aus:
<?php
// Pressemenü für deutsche Seite anhand Page-ID
if (strtolower(LANGUAGE)=="de") {
show_menu2(1, 6, SM2_CURR+1, SM2_ALL, '<li><a href="[url]?id=[page_id]" target="[target]" class="[class]">[menu_title]</a>', "\n</li>", false, false, false, '<ul id="side_menu" class="menu">');
}
// Pressemenü für englische Seite anhand Page-ID
if (strtolower(LANGUAGE)=="en") {
show_menu2(1, 136, SM2_CURR+1, SM2_ALL, '<li><a href="[url]?id=[page_id]" target="[target]" class="[class]">[menu_title]</a>', "\n</li>", false, false, false, '<ul id="side_menu" class="menu">'); }
?>
Trotzdem erscheint beim Aufruf der Seite auf der dieses zusätzliche Menü auf der rechten Seite eingebunden ist immer dieser Fehler im Log:
[14-Feb-2020 14:22:42 UTC] show_menu2 error: $aOptions is invalid. No flags supplied!
[14-Feb-2020 14:22:43 UTC] show_menu2 error: $aOptions is invalid. No flags supplied!"
-
Ich habe eine (relativ alte) WebsiteBaker Version auf die Version 2.12.2 gebracht. Es funktioniert soweit alles. Auch die Menüs werden angezeigt.
....
Wo ich das gerade im 1. Post noch mal lese, von welcher Version hast du wie das Upgrade gemacht?
Hatte da gerade einen Fall aus Trumpland.
Ein Link zur Seite ist für uns Helfer auch immer hilfreich. :wink:
-
Hier noch eine Erklärung die ich gerade bekommen habe, Danke für die Hilfe (Y)
der vierte Parameter im Show_Menu2 MUSS einen dieser Werte enthalten
SM2_ALL oder
SM2_TRIM oder
SM2_CRUMB oder
SM2_SIBLING
aber nicht false (das ist nur ab Parameter 5 erlaubt)
siehe Readme zum Modul - Abschnitt $aOptions
.......
GROUP 1
-------
Aus dieser Gruppe muss stets genau ein Flag angegeben werden.
-
Das Upgrade erfolgte von Version 2.8.2 auf 2.8.3 und dann auf die 2.12
-
Du könntest mal die drei show_menu2 Aufrufe kurzzeitig auskommentieren.
Also jeweils ein Doppelslash davor setzen //show_menu2(...
Dann sind die Menüs zwar deaktiviert. aber man weiß dann definitiv, dass es an einem von beiden liegt und nicht doch noch ein weiteres irgendwo reinspielt. Jedenfalls, wenn dann keine neuen Meldungen auftauchen.
-
Ja, wenn nur das Hauptmenü drin ist und die beiden rechten Menüs auskommentiert sind funktioniert alles.
Sobald ich das rechte Menü mit rein nehem kommen die Fehler.
-
Ich hab das eben mal durchgespielt und es kommen keine Meldungen.
Vielleicht kannst du uns nochmal deine beiden Menüaufrufe für de und en zeigen.
Aber die, die du jetzt gerade wirklich verwendest.
-
@dbs: Danke!!!
.... und Sorry. Ich Dödel, hatte ein eigenes Template für die Seite mit den Pressemeldungen angelegt. Dort rein habe ich nun den mit deiner Hilfe korrigierten show_menu2 Aufruf reinkopiert. Und siehe da..... keine Fehler!