Single Page WordPress Theme – Verwenden von Seitenvorlagen

Nun, ich bin verloren, es ist spät und ich habe google die ganze Nacht gesucht. Hier ist das Problem, auf das ich stoße. Ich versuche, eine Seite mit nur einer Seite zu erstellen, indem ich WordPress-Seiten benutze. Wie ich das Thema ursprünglich eingerichtet habe, gibt es mehrere Seitenvorlagen für ex (‘page-contact.php, page-gallery.php, page-map.php etc.’). Jede dieser Seitenvorlagen wird mit verschiedenen Metaboxen angepasst und die entsprechende Seitenvorlage ruft diese Metaboxen auf und erstellt die Seite. Dieser Teil ist in Ordnung und die einzelnen Seiten werden gut angezeigt. Wenn ich jedoch versuche, alle Seiten auf eine einzige Seite zu durchsuchen, habe ich Probleme.

Bis jetzt bin ich in der Lage, alle Seiten zur Anzeige zu bringen, aber nur mit einer Vorlage, so dass meine Seiten nicht richtig mit ihrer eigenen Meta und benutzerdefinierten Vorlagendatei posten. Ich habe den unten stehenden Code angehängt. Ich frage mich, ob es eine Möglichkeit gibt, eine Variable in get_template_part (‘page’, $ template_name_of_page) aufzurufen, um die richtige Vorlage für jede Seite anzuzeigen.

  'page', 'post_parent' => '29', 'orderby' => 'menu_order', 'order' => 'ASC', ); $query = new WP_Query( $args ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); get_template_part('page', 'countdown'); } } else { } wp_reset_postdata(); ?>  

SCHABLONEN-HIERARCHIE

  1. LANDING PAGE OF WEBSEITE – Sie möchten alle Seiten aufrufen und diese mit ihrer individuellen Vorlage anzeigen lassen

    • LANDING PAGE – page-home.php (das hat den obigen Codeabschnitt)

      • Portfolio – page-portfolio.php (Child of Landing Page – hat benutzerdefinierte Metaboxen, die in der Vorlagendatei aufgerufen werden)
      • Karte – Seitenkarte (Child of Landing Page)
      • Kontakt – Seitenkontakt (Child of Landing Page)

Solutions Collecting From Web of "Single Page WordPress Theme – Verwenden von Seitenvorlagen"

Nun, ich glaube, ich tue genau das, was ich vorhatte. Danke @Milo, dass er mich in die richtige Richtung weist! Wie Sie unten sehen können, habe ich get_page_template_slug (); und str_replace (), um die pro Seite verwendeten Vorlagen zu filtern.

Kann jemand bestätigen, dass dies eine praktikable Option ist?

 $args = array ( 'post_type' => 'page', 'post_parent' => '29', 'orderby' => 'menu_order', 'order' => 'ASC', ); $query = new WP_Query( $args ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); $tn = get_page_template_slug( $post_id ); $word = array("page-", ".php",' '); $template = str_replace($word,'',$tn); get_template_part('page', $template); } } else { } 

Nun, Sie können eine einzelne Vorlage für die gesamte Website erstellen und verschiedene Seiteninhalte in verschiedenen

mit diesem Code aufrufen:

 < ?php $page_id = 47; $page_data = get_page( $page_id ); echo $page_data->post_content ; ?>