it-swarm.com.de

Geben Sie dem Stylesheet für untergeordnete Themen Priorität

Ich habe ein untergeordnetes Thema erstellt und das Hauptthema style.css funktioniert einwandfrei. Das übergeordnete Design verfügt jedoch über ein anderes Stylesheet, das ich importieren und für das untergeordnete Design erstellen und stattdessen verwenden möchte.

Übergeordnete Themenstruktur - ./woocommerce/woo.css
Untergeordnete Themenstruktur - ./woocommerce/woo.css (manuell erstellt)

Nun habe ich beide Stylesheets in der function.php des untergeordneten Themas wie folgt in die Warteschlange gestellt.

function fruitful_load_parent_stylesheets() {
    wp_enqueue_style( 'layout', get_template_directory_uri() . '/woocommerce/woo.css' );
}
add_action( 'wp_enqueue_scripts', 'fruitful_load_parent_stylesheets' );

function fruitful_load_child_stylesheets(){
    wp_enqueue_style( 'woo', get_stylesheet_directory_uri() . '/woocommerce/woo.css');
}
add_action('wp_enqueue_scripts', 'fruitful_load_child_stylesheets');

Nun, wenn ich dem woo.css des Kinderthemas einen Stil hinzufüge, funktioniert das erst, wenn ich! Important it.Ich möchte es einfach nicht bei jedem Stil machen, den ich hinzufüge.

ist

1
Nimsrules

Das stylesheet Ihres Kinderthemas wird normalerweise automatisch geladen. Wenn dies nicht der Fall ist, müssen Sie es auch enqueue. Durch Festlegen von "Parent-Style" als Abhängigkeit wird sichergestellt, dass das untergeordnete Design stylesheet danach geladen wird.

/**
 * Enqueue theme styles (parent first, child second)
 * 
 */
function wpse218610_theme_styles() {

    $parent_style = 'parent-style';

    wp_enqueue_style( $parent_style, get_template_directory_uri() . '/woocommerce/woo.css' );
    wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/woocommerce/woo.css', array( $parent_style ) );
}
add_action( 'wp_enqueue_scripts', 'wpse218610_theme_styles' );

Hinweis: Weitere Informationen finden Sie im Theme Developer Handbook .

2
Charles

Vielleicht können Sie versuchen, jeder add_action einen Prioritätswert hinzuzufügen, um sicherzustellen, dass eine vor der anderen ausgeführt wird.

add_action( 'wp_enqueue_scripts', 'fruitful_load_parent_stylesheets', 10 );
add_action('wp_enqueue_scripts', 'fruitful_load_child_stylesheets', 20 );

WordPress Codex add_action ()

4
goalsquid

Ich muss das Kinderthema später wie unten laden. Ich musste den Elternstil aus der Warteschlange entfernen und ihn abmelden, dann den Elternstil und den Kindstil aus der Warteschlange entfernen. Hoffe das hilft

Übergeordneter functions.php hat

add_action('wp_enqueue_scripts', 'load_parent_style', 10);
function load_parent_style() {
    wp_enqueue_style('parent-theme-style'); // parent theme code
}

Kind functions.php hat

add_action('wp_enqueue_scripts', 'load_child_style', 20);
function load_child_style() {
  //register & enqueue parent with new name 
  wp_register_style('parent-style', $url, array($deps));
  wp_enqueue_style('parent-style'); 

  // dequeue & deregister parent's theme handle
  wp_dequeue_style('parent-theme-style'); // from parent theme
  wp_deregister_style('parent-theme-style'); 

  // register & enqueue child style
  wp_register_style('child-style', get_stylesheet_uri(), array('parent-style'));
  wp_enqueue_style('child-style');
}
1
Vemman