Wie können beim 2. Seitenaufbau mit dem -Tag die 2. und die folgenden Seitenstile angepasst werden?

Ich möchte verschiedene Stile für eine zweite Seite in single.php oder Posts single.php . Wie kann ich das machen?

Ich habe den folgenden Code in single.php , um die Seite in zwei Teile zu teilen:

 

Solutions Collecting From Web of "Wie können beim 2. Seitenaufbau mit dem -Tag die 2. und die folgenden Seitenstile angepasst werden?"

WordPress fügt dem Body bereits classn hinzu, damit Sie damit umgehen können, solange Ihr Theme das Template-Tag body_class korrekt verwendet.

Auf der zweiten Seite von Page wird Ihr Körper diese zusätzlichen classn haben: paged , paged-2 & page-paged-2 , so dass Sie sehen können, dass Sie Änderungen an den Styles vornehmen können:

 body.page { background: black; color: white; } body.paged { background: green; color: red; } 

Core erreicht dies mit dieser Logik:

 global $wp_query; $page = $wp_query->get( 'page' ); if ( ! $page || $page < 2 ) $page = $wp_query->get( 'paged' ); if ( $page && $page > 1 && ! is_404() ) { $classes[] = 'paged-' . $page; if ( is_single() ) $classes[] = 'single-paged-' . $page; elseif ( is_page() ) $classes[] = 'page-paged-' . $page; elseif ( is_category() ) $classes[] = 'category-paged-' . $page; elseif ( is_tag() ) $classes[] = 'tag-paged-' . $page; elseif ( is_date() ) $classes[] = 'date-paged-' . $page; elseif ( is_author() ) $classes[] = 'author-paged-' . $page; elseif ( is_search() ) $classes[] = 'search-paged-' . $page; elseif ( is_post_type_archive() ) $classes[] = 'post-type-paged-' . $page; } 

Sie könnten diese Logik in Ihren Vorlagen anpassen, wenn Sie auf der ersten und den folgenden Seiten unterschiedliche HTML-Dateien verwenden möchten.

Wenn Sie die Post-ID kennen, können Sie diese spezifische Stelle mit benutzerdefiniertem CSS ansprechen. Wenn Ihre benutzerdefinierte Seite beispielsweise die ID 99 hat, können Sie ein benutzerdefiniertes Stylesheet erstellen und allen Selektoren ein Präfix zuweisen:

body.postid-99

Offensichtlich hängt das von deinem Thema ab. Wenn Ihr Thema eine andere class im body-Tag verwendet (nicht .posttid-99), müssten Sie den Selektor entsprechend ändern.

…oder…

Platzieren Sie das richtige Stylesheet in Ihren Theme-functionen. beispielsweise:-

 function my_enqueue_scripts(){ wp_register_style( 'my-css', "my-stylesheet.css" ); wp_enqueue_style( 'my-css' ); } if ( get_the_ID() == 99 ) add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts'); 

Ich habe den obigen Code nicht überprüft, aber hoffentlich hilft es Ihnen, dorthin zu kommen, wo Sie sein müssen.

Wenn ich das richtig verstehe, möchten Sie eine andere Vorlage für eine neue Seite erstellen.

Wenn dies der Fall ist, müssen Sie die single.php Ihres Themas duplizieren (vorzugsweise in einem untergeordneten Thema) und die Template-Hierarchie verwenden , um die standardmäßige single.php mit der neuen zu überschreiben.

  1. Holen Sie die ID der Seite, die Sie tun möchten
  2. Duplizieren Sie die Datei single.php und benennen Sie sie in single-ID.php um, indem Sie “ID” mit der Seiten-ID ändern
  3. Jetzt können Sie die single-ID.php bearbeiten und die Änderungen gelten nur für diese Seite.

Wenn Sie auf mehr als eine Seite anwenden möchten, können Sie eine neue Vorlage erstellen und ihr einen Namen hinzufügen. Dann würden Sie es bei der Seitenbearbeitung auf allen gewünschten Seiten auswählen, anstatt es per ID zu tun. Dies hängt vom verwendeten Thema ab.