it-swarm.com.de

Möglichkeiten, mehrere front-page.php-Vorlagen zu haben, die ausgetauscht werden können?

Ich möchte im Wesentlichen mehrere verschiedene front-page.php-Vorlagen mit unterschiedlichen Loops und Layouts erstellen und dann im Admin-Bereich eine Option anzeigen, um eine Vorlage an einem Tag und eine andere Vorlage an einem anderen Tag auszuwählen.

Ich nehme an, Sie können dies tun, indem Sie Wordpress zum Narren halten und eine statische Seite als Startseite auswählen und im Seitenbearbeitungsbildschirm eine benutzerdefinierte Seitenvorlage auswählen, die in Wirklichkeit keine "statische" Seite ist, sondern eine Seite mit einer vollständigen loop - eine der verschiedenen benutzerdefinierten Seitenvorlagen, für die meine front-page.php-Optionen gewesen wären .

Eine andere Möglichkeit wäre, alle meine Schleifen und benutzerdefinierten Layouts in if-Anweisungen in der einen front-page.php einzufügen und Optionen zu präsentieren, die jedes Mal eine der if-Anweisungen enthalten. (Das erscheint mir vernünftig - wenn auch etwas ungeschickt - aber ich habe das Gefühl, dass es nicht so toll ist und dass es Probleme gibt, wie z. B. die Ladezeiten steigen.)

Gibt es irgendwelche Optionen, die ich vermisse? Oder vielleicht Plugins, die das für mich tun? Ich muss zugeben, dass ich überrascht bin, dass ich kein Plugin gefunden habe, mit dem Sie aus einer Liste von Vorlagen auswählen können, die als front-page.php/index.php-Seite angezeigt werden sollen, ohne auf die statische Seite zurückgreifen zu müssen Hack - Variationen von Loops und Homepage-Layouts müssen eine häufige Anforderung sein.

5
Edmund Heaphy

Eine Möglichkeit besteht darin, einen einzigen front-page.php zu haben und dann get_template_part() zu verwenden, um je nach Benutzerauswahl unterschiedliche Inhalte anzuzeigen.

Grober Code:

get_header();

$layout = get_option( 'front_page_layout', 'default' );
get_template_part( 'front-page', $layout );

get_footer();

Danach müssen Sie für jedes Layout eine Datei erstellen, die Sie folgendermaßen aufrufen sollten:

  • front-page-one.php
  • front-page-two.php
  • front-page-three.php
  • front-page-default.php

Letzterer wird verwendet, wenn die Option nicht gesetzt ist, z. wenn das thema gerade aktiviert ist.

Natürlich benötigen Sie eine Seite im Backend, auf der Benutzer die Vorlage auswählen und die Option 'front_page_layout' speichern können.

Mit nur einem front-page.php kann jeder, der Ihr Thema sieht, es leicht erkennen, ohne sich den Code ansehen zu müssen.

Eine andere Alternative besteht darin, einfach front-page.php zu verwenden, um das Standardlayout zu enthalten. Anschließend können Sie mit Seitenvorlagen einige alternative Layouts erstellen.

/*
Template Name: Home Page Alternative One
*/

Auf diese Weise können Ihre Benutzer eine Seite erstellen, ihr eine der von Ihnen erstellten Vorlagen zuweisen und diese Seite schließlich in den Leseeinstellungen als Startseite festlegen.

Zum Ändern des Layouts der Startseite müssen Benutzer nach dem ersten Mal nur noch die Seitenvorlage der Seite ändern, die als statische Startseite ausgewählt wurde.

Diese zweite Option erfordert etwas mehr Arbeit für die Benutzer, verhindert jedoch, dass Sie auf einer Seite mit Designeinstellungen die Option 'front_page_layout' festlegen können.

5
gmazzap

Es gibt nur eine Option, die Seitenvorlagen eine. Dies ist, wie 99% der Themen funktionieren und wie WordPress-Benutzer und -Implementierer es gewohnt sind. Sie können versuchen, einzigartig zu sein, aber niemand wird es zu schätzen wissen.

1
Mark Kaplun