2010-11-18 5 views
7

J'étudie actuellement sur la façon de créer des modèles d'administration Wordpress via des plug-ins, et selon la Wordpress Wiki vous pouvez utiliser des crochets tels que admin_head, wp_admin_css, et/ou login_head faire écho manuellement votre lien balise html :Comment forcer wp_enqueue_style à afficher CSS au bas de la balise head pour remplacer toutes les règles CSS?

echo "<link rel="stylesheet" type="text/css" href="' . get_option('siteurl') . '/wp-content/plugins/blue-steel/login.css" />'."\n"; 

l'exemple est évidemment une mauvaise chose à cause de la façon dont la balise de lien est dans la logique de hardcoded php. L'idéal est d'utiliser wp_enqueue_style() pour insérer CSS. Cependant, il a sa propre idée de quand le CSS est inséré, et réagit seulement aux crochets qu'il aime. Par exemple, le style wp_enqueue ne répond pas bien à l'intérieur admin_head. Jusqu'à présent, je ne peux l'utiliser à l'intérieur wp_print_styles et init, mais là encore vous ne pouvez pas afficher vraiment le CSS après tout le CSS par défaut est chargé:

<link rel='stylesheet' href='http://localhost/wordpress/wp-admin/load-styles.php?c=0&amp;dir=ltr&amp;load=plugin-install,global,wp-admin&amp;ver=9e478aac7934ae559830ecb557b6511d' type='text/css' media='all' /> 
<link rel='stylesheet' id='pinq-admin-css' href='http://localhost/wordpress/wp-content/themes/ardee/css/pinq-admin.css?ver=3.0.1' type='text/css' media='all' /> 
<link rel='stylesheet' id='thickbox-css' href='http://localhost/wordpress/wp-includes/js/thickbox/thickbox.css?ver=20090514' type='text/css' media='all' /> 
<link rel='stylesheet' id='colors-css' href='http://localhost/wordpress/wp-admin/css/colors-fresh.css?ver=20100610' type='text/css' media='all' /> 

Je veux juste PINQ-Admin- css pour afficher au bas de l'étiquette de tête (de préférence juste avant la tête de fermeture) afin qu'il puisse remplacer tous les CSS liés à Wordpress qui ont été chargés.

Des commentaires à ce sujet?

Répondre

7

Hey. Il y a un argument appelé $deps pour wp_enqueue_style, vous devriez essayer. Vous pourriez être en mesure de mentionner que votre feuille de style dépend de tout le reste, le mettant ainsi au-dessous des autres. En dehors de cela, vous pouvez également aller de l'avant avec !important. Plus d'informations sur les dépendances: http://codex.wordpress.org/Function_Reference/wp_enqueue_style

+3

wp_enqueue_style ('PINQ-admin', get_bloginfo ('stylesheet_directory'). "/css/pinq-admin.css", array ('colors', 'thickbox')) a fait l'affaire. Il est allé sous thickbox-css et colors-css. Ingénieux. Merci! –

+0

Vous pouvez également utiliser cette technique pour vous assurer que votre CSS mis en file d'attente vient juste après le site style.css en définissant $ deps à array ('% theme_name% -style') – Snaver

0

Je sais que c'est ancien, mais voici du vrai code, coupé et collé sur mon site. Ceci est dans le fichier functions.php de mon thème enfant:

add_action('init', 'add_custom_styles', 99); 
function add_custom_styles() { 
wp_enqueue_style('custom-styles', get_stylesheet_directory_uri() .'/custom.css', array('storefront-style', 
'wc-bundle-style','storefront-child-style')); 
} 

Les « styles sur mesure » est tout simplement un fichier intitulé « custom.css » dans le répertoire du thème de l'enfant qui contient tous mes styles personnalisés que je veux être chargé en dernier.

En outre, pour trouver les poignées des feuilles de style que vous voulez être au-dessus de votre custom.css stylesheet, utilisez la technique décrite ici:

http://crunchify.com/how-to-print-all-loaded-java-scripts-and-css-stylesheets-handle-for-your-wordpress-blog/

Questions connexes