it-swarm.com.de

Warum wird das Stylesheet für untergeordnete Themen nicht geladen?

Ich verwende das HashOne-Thema und habe ein untergeordnetes Thema erstellt, um verschiedene Farbänderungen an unserer Website vorzunehmen.

Die Änderungen, die ich am Stylesheet für untergeordnete Themen vorgenommen habe, werden jedoch nur in bestimmten Abschnitten der Website vorgenommen, während andere Änderungen das übergeordnete Thema betreffen. Ich habe eine functions.php-Datei erstellt, die meiner Meinung nach richtig formatiert ist. Siehe unten:

<?php
add_action( 'wp_enqueue_scripts', 'hashone_enqueue_styles' );
function hashone_enqueue_styles() {
wp_enqueue_style( 'hashone-parent-style', get_template_directory_uri() . 
'/style.css' );
}

Als ich den Inspektionsmodus verwendet habe, um festzustellen, welches CSS das untergeordnete Thema überschreibt, konnte ich bestätigen, dass es definitiv das übergeordnete Thema ist. Es gibt jedoch drei CSS-Dateien, die gleichzeitig ausgeführt werden, und ich habe keine Ahnung, wie dies behoben werden kann.

  1. stage.ottrial.pitt.edu/wp-content/themes/hashone/style.css?ver=4.7.1
  2. stage.ottrial.pitt.edu/wp-content/themes/hashone-theme-child/style.css?ver=1.0
  3. stage.ottrial.pitt.edu/wp-content/themes/hashone/style.css

Derjenige, der das Rudel anführt, ist # 3. Ich bin nicht sicher, was ich hier falsch mache.

5
Sakena

Es ist kein weiterer Code in Ihrer functions.php-Datei erforderlich, um die übergeordneten Themen-CSS aus Ihrem untergeordneten Thema in die Warteschlange zu stellen. Das Problem ist, dass Sie durch Hinzufügen dieses Codes das CSS des übergeordneten Themas ein zweites Mal in die Warteschlange stellen, es jedoch jetzt nach dem untergeordneten Thema geladen wird. Dies bedeutet, dass alle Änderungen, die Sie am untergeordneten Thema vorgenommen haben, keine Auswirkungen haben.

Entfernen Sie einfach diese Zeile und Sie sollten die Änderungen in Ihrem untergeordneten Thema sehen.

Hinzugefügt: Hier sind die beiden Dateien, die ich nur mit den Grundlagen verwendet habe, um das CSS des untergeordneten Themas ordnungsgemäß einzuordnen.

style.css Datei:

/*
 * Theme Name: HashOne Child
 * Template: hashone
 * Text Domain: hashone-chile
 */

datei functions.php:

<?php
add_action( 'wp_enqueue_scripts', function() {
  wp_enqueue_style( 'hashone-parent-style', get_template_directory_uri() . '/style.css' );
});
5
Nathan Johnson

Sie müssen das Stylesheet Ihres untergeordneten Designs nur laden, wenn Sie es mit einem anderen Namen als style.css versehen möchten.

Standardmäßig lädt WordPress style.css (im Stammverzeichnis des Themas) des übergeordneten Themas und des untergeordneten Themas automatisch.

Stellen Sie sicher, dass Ihr untergeordnetes Design aktiviert ist, und fügen Sie Ihr CSS zum style.css des untergeordneten Designs hinzu.

Verwenden Sie den Inspector, um die CSS-Regeln einfach zu identifizieren. Das Überschreiben der CSS-Regeln des übergeordneten Themas kann manchmal schwierig sein. Die Verwendung von !important kann dazu beitragen, einige der CSS-Regeln im übergeordneten Design zu überschreiben.

Beispiel für die Verwendung von !important in CSS

Angenommen, das übergeordnete Thema definiert diese Regel:

#site-title {
    color: #000000;
    background: #ffffff;
}

Sie können diese Regel in Ihrem untergeordneten Design wie folgt erzwingen:

#site-title {
    color: #ffffff !important;
    background: #000000 !important;
}
3
Michael Ecklund

Beachten Sie das neue Quatro ab WP 4.7:

get_theme_file_uri()
get_parent_theme_file_uri()
get_theme_file_path()
get_parent_theme_file_path()

kam, um das alte quatro zu ersetzen:

get_stylesheet_directory_uri()
get_template_directory_uri()
get_stylesheet_directory()
get_template_directory()

In der jeweiligen Reihenfolge. Der Gewinn ist die bessere Namenskonvention.

1
prosti