WBCE CMS – Way Better Content Editing.
You are not logged in.
Pages: 1
Creating Version 3 is another good option. But please do a class based one.
Default for sh2 is :
function show_menu2(
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM,
$aItemOpen = '[li][a][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = false
)
If you just need to change one of the alst options you have to write all other optios too, plus you need to know all other options.
show_menu2(
$aMenu = 0,
$aStart = SM2_ROOT,
$aMaxLevel = SM2_CURR+1,
$aOptions = SM2_TRIM,
$aItemOpen = '[li][a][menu_title]</a>',
$aItemClose = '</li>',
$aMenuOpen = '[ul]',
$aMenuClose = '</ul>',
$aTopItemOpen = false,
$aTopMenuOpen = true
)
in a Class based enviroment you simply write :
$myMenu= new showMemu3($menuId=2);
$myMenu->TopMenuOpen=false;
$myMenu->display(); // displays menu
or maybe
$var= $myMenu->return() // returns Menu as value
This is much more comfortable in complex menus... maybe add aomething more statidc for simple ones or maybe even add some presets.
$myMenu= new showMemu3(2, "presetname"); //This instantly renders the menu.
Maybe we even use a wrapper function for simple tasks , but for complex settings the class solution is the only way to maintain at least some readability.
Last edited by norhei (28.08.2015 15:11:52)
Offline
Ich hab das mal hierher verschoben, im anderen Thread geht es ja um die konkreten Änderungen an SM2.
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Hi, statt Klasse ginge auch ein Configarray wie z.B. In Anynews.
Account inactive since 2018/11/17.
Offline
Also erstmal ist show_menu2 sowieso schon ein Mix aus Funktion und Klasse, des weiteren ist eine Funktion leider nicht mit einem Autoloader zu laden.
Wenn das Dingen mal jemand an seine Bedürfnisse anpassen möchte , kann man bei einer Klasse vererben , bei Funktionen ... Sendepause , alles neu.
Das zerlegen in einzelne übersichtliche Funktionsabschnitte ... mit Funktionen ... mal wieder 20 Funktionen mehr im Namensraum , mit Klasse alle hübsch gekapselt , und stört niemand.... Ach man die Vorteile sind endlos....
Hast aber recht das wir möglicherweise um eine Statische Funktion nicht drumrum kommen.
Sowas wie:
show::Menu3($configarray);
Dann kann es jeder Halten wie er mag.
Offline
@norhei: Mir brauchst Du den Vorteil einer Klasse nicht erklären. Ging nur um das vorige Beispiel mit den vielen Optionen. Das geht auch über Configarrays
Account inactive since 2018/11/17.
Offline
Hast trotzdem recht , können uns nicht auf die Einfacheit und niederigen einstiegshürden einen Einbilden , und dann OOP erzwingen.
Und so perfekte Objekte wie in meinem Zweit CMS haben wir nicht, und auch da ist die Einstiegshürde doch noch ein Stück höher.
Habe aber auch schon Klassen genau so so gebaut , ist Ansich eine gute Idee , und praktisch kein mehraufwand.
einer der Wahlsprüche von WB war ja mal "Weil einfach, einfach einfach ist"
Offline
einer der Wahlsprüche von WB war ja mal "Weil einfach, einfach einfach ist"
Nee, das war ein Mobilfunker, aber die Aussage stimmt natürlich trotzdem, deshalb ja auch mein Traum von einem Navigationserzeugeadmintool.
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Das ist wie in Linux, erst ein einfacher gut funktionierender Unterbau, und dann nur noch ein Frontend dafür bauen oder wie beim Miniform ein Generator.
Hab vorhin noch festgestellt
SM2 mach noch viel zu viel in PHP, vieles könnte die DB machen, die ist schließlich in C programmiert.(viiiieel schneller)
Und SM2 hat eine legacy Funktion für SM1, die sollten wir mal testen , eventuell kann dann SM1 aus dem Core schon mal raus.
Offline
Pages: 1