Zeigen Sie untergeordnete Seite mit benutzerdefinierten Feldern in der übergeordneten Seite an

Ich habe eine übergeordnete Seite mit mehreren untergeordneten Seiten.

Auf der untergeordneten Seitenvorlage habe ich ein Include mit benutzerdefinierten Feldern. Das funktioniert perfekt. Die benutzerdefinierten Felder befinden sich auf der untergeordneten Seite in WordPress.

Die benutzerdefinierten Felder befinden sich alle in page-customfield-3.php und sind in page.php enthalten, um sie anzuzeigen.

Ich habe page-customfield-3.php in page-parent.php eingefügt und es zeigt die benutzerdefinierten Felder nicht an. Ich habe einen Link zu einem GitHub mit dem Code für jede Datei eingefügt, da es sonst sehr lang ist.

CURRENTLY WORKING Page.php | Page-customfield-3.php CURRENTLY NOT WORKING Page-parent.php | Page-customfield-3.php 

https://gist.github.com/BHWD/9b30911c66337c5408e2

Solutions Collecting From Web of "Zeigen Sie untergeordnete Seite mit benutzerdefinierten Feldern in der übergeordneten Seite an"

Ihr Problem besteht darin, dass Sie das Seitenergebnis auf $ page setzen. Während die normalen Befehle wie the_title () und get_field () nach der $ post -Variable suchen, wenn Sie keine separate ID angeben, von der Sie den Titel möchten.

Ich habe dies einmal gemacht, indem ich eine Sicherung der $ post -Variable erstellt habe, und dann einfach jeden Beitrag, den ich auf der übergeordneten Seite in die $ post-Variable aufnehmen wollte. Dann wurden die .php-Dateien und alle normalen Befehle wie the_title (); & get_field (); funktioniert wie es normalerweise wäre. Aber das ist schmutzig und es gibt wahrscheinlich einen viel besseren Weg, dies zu erreichen.

Sie sollten die Hauptabfrage wahrscheinlich nur durch Ihre Abfrage get_posts ersetzen. Danach sollten Sie die wp_query zurücksetzen und wiederherstellen.

Eine andere Option wäre, die Seite-customfield-3.php so zu ändern, dass sie die Variable $ page enthält, die Sie in Ihrer Seite-parent.php setzen.