it-swarm.com.de

Wie übergebe ich Variablen mit get_template_part?

Ich entwickle ein benutzerdefiniertes Thema und übergebe gerne einige Variablen an ausgewählte Dateien. Ich rufe die Ansichtsdateien von functions.php auf.

$var1 = ;
$var2 = ;
etc
include_once('form-views/view-profile.php');//works

//get_template_part('includes/form-views/view','profile');//doesn't work

Jetzt mit include funktioniert es

2
alex

Dies ist im Wesentlichen das Problem der Sichtbarkeit des Bereichs. include bringt Code in einen aktuellen Bereich, Funktionsaufruf erzeugt neuen abgeschlossenen Bereich. In get_template_part() werden nur bestimmte WordPress-Globals von load_template() call inside zur Verfügung gestellt.

Während die grundlegende Antwort darin besteht, Ihre Variablen als globale Variablen zu deklarieren, möchten Sie möglicherweise ein wenig über Ihre Gesamtarchitektur nachdenken - dies ist normalerweise kein guter Anmeldecode.

1
Rarst

In diesen Fällen verwende ich normalerweise:

include(locate_template('includes/form-views/view-profile'));

Auf diese Weise kann ein untergeordnetes Thema die Datei überschreiben.

1
giraff