Ich arbeite an einem untergeordneten Thema. Ich bevorzuge es nachdrücklich, die Hauptvorlagendateien nicht zu überschreiben, um die Einfachheit des untergeordneten Themas beizubehalten und den Code- und Wartungsaufwand im Laufe der Zeit zu minimieren.
In der Schleife verwendet die index.php-Vorlage im übergeordneten Thema Folgendes:
get_template_part( 'content' );
was content.php einbringt , ich möchte, dass es sich ähnlicher get_template_part( 'content', get_post_format() );
oder ähnlicher verhält , um verschiedene Vorlagen wie content-aside.php usw. einzubringen , ohne eine index.php im untergeordneten Thema zu erstellen, um die zu überschreiben Eltern für eine einzelne Zeile ändern.
get_template_part()
besteht aus:
function get_template_part( $slug, $name = null ) {
do_action( "get_template_part_{$slug}", $slug, $name );
$templates = array();
$name = (string) $name;
if ( '' !== $name )
$templates[] = "{$slug}-{$name}.php";
$templates[] = "{$slug}.php";
locate_template($templates, true, false);
}
Es ist also eine Aktion verfügbar, in meinem Fall namens get_template_part_content
Ich kann mich mit so etwas an die Action binden:
add_action( 'get_template_part_content', 'child_post_styles', 10, 2 );
function child_post_styles ( $slug, $name ) {
if( false == $name ){
$name = get_post_format();
$templates = array();
if ( '' !== $name )
$templates[] = "{$slug}-{$name}.php";
$templates[] = "{$slug}.php";
locate_template($templates, true, false);
}
}
Dies führt offensichtlich zu Post-Duplizierungen, eine von meiner Hook-Funktion, die die gewünschte Vorlage anzeigen kann, und die andere vom normalen locate_template
Aufruf anget_template_part()
Ich habe Probleme, einen Weg zu finden, um dies ohne Duplizieren oder ohne Rendern der Endseite zu erreichen, direkt nachdem ich meinen Template-Teil geliefert habe, indem ich etwas Dummes wie ein break
oder tueexit