Wie stelle ich eine Variable in Partials bereit?

Ich habe eine partielle in single.php , die wie single.php aussieht:

 post_author) ; ?>  

Nun könnte $userdata anderer Stelle in meiner Single nützlich sein. Daher möchte ich, dass die Variable und ihr Wert global in allen Vorlagen verfügbar sind, die bei der Verwendung meiner Single enthalten sind.

Also habe ich die erste Zeile ausgeschnitten: die Erstellung von $userdata und früher in eine ‘ $userdata -Vorlage, die früher in der Schleife aufgerufen wird.

Leider war die Variable nicht mehr verfügbar. Ich habe ein paar andere Vorlagen ausprobiert, die auch früher in der Schleife aufgerufen werden. Ich habe das gleiche Ergebnis: Die Variable war nicht verfügbar.

Ich dachte über das Erstellen einer function innerhalb von functions.php . Aber ich kann mir ein paar Gründe vorstellen, dies nicht zu tun. get_userdata() allem, warum sollte man sich mit einer Abstraktion für get_userdata() wenn get_userdata bereits existiert? Das scheint unelegant.

Solutions Collecting From Web of "Wie stelle ich eine Variable in Partials bereit?"

WordPress speichert die Benutzerinformationen zwischen. Es ist wirklich kein Problem, get_userdata jedes Mal get_userdata wenn Sie es brauchen. Das einzige, was Sie tun, indem Sie es auf eine Variable $userdata übertragen, haben Sie, dass WP es von einem anderen Ort im Speicher holt.

Hinweis: Lesen Sie diesen Beitrag für einen allgemeineren Umgang mit der Übergabe von Variablen an Teilzahlen.

Es gibt zwei Lösungen:

1) Verwenden Sie eine Variable wie diese globale $userdata ;

 $userdata = //object you want inside partial; 

und dann benutzen

global $userdata; innerhalb dieser single.php oder Schleife usw.

Referenz: https://developer.wordpress.org/reference/functions/get_template_part/

2) get_template_part Sie die Dinge so wie Sie sind, außer einer Änderung anstelle von get_template_part verwenden Sie include_once('filename.php')