Übergabe dynamischer Optionen vom Backend an das Frontend

Ich habe eine AdminOptionen-Seite erstellt (mit dem Redux Theme Framework), in der der Administrator das Erscheinungsbild der Website anpassen kann (Textfarbe, Hintergrundfarbe, Hintergrund-Wiederholungsoptionen, etc ..).

Nehmen wir an, ich möchte meinem Benutzer die Möglichkeit geben, einen benutzerdefinierten Hintergrund für einen Abschnitt festzulegen. Admin-Seite, ich habe ein Medien-Uploader-Formular (eindeutige ID: my_div_background_url).

Im Frontend kann ich diese Option abrufen und sie dann wie folgt wiedergeben:

<?php $options = get_option('my_theme'); $section_background_url = $options['div_background_url']; echo '
'; ?>

Meine Frage ist: Ist das der richtige und beste Weg dies zu tun? Wäre es nicht besser, wenn alle meine Optionen in einer CSS-Datei gespeichert würden, wenn der Administrator sie ändert und diese Datei dann in meine Website aufgenommen wird? Oder gibt es andere Methoden?

Solutions Collecting From Web of "Übergabe dynamischer Optionen vom Backend an das Frontend"

Standardmäßig werden Optionen automatisch geladen. Also alle Optionen mit autoload: yes werden sehr früh abgerufen. Ihre Option wird keine zusätzliche Abfrage benötigen.

Außerdem ist der databasezugriff oft schneller und zuverlässiger als der Dateizugriff. Die Optionstabelle ist normalerweise auch in databasesicherungen enthalten und kann in mehreren Formaten exportiert werden. Also bleib bei den Optionen.

Was Sie tun sollten: Entkommen Sie der URL. Es könnte kompromittiert worden sein, also …

 if ( ! empty ( $options['div_background_url'] ) { $section_background_url = esc_url( $options['div_background_url'] ); echo "
"; }

Sie können die benutzerdefinierten Stile in ein Stilelement im Kopfelement verschieben.