WebsiteBaker Support (2.8.x) > Diskussion über WB (closed)
Zusätzliche Felder unter Seitenoptionen
WebBird:
Finde ich gut. :-)
Ansonsten wäre es noch schön, wenn man alle Attribute belegen könnte, die per W3C-Standard für Links vorgesehen sind. Manche sind vielleicht weniger wichtig (etwa die verwendete Sprache des Verweisziels, wird eher wenig genutzt), andere schon eher (wie "accesskey").
Ich habe das bei EasyMenu eingebaut; die Liste der erlaubten Attribute sowie deren Inhalte (sofern fest vorgegeben, etwa bei "shape" oder "type") ist extern definiert, so daß Anpassungen (falls sich der Standard ändert) ein Kinderspiel sind. Das Formular wird dann automatisch anhand der externen Definition generiert. (Das mache ich bei Optionen sehr gerne so, weil man nur einmal den Generator schreiben und bei neuen Feldern später nur die Definition ergänzen muß, schon paßt sich alles andere automatisch an.)
Man kann übrigens so auch auf sehr einfache Weise beliebig viele, auch benutzerdefinierte, Felder vorsehen. Man speichert die Optionen nicht "flach" in der Datenbank, also ein Set Optionen = eine Zeile in der Tabelle, sondern "vertikal".
Beispiel:
Spalten - id, attribute, value
"id" ist einfach eine fortlaufende Nummer und kann sicherlich auch weggelassen werden, ich habe aber immer gern ein autoincrement-Feld.
"attribute" ist der Name des Attributs. (Klar.)
"value" ist der Wert des Attributs. (Auch klar.)
Wenn man sich nun später überlegt, daß man ein neues Attribut braucht, geht man folgendermaßen vor:
* Definition in Definitionsdatei eintragen (Name des Attributs, Typ des Wertes (z. B. Text oder Zahl), mögliche Wertevorgaben zur Erzeugung eines Dropdown)
* Verwendung des Attributes an passender Stelle umsetzen.
Fertig! Ernsthaft, das ist alles! Der Formulargenerator erzeugt anhand der Definition das Eingabefeld, die Funktion für die Pflege der Attribute in der Datenbank nimmt einfach die Eingabedaten und schreibt sie in die DB, man muß sonst nichts ändern. Nur die Verwendung des neuen Attributes läßt sich halt nicht automatisieren.
Wäre vielleicht langfristig ein Ansatz für den WB-Core. (Das Vorgehen habe ich selbst ja auch für Admin-Backends erarbeitet, ursprünglich in Perl, daher ist meine Umsetzung in PHP noch nicht 100% ausgegoren, ich müßte mich halt mal hinsetzen und das mit PEAR-Klassen unterfüttern.)
WebBird:
"...die Funktion für die Pflege der Attribute in der Datenbank nimmt einfach die Eingabedaten und schreibt sie in die DB..."
Das wollte ich sicherheitshalber noch sagen: In EasyMenu ist ein erster Entwurf eines Formulardaten-Validators enthalten, der auf PEAR::Validate basiert. Man gibt vor, welche Attribute man erwartet und welchen Inhaltstyp diese haben dürfen. Man kann auch eine vorgegebene Werteliste (für Dropdownfelder) vorgeben, so daß nur Werte aus dieser Liste erlaubt sind. Wen's interessiert, kann ja mal in die Validator-Klasse in EM und die init.php gucken.
Die Werte werden also nicht "blind" in die DB geschrieben. :wink:
Luisehahne:
Hallo,
@FrankH
Jau mit den zusätzlichen Feldern haste recht. First come, First serve. Danke, Vorschlag gestrichen. Das 2 Feld für den Umschalter ist einfach für die Sprachenfestlegung gedacht, als Trail, z.B. DE,EN,FR,NL usw. ich arbeite in meiner Version insoweit damit, das ich die anderssprachigen Seiten in der Seiteneinstellung die Sprache zuordne, über GROUP BY feststelle wieviele Sprachen vorhanden sind, ein Trailarray erstelle und so in einer Schleife das Gegenstück suche. Meine nur aus Geschwindigkeitsgrü nden, das fest zu hinterlegen wäre besser. Gut könnte auch wegfallen. Ich muss mir mal deine Lösung anschauen. Was ist bei dir mit der Seitenstruktur? Bei mir kann sie wild durcheinander sein. Ich brauche halt nur das zusätzliche Schlagwortfeld, da ich im Moment den PAGE_TITLE dazu missbrauche und das sieht eben nicht hübsch aus. Fazit: Man nehme 3 Lösungen, einigit sich, nimmt das beste aus jeder und das Ergebnis ist 100%ig.
susigross:
--- Quote from: Luisehahne on June 05, 2009, 12:47:32 PM ---Ich muss mir mal deine Lösung anschauen. Was ist bei dir mit der Seitenstruktur? Bei mir kann sie wild durcheinander sein.
--- End quote ---
Seitenstruktur ist bei mir auch egal. Ich muss dazu auch nichts misbrauchen.
So das wird hier OT, ich äußere mich in diesem Thread nicht mehr weiter dazu.
Stefek:
Hallo.
Na, das stößt schn mal auf Interesse.
Ich habe einen "Screenshot" ausgearbeitet, um die Idee auch den anderen, die sich auf all das hier wenig Reim machen können, zu visualisieren.
Das mit Access-Key habe ich nicht mit reingetan - nicht, dass es nicht interessant ist: ich muss einfach zugeben, dass ich davon nicht viel weiß, WebBird :-) Aber ein willkommenes Feature, wie ich bereits bei Deiner EasyMenu Entwicklung mitverfolgen konnte.
Visualisierung:
Die grün hervorgehobenen Felder sind bereits über =>backend=>Optionen zuschaltbar.
Die rot hervorgehobenen sind die, über die wir sprechen
Zu den einzelnen Punkten:
1) ist klar - bereits vorhanden. Man kann es einfach zuschalten über =>backend=>Optionen
2) Frank, Dietmar - der Zusatz für die Seitensprachen
3) Die besagten Custom Fields, frei benennbar wäre sicher gut. Man könnte als Admin auswählen, wo man es ins Template tut; in den Head oder in den Body
4) Alt-Title soll heißen, ein Alternativer Titel. Den könnte man sicherlich ins ShowMenu2 implantieren (aber auch anderweitig im Template ausgeben lassen, z.B.für Headings (H1, H2...) . Damit kann man einige gute Vorteile schaffen, wie z.B. ein XHTML Menü mit folgendem Muster:
<li><a href="[ url ]" title="[alt]">[menu_title]<a></li> (Bringt halt Vorteile bei der Seitenoptimierung. Der Rote Teil ist gutes Futter für Google. Wird bei vielen modernen CMS berücksichtigt.)
5) Abweichende URL - manchmal will man aus bestimmten Gründen eine abweichende URL haben.
6)Kanonische URL - mit der Zeit gehen wirkt auch mal sexy ;-)
Die kleinen Kästchen bei einigen der Felder sind Character-Counter - die werden über JS gezählt, keine Datenbankabfrage nötig - Bernd JM hat dies bereits ausgearbeitet. Das ist wertvoll für Leute, die auf SEO großen Wert legen, wo es manchmal auf die Genauigkeit der Anzahl der "Zeichen" ankommt.
Bitte keine Argumente wie: das ist doch viel zu viel für "Otto". Ja, ist es. Deswegen _zuschaltbar. Wer sich das zuschaltet, weiß, was er tut. Auch bei Punkt 5.
Dieses Argument hebt sich also von selbst auf.
Viele Grüße.
Christian (Stefek)
EDIT// Bei Pkt 6 ist das mit der Extension zuviel. Denkt Euch eine der beiden Extensions weg (entweder die im Textfeld oder die außerhalb davon).
[gelöscht durch Administrator]
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version