WebsiteBaker Community Forum
WebsiteBaker Support (2.10.x) => General Help & Support =>
Hilfe & Support (deutsch) => Topic started by: evaki on October 20, 2017, 10:19:03 PM
-
Betriebsblind, krank -nee war gerade- oder schlimmer (Leseschwäche)?
<ul class="menu-top"><li class="menu-current menu-first menu-last"><a href="http://localhost" target="_top" title="">Test-Menütitel</a></li></ul>
Dat Dingens bekomm ich nich wech, bzw. [menu_title] wird da nich reingekloppt.
MfG. Evaki
-
du machst viel mit xhtml, hast du da ggf ein Flag für gesetzt? (SM2_XHTML_STRICT). Falls JA, das setzt den title automatisch, ließe ihn leer, wenn zusätzlich die Option SM2_NO_TITLE gesetzt wurde und soll befüllt werden mit dem Wert tooltip, der aber nicht mehr verwendet wird
und das alles nur, wenn im Show_Menu2-Aufruf [ac] verwendet wurde.
Verwendet man [a] oder gar normales html, sollte [menu_title] funktionieren.
Sollte das keine Hilfe sein, bitte mal den Show-Menüaufruf posten
-
<?php
show_menu2(
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM,
$aItemOpen = '[li][ac][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = false
)
?>
Ergebnis:
<ul class="menu-top"><li class="menu-current menu-first menu-last"><a href="http://localhost" class="menu-current menu-first menu-last" target="_top" title="">Test-Menütitel</a></li></ul>
<?php
show_menu2(
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM|SM2_XHTML_STRICT|SM2_NO_TITLE,
$aItemOpen = '[li][ac][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = false
)
?>
Ergebnis:
<ul class="menu-top"><li class="menu-current menu-first menu-last"><a href="http://localhost" class="menu-current menu-first menu-last" title=" ">Test-Menütitel</a></li></ul>
Das mit der ersten Nachricht gelieferte Ergebnis war ein minimal anderer Aufruf mit [a]und [ac][menu_title]</a>', mit und ohne SM2_XHTML_STRICT, aber ohne SM2_NO_TITLE. Irgendwo muß ich was verpennt haben.
show_menu2(
$aMenu = 1,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_ALL,
$aOptions = SM2_ALL|SM2_XHTML_STRICT,
$aItemOpen = '<li[if(class==menu-current){ class="current"}]>[a][menu_title]</a>',
// $aItemOpen = '<li>[ac][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '<ul>',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = '<ul class="top-menu" id="main-navigation">');
Und ja, im konkreten Fall brauche ich es tatsächlich für Xhtml5.
Komisch nur, daß mir das bei abgelaufenen Tests nicht aufgefallen ist. Hoffentlich ists nicht wieder sowas hausgemachtes :roll: Werde auch mal einen der alten Tests wiederholen, mal schauen wo der Unterschied liegt, im Aufruf oder in der Testanordnung.
MfG. Evaki
-
Hab kurz nochmal gescheckt.
Beanstandet wird es "nur" wg.
[WCAG2 2.4.4/2.4.9 (A/AAA)] Is the 'title' text deliberately empty?:
Dein Tip mit SM2_NO_TITLE hats anscheinend gelöst!
Es befindet sich jetzt zwar nur ein drin, stellt aber den Validator zufrieden!
Ob das nun die optimale Lösung im Sinne von WCAG ist, hab ich mir jetzt nicht angeschaut -weniger ist ja manchmal mehr :-) Jedenfalls erstmal ein Problem weniger.
Danke.
MfG. Evaki
-
passt doch ;-)
die include.php macht, was an Code drin steht :-D
Code #1 - $aItemOpen = '[li][ac]
- ac bedeutet: a-link plus css-Klasse
ohne weitere Flags soll hier der tooltip aus der pages-Tabelle eingesetzt werden, der aber in WB 2.8.3 und WB 2.10.x nicht belegt ist. Es erscheint also kein Wert im title. Der Code der include stammt wohl von der 2.8.4
Code #2 - $aItemOpen = '[li][ac
+ optionale Flags SM2_XHTML_STRICT|SM2_NO_TITLE
SM2_XHTML_STRICT und SM2_NO_TITLE setzt ein Leerzeichen, weil noch weitere Flags vermutet werden, Ergebnis -> title=" "
nur SM2_XHTML_STRICT wäre wieder der Tooltip (siehe oben)
nur SM2_NO_TITLE - dann wird title nicht gesetzt
einfachste Lösung wäre, in der include.php vom Show_Menu2 $this->page['tooltip'] mit $this->page['page_title'] oder $this->page['menu_title'] zu ersetzen, was man halt braucht
Nachteil: ist das beim nächsten Upgrade nicht repariert, wird es wieder überschrieben
unabhängiger ist man z.b. mit Code ähnlich diesem
$aItemOpen = '[li]<a href="[url]" class="[class] title="[menu_title]">[menu_title]</a>',
oder halt anpassen, wie du es brauchst, nur halt nicht die vordefinierte Variante mit [ac] verwenden
-
Nee, am Core schnippel ich nicht rum, wenns nicht zwingend ist, und hier scheints ja zu genügen.
Vielleicht wird SM2 ja irgendwann noch mal überarbeitet, um derartige Feinheiten mit zu berücksichtigen.
MfG. Evaki
-
Vielleicht wird SM2 ja irgendwann noch mal überarbeitet, um derartige Feinheiten mit zu berücksichtigen.
das sind keine Feinheiten, das sind Fehler :|
es gibt wohl Tickets zum show_menu2, dieser war noch nicht dabei, habe ihn mal angelegt
-
die Flags SM2_XHTML_STRICT und SM2_NO_TITLE hab ich selbst damals eingebaut. Grund dafür waren die speziellen Sonderwünsche einzelner Community - Mitglieder, die einen Aufstand anzettelten, weil das für die ein "lebensnotwendiges Feature" war. Eine normale, vollständige Formatangabe ohne [a] / [ac] hätte das Problem auch lösen können... aber das war zu 'unbequem'.
SM2_XHTML_STRICT war also das erste, neue Flag und es erzwingt u.A. die Ausgabe des 'title'-Attributes wie in W3C für XHTML vorgegeben.
Umgehend brach wiederum ein Shitstorm los, weil sich jetzt einige von dem natürlich immer auftauchenden Tooltip gestört fühlten.
Logische Folge war also das Flag SM2_NO_TITLE, um den Tooltip wenigstens 'unsichtbar' zu machen..
Heute würde ich mich nicht mehr auf solches Theater einlassen.. sondern schlicht und einfach die [a] und [ac] Flags entfernen, damit jeder sein Lieblingsformat umweltfreundilch zu Fuß angeben könnte. :evil:
Lg, Manuela
-
schöner Text - ändert nichts daran, das mit $this->page['tooltip'] ein in WB 2.10.x unbenutzter Wert verwendet wird
-
ist wie mit meinem Auto... da liegen serienmäßig Kabel und Stecker für den Tempomat im Lenksäulenkabelbaum . Sogar die Sicherung ist schon da.. nur den Tempomatschalter selbst, den baut der freundliche Händler nur auf Sonderwunsch gegen Rechnung ein...
Weshalb soll dann bei uns nichts, vorbereitend auf spätere Features, eingebaut sein?
-
Man könnte einfach sagen, wir korrigieren das und gut ist. Und für das mögliche Feauture schreiben wir es wieder um, wenn es soweit ist. Dann funktioniert es in beiden Fällen und nicht erst 2020, aber ich sehe schon, du willst es nicht verstehen, lassen wir es gut sein
-
Das zuletzt geprüfte
<?php
show_menu2(
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM|SM2_XHTML_STRICT|SM2_NO_TITLE,
$aItemOpen = '[li][a][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = false
)
?>
hatte zwar gewonnen (WCAG) :-D
Doch der soeben wiederholte Test zeigt dann auf einer zusätzlichen Console die Ausgabe leider einen XML-Verarbeitungsfehler. Zu früh gefreut. Bedeutet wohl, daß ich mir was "zu Fuß" im Aufruf basteln muß?
MfG. Evaki
-
siehe Antwort der Chefin....
Toller vergleich mit dem Tempomaten, der aber etwas hinkt. Das aktuelle Steuergerät würde erst prüfen, ob dieser verbaut ist, das läuft mit Impulse über den sogenannten Bulb-Test, ein Check für Glühbirnen und Sensoren nach Einschalten der Zündung. Ein signal wird los geschickt, kommt es über die Rückleitung zurück, wird dieser Strang ins System eingebunden und erst dann gäbe es auch im Falle eines Falles eine Funktionsstörungsme ldung.
Auf das Show_menü umgesetzt hieße es, abfragen, ob leer oder nicht, dann tooltip oder menu_title
wie gesagt, kann man drauf eingehen, muß man als Chefin aber auch nicht
-
Mit
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM,
$aItemOpen = '[li]<a href="[url]" class="[class]" title="[menu_title]">[menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = false
ist es dann wohl erledigt. Zumindest die eben absolvierten Überprüfungen, egal ob wcag oder xml, brachten keine Fehlermeldung mehr. Wenn ich mich dadurch weiter auf das Xhtml5-Geraffel + Anhang konzentrieren kann, solls das erstmal gewesen sein.
Im Quellcode siehts jetzt auch wie ursprünglich erwartet/gewünscht aus (Y)
Hoffe nun, daß nicht irgendwer noch hinterm Ofen lauert.
MfG. Evaki
-
Hoffe nun, daß nicht irgendwer noch hinterm Ofen lauert.
nein, damit nicht
Diese Lösung ist eine anerkannte und auch viel verwendete Methode. [a] und [ac] stammen aus älterer Zeit und wurden auch in fast jedem der alten Templates verwendet und deswegen wohl auch zum Zwecke der Abwärtskompatiblitä t "mitgeschleppt", wie so vieles.
Und weil diese Methode (deine aktuelle Lösung) so oft im Einsatz ist, hat sich wohl noch keiner über den Fehler beschwert.
-
>>[a] und [ac] stammen aus älterer Zeit
<ironie>Deshalb sind die wohl im default template mit drin, oder ist das schon Vintage? </ironie>
<ul><li><span class="menu-default"><a href="http://localhost" class="menu-0 menu-current menu-first menu-last" target="_top" title="">Test-Menütitel</a></span></li></ul>
Auch hier prompt die WCAG-Mahnung (eine von anderen).
Ist nicht immer leicht den Core von html-trouble fernzuhalten.
MfG. Evaki
p.s. Ich liebe html5-Seite, wo html5 draufsteht, aber DIV-Wüsten wie in alten Zeiten reingekloppt werden, und von Semantik keine Spur zu sehen ist...
-
@evaki
evt. ein kleiner Tip.
So wie Du es jetzt hast ist es ok...
Etwas 'komfortabler' könnte sein, title=[page_title] zu verwenden. Dann wird im Link der kurze, prägnante Menütitel und im Tooltip der evt. ausführlichere Seitentitel angezeigt. Denn 2x die gleiche Anzeige macht irgendwie keinen so großen Sinn (meine ganz persönliche Meinung).
Ist nicht immer leicht den Core von html-trouble fernzuhalten.
Womit ich dir 100% recht gebe.. ;)
Allerdings hab ich schon jede Menge Mörtel angerührt, um zwischen PHP und HTML eine dicke Mauer hochzuziehen, mit einer kleinen Klappe zur Fütteru... ähm. Datenübergabe.
-
>>macht irgendwie keinen so großen Sinn...
Jetzt, wo Du's sagst. Der Trouble hob ja erstmal auf den bestehenden [menu_title] ab, so daß noch keine Zeit blieb auf sonstige Logik zu werfen.
MfG. Evaki