Frage an Plugin-Entwickler: Optionen extra oder in Array speichern

  • Wie im Titel schon angedeutet, wie macht Ihr das mit den Optionen oder gibt es sogar eine empfohlene Vorgehensweise?
    Ich könnte je meine Optionen, also z.B. ja/nein- oder Auswahlwerte jeweils extra per add/get/update_option verwalten, was dann jeweils einen Datenbankeintrag pro Option ergeben würde.
    Oder ich verwalte die die Werte selbst in einem array und lade und speichere alles in "einem Rutsch".
    Was hätten die Methoden für Vor- oder Nachteile, die ich als Anfänger eventuell noch nicht überblicke?

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Die Array-Methode ist wohl vorzuziehen: Auch wenn derart simple Datenbankabfragen nicht viel Last erzeugen, so erzeugen sie doch Last. Mit einem Array kommt das eben nur einmal pro Aufruf vor.

    Ferner muss man sich keine Gedanken über verwaiste Optionen machen, sollte das Plugin mal ein Update erfahren oder ähnliches. Und man hat immer alle Optionen zur Hand. Das kann jetzt gut oder schlecht sein, je nachdem wieviele man insgesamt hat und wieviele man für die entsprechende Funktion/Klasse/etc. gerade braucht.

    Gruß Jeriko

    Jeriko - Design, Style, Photographie

  • Die Frage ist, ob die Optionen flüchtig oder nicht-flüchtig sind.
    Bei ersteren ist logischerweise das Array besser, da man die DB in Ruhe lässt. Bei nichtflüchtigen kann man add_option() verwenden und die Parameter als String speichern, den man mit implode/explode konvertiert.

    Ansonsten wäre es evtl. hilfreich, etwas mehr über die Art der Parameter zu erfahren.

  • Die Frage ist, ob die Optionen flüchtig oder nicht-flüchtig sind.

    Hm ist das denn wichtig? Selbst dann kann man doch ein Array als Option in der Datenbank ablegen, auf das man pro Aufruf ja nur einmal zugreifen muss. Ob nun mit implode/explode, oder eben als richtiges Array ist dabei doch egal :)

    Gruß Jeriko

    Jeriko - Design, Style, Photographie

  • Klar, ich meinte mit implode/explode nur, dass man nicht für jedes Element des Arrays eine neue DB-Zeile braucht (man kann das Array ja nicht als solches speichern), sondern auch ggf. mit einer Zeile auskommt.

  • Besten Dank für Eure Hinweise.

    Um nochmal den Hintergrund meiner Frage zu erläutern, ja, es geht mir um nicht-flüchtige Optionen.
    Tja, und im Moment speichere ich schon zwei Stringlisten als Optionen persistent mittels der entsprechenden WP-Funktionen in der Options-Tabelle.
    Nun kommt erstmal eine einfache Checkbox hinzu.

    Da ich aber vermute, das später auch noch weitere Optionen dazukommen könnten, bin ich nun doch den Weg gegangen, die Optionen lokal in einem Array zu halten, und dann komplett in einer weiteren Option zu speichern.
    Erfreulicherweise braucht man sich um das Zusammenfügen und Zerlegen des Arrays nicht selbst zu kümmern. 'update_option' nimmt ja klaglos ein array entgegen, und 'get_option' stellt es auch brav wieder im Ooriginalzustand her. Feine Sache das.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!