2017-07-27 4 views
1

Ich bin neu in WordPress Dev und versuche, ein einfaches Kind Thema zu bauen. Ich gehe verrückt versucht, die Child-Stile zu erhalten, um die Bootstrap-Stile in der Warteschlange durch das übergeordnete Thema zu überschreiben.Wordpress Kind Thema Stile nicht überschreiben zuvor eingereihten Stile

Alles, was ich online gesehen habe, sagt, dass dieses Problem zu lösen, müssen Sie sicherstellen, dass Ihr Kind Thema zuletzt ist die Warteschlange gestellt, und ich glaube, ich habe erreicht, dass in functions.php meinem Kind:

<?php 

    // enqueue styles 
    function sparkling_enqueue_styles() { 

     // enqueue parent styles 
     wp_enqueue_style('sparkling-theme', get_template_directory_uri() .'/style.css'); 

     // enqueue child styles 
     wp_enqueue_style('child-theme', get_stylesheet_directory_uri() .'/style.css', array('sparkling-theme', 'sparkling-bootstrap'), '1.0', true); 
    } 

    add_action('wp_enqueue_scripts', 'sparkling_enqueue_styles'); 

Dies mir einen Kopfabschnitt mit der folgenden Reihenfolge der Elemente gibt, wenn in dev Werkzeuge geprüft:

:

<link rel="stylesheet" id="sparkling-theme-css" 
href="http://localhost/wordpress/wp-content/themes/sparkling/style.css? 
ver=4.8" type="text/css" media="all"> 

<link rel="stylesheet" id="sparkling-bootstrap-css" 
href="http://localhost/wordpress/wp- 
content/themes/sparkling/inc/css/bootstrap.min.css?ver=4.8" type="text/css" 
media="all"> 

<link rel="stylesheet" id="child-theme-css" 
href="http://localhost/wordpress/wp-content/themes/sparkling- 
child/style.css?ver=1.0" type="text/css" media="1"> 

<link rel="stylesheet" id="sparkling-style-css" 
href="http://localhost/wordpress/wp-content/themes/sparkling- 
child/style.css?ver=4.8" type="text/css" media="all"> 

ich dieses Stück CSS in mein Kind Thema Sheet hinzugefügt haben

Aber wenn ich mein .navbar-Header-Element zu inspizieren, es schwebt nach wie vor auf der linken Seite, dank Stile Bootstrap:

bootstrap.min.css?ver=4.8:5 

@media (min-width: 768px) { 
    .navbar-header { 
     float: left; 
} 

Ich habe zwei Fragen. Ich weiß nicht, ob sie verwandt sind.

  1. Warum ist mein Kind Thema Styling die Bootstrap-Arten nicht überschreiben?
  2. Woher kommt das finale Stylesheet (Sparkling-Style-Css) im Kopf? Ich denke, es ist der Schatten eines früheren Versuches, in die Warteschlange einzutreten, längst aus meiner functions.php-Datei gelöscht.

Jede Hilfe wird sehr geschätzt! Ich habe versucht, die Bootstrap-Datei aus der Warteschlange zu entfernen, aber das scheint nicht zu helfen und hebt andere Teile des Designs auf.

+0

Könnten Sie auch Ihren Header.php-Dateicode und einen Live-Link auf die Website schreiben, wenn möglich? – pomaaa

+0

Über das zweite Stylesheet glaube ich, dass WordPress automatisch die style.css mit dem Namen "funkelnd" enthält. Sie verwenden 'child-theme', damit es nicht überschrieben wird. Versuchen Sie, es als "Sparkling-Stil" in die Warteschlange zu stellen und es sollte in Ordnung sein. – Aioros

+0

Hey @pomaaa, ich habe gerade die Frage aktualisiert, weil ich meinen Fehler entdeckt habe. Danke, dass du dich ausgesucht hast. – katcalavera

Antwort

0

Nach stundenlanger Recherche und Stöbern durch meinen Enqueuing-Code und PHP stellte sich heraus, dass es ein Problem mit dem Child-Stylesheet gab, das ich einzufügen versuchte: Eine schließende Klammer wurde irgendwo tief in meinem CSS gelöscht Entweder wurde die Datei nicht in die Warteschlange eingereiht oder die Stile wurden nicht angewendet.

Ich bin immer noch nicht sicher, warum der letzte (nicht vorhandene) Sheet wurde im Header erscheinen, aber es war resistent gegen aus der Warteschlange entfernt werden, so bewerben ich mich, die von jemandem anderen auf SO empfohlen folgenden Code:

// dequeue ghost duplicate child styles 
function remove_assets() { 
    wp_dequeue_style('sparkling-style'); 
    wp_deregister_style('sparkling-style'); 
} 

add_action('wp_print_styles', 'remove_assets', 99999); 

Ich weiß nicht, ob dies der eleganteste Weg ist, um ein hartnäckiges Vermögen zu entfernen, aber es scheint zu funktionieren.

Verwandte Themen