Drucken Sie WordPress Vorlage Dateinamen für das Debuggen

Ich habe die Wartung einer großen WP-MS-betriebenen Website übernommen. Die Site verfügt über ~ 200 Vorlagen, viele seitenspezifisch und ohne Standardbenennungsverfahren.

Es würde viel Zeit sparen, wenn ich während des Surfens auf der Seite die Namen der Vorlagen sehen kann, aus denen die aktuelle Seite besteht. Ist das möglich? Ich habe mir die Debug-Plugins für WordPress angesehen, aber sie scheinen auf Variablen und SQL-Abfragen ausgerichtet zu sein, nicht auf Vorlagen.

Solutions Collecting From Web of "Drucken Sie WordPress Vorlage Dateinamen für das Debuggen"

das ist auch ein schneller Weg;

 

Fügen Sie es unmittelbar vor dem schließenden Tag ein

Die folgenden functionen machen 3 Dinge:

  • Zeigen Sie die Vorlagenhierarchie für das aktuelle Request an
  • Zeigen Sie das verwendete Motiv an (2 Möglichkeiten, um dies zu sehen)
  • Zeige die aktuelle Vorlage, die für die Anfrage verwendet wird *)

*) Hängen Sie es an den Inhaltsfilter an. Abhängig von Ihrer Rolle müssen Sie möglicherweise mit der Bedingung oder der Fähigkeit spielen. Bisher kenne ich keine Lösung, um die Seitenvorlage für Archive und ähnliche Listenansichtsanforderungen anzuzeigen.

 // That's not that easy to read: var_dump( get_required_files() ); /** * Show template hierarchy and theme at the end of the request/page. * @return void */ function wpse31909_template_info() { // Don't display for non-admin users if ( ! current_user_can( 'manage_options' ) ) return; // You have to build yourself the hierarchy here or somewhere in front of the fn global $wp_template_hierarchy; $content = '
'; // Show template hierarchy $content .= "TEMPLATE HIERARCHY\n==================\n"; $content .= var_export( $wp_template_hierarchy, true ); // Show current theme in use: $content .= "\n\nCURRENT THEME\n=============\n"; $content .= var_export( get_option( 'template' ), true ); // or: # $content .= var_export( get_template(), true ); $content .= '

'; return print $content; } add_action( 'shutdown', 'wpse31909_template_info' ); /** * Show template on singular views attached to the end of the content for admins * @return $content */ function wpse31909_template_to_content( $content ) { // Display standard content for non-admin users and not single post/page/cpt/attachment view. if ( ! current_user_can( 'manage_options' ) && ! is_singular() ) return $content; $content .= '

'; // Show current template in use: Must be in the loop to get the global $post $content .= var_export( get_post_meta( $GLOBALS['post']->ID, '_wp_page_template' ), true ); $content .= '

'; return $content; } add_filter( 'the_content', 'wpse31909_template_to_content' );

Ich benutze dies, um den Namen der Vorlage einfach oben auf der Seite zu Debugging-Zwecken auszugeben.

 // Zum Debuggen - Vorlagendatei anzeigen
 add_action ('wp_head', 'show_template');
 function show_template () {
     globale $ Vorlage;
     print_r ($ Vorlage);
 }

Obwohl nicht direkt eine Antwort auf die vorliegende Frage ist, sollte hier auch angemerkt werden, dass WordPress standardmäßig dem -Tag für benutzerdefinierte Seitenvorlagen einen classnnamen hinzufügt. Wenn Sie beispielsweise eine Seite mit einer benutzerdefinierten Seitenvorlage anzeigen und der Dateiname der Vorlage “custom.php” lautet, wird dem -Tag ein classnname für ” page-template-custom ” hinzugefügt.

Dokumentation zu dieser function finden Sie hier: https://codex.wordpress.org/Function_Reference/body_class#Page