Benutzerdefinierte Felder funktionieren nicht in der Fußzeile

Ein Freund von mir möchte, dass die Adresse in seiner Fußzeile editierbar ist. So dachte ich, benutzerdefinierte Felder zu einem Beitrag hinzufügen und dann in der Fußzeile diesen Beitrag (namens “Info Post”) und die Adresse aus einem benutzerdefinierten Feld abrufen.

Ich kann die ID des Beitrags erfolgreich erhalten, aber wenn ich versuche, den Postmeta mit zu bekommen

echo get_post_meta($post->ID, 'street_address', true);

nichts passiert.

Kann mir jemand erklären, wo ich falsch liege? Oder wenn jemand eine Vorstellung davon hat, wie es besser ist, dann bin ich ganz Ohr.

Danke für jede Hilfe!

Der Code, den ich verwendet habe, um $ post-> ID zu erhalten, wurde angefordert, daher habe ich unten hinzugefügt. Ich habe versucht, das Feld ‘street_address’ auf verschiedene Arten zu erreichen, aber keiner von ihnen hat funktioniert. Wenn ich $ post-> ID zurückgebe, bekomme ich zwar die richtige ID.

  'Business Info', 'posts_per_page' => 1, )); ?> have_posts() ) : ?> have_posts() ) : $queryObject->the_post(); ?> ID, 'street_address', true); ?> 

Our office location is at .

ID; ?>
We'd love to see you there!

Solutions Collecting From Web of "Benutzerdefinierte Felder funktionieren nicht in der Fußzeile"

Ok, da wir die Post-Meta-Route (im Gegensatz zu Optionen) gehen, gibt es eine viel sauberere und effizientere Möglichkeit, einen Beitrag nach seinem Titel zu greifen:

 if ( $info = get_page_by_title( 'Business Info', OBJECT, 'post' ) ) { // do stuff } 

Lassen Sie sich nicht von der page im functionsnamen abschrecken – das dritte Argument ist der Post-Typ (in diesem Fall post ).

Zweitens, lasst uns herausfinden, was eigentlich los ist:

 if ( $info = get_page_by_title( 'Business Info', OBJECT, 'post' ) ) { echo '
'; echo esc_html( print_r( get_post_meta( $info->ID ), true ) ); echo '

'; } else { echo 'Oh no!'; }

Melden Sie sich mit Ihnen zurück, was Sie aus dem obigen Debug-Snippet erhalten.