Suche…


Syntax

  • Vorlage –– ist der Name des Haupt-WordPress-Designs, des übergeordneten Elements.
  • child-theme –– ist das Paket, das die Vorlage überschreibt.

Bemerkungen

Ich habe angekündigt, dass die Verwendung eines Kindermotivs immer eine gute Sache ist, aber es gibt immer ein ...

In unserem Beispiel zum Überschreiben von Vorlagen stellen wir uns vor, dass der Autor eines Designs seine eigenen Verbesserungen zur Seitenleistenvorlage hinzufügt und es eine neue gibt

/themes/template/sidebar.php

<?php
/**
 * The template for the sidebar containing the main widget area
 *
 * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials
 */

if ( is_active_sidebar( 'sidebar-1' )  ) : ?>
    <aside id="secondary" class="sidebar widget-area" role="complementary">
        <?php dynamic_sidebar( 'sidebar-1' ); ?>
    </aside><!-- .sidebar .widget-area -->
<?php endif; ?>

Nun wird unsere Website nicht von der neuen role="complementary" /themes/child-theme/sidebar.php profitieren, da unser /themes/child-theme/sidebar.php die Vorlage immer noch mit einer eigenen Datei unter /themes/child-theme/sidebar.php

Es ist unsere Pflicht als Website-Betreuer, den Überblick darüber zu behalten, welche Vorlagen wir überschreiben, und im bevorstehenden Fall eines Updates sorgfältig auf das Änderungsprotokoll achten, damit Sie bei Bedarf die untergeordneten Designdateien aktualisieren.

2) Der Zweck

Die untergeordneten Themen sind eine sichere Methode, um Anpassungen der Hauptvorlage beizubehalten, ohne befürchten zu müssen, dass sie bei einem Themenupdate verloren gehen.

Grundsätzlich müssen Sie sich immer dann fragen, wenn Sie eine Datei innerhalb der aktiven Vorlage von Ihrer Website aus bearbeiten möchten. " Was passiert, wenn ich das Design aktualisiere?"

Und die Antwort ist einfach: Sie verlieren sie, weil das Update einen völlig neuen Themenordner mit sich bringt .

Betrachten wir also ein untergeordnetes Design als Ordner mit Dateien, die die Dateien mit demselben Pfad im übergeordneten Design überschreiben. Lassen Sie uns nun einige Beispiele anführen:

Definition und Anforderungen

Ein untergeordnetes Design wird von WordPress identifiziert, wenn sich in /wp-content/themes/ ein Verzeichnis (z. B. child-theme ) mit folgenden Dateien befindet:

  • style.css

    Diese Datei muss mit einer Kommentarvorlage wie folgt beginnen:

     /*
     Theme Name: Example Child
     Author: Me
     Author URI: https://example.com/
     Template: example
     Text Domain: example-child-theme
     Domain Path: /languages/
     */
    

    Die wichtigsten Dinge, die hier zu beachten sind, sind:

    • Der Template muss genau der Ordnername sein, der das übergeordnete Design enthält (auch bekannt als übergeordnetes Design-Slug).

    • Nennen Sie Ihr Kind Thema in einer solchen Art und Weise Sie leicht in Dashboard identifizieren kann ( in der Regel nur anhängen Child an die Eltern Namen, wie Example Child )

  • index.php

  • functions.php

3) Überschreiben der Vorlage

Ein untergeordnetes Thema wird am häufigsten verwendet, um Vorlagenteile zu überschreiben. Zum Beispiel eine Seitenleiste, wenn wir ein Theme mit der folgenden Datei unter haben

/themes/template/sidebar.php

<?php
/**
 * The sidebar containing the main widget area.
 *
 * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials
 */ 

if ( ! is_active_sidebar( 'sidebar-1' ) ) {
    return;
}?>
<div id="sidebar" class="widget-area">
    <?php dynamic_sidebar( 'sidebar-1' ); ?>
</div>

Wir können definitiv unsere eigene Datei im Child-Theme (mit den Spezifikationen des ersten Beispiels) mit der folgenden Datei hinzufügen

/themes/child-theme/sidebar.php

<?php
/**
 * The sidebar containing the main widget area.
 */ 

if ( ! is_active_sidebar( 'sidebar-1' ) ) {
    return;
}?>
<div id="my-sidebar" class="my-own-awesome-class widget-area">
    <div class="my-wrapper">
        <?php dynamic_sidebar( 'sidebar-1' ); ?>
    </div>
</div>

Jetzt my-own-awesome-class ist in den Kindern Thema sicher und es wird nicht zu jedem Thema Update entfernt werden und Wordpress wird immer eine Vorlage von Kind Themen wählen , wenn es einen auf dem gleichen Weg finden wird.

Ersatz von Vermögenswerten

Auch wenn dies keine bewährte Methode ist, müssen Sie manchmal Assets wie CSS- oder JS-Dateien oder -Bibliotheken ersetzen.

Beachten Sie, dass das System zum Überschreiben der WordPress-Vorlage nur mit .php Dateien .php Wenn wir über Assets sprechen, beziehen wir uns auf registrierte Assets

Ein Beispiel könnte die Ersetzung der jQuery-Bibliothek durch Ihre gewünschte Version sein. In unserer untergeordneten Datei functions.php wir eine Funktion hinzufügen, die die aktuelle jQuery Version entfernt, und unsere eigene aus CDN hinzufügen (erinnern Sie sich nur an ein Beispiel).

/**
 * Dequeue the jQuery script and add our own version.
 *
 * Hooked to the wp_print_scripts action, with a late priority (100),
 * so that it is after the script was enqueued.
 */
function my_own_theme_scripts() {
    // remove the current version
    wp_dequeue_script( 'jquery' );
    // register my desired version
    wp_register_script( 'jquery', 'https://code.jquery.com/jquery-3.1.0.min.js', false, '3.1.0' );
    // load my version, here or somewhere else
    wp_enqueue_script( 'jquery' );
}
add_action( 'wp_print_scripts', 'my_own_theme_scripts' );


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow