Dois-je réellement lier le style.css de mon thème dans les fichiers de thème

10

Je développe donc un thème wordpress en utilisant une série de fichiers MOINS pour le CSS. Celles-ci se compilent à l'aide de codekit dans une feuille de style combinée et réduite que j'utilise pour le style du thème.

Je comprends qu'un thème wordpress doit avoir un style.css qui inclut les informations sur le thème dans ses commentaires, mais est-il nécessaire de lier ce style.css dans le header.php? Je peux sûrement avoir les informations sur le thème dedans et rien d'autre et les laisser intactes dans le dossier de thème. La feuille de style que j'utilise peut simplement être appelée styles.css ou main.css ou quelque chose.

quelqu'un peut-il confirmer cela ou donner des raisons pour lesquelles cela pourrait être une mauvaise idée?

Harry
la source
1
Vous devez laisser les informations style.csssur le thème à la racine de votre dossier de thème. C'est tout.
JMau

Réponses:

14

Je dirais: vous ne devriez pas utiliser le style.csspour le CSS de production réel.

La raison est simple: la minification. Vous ne pouvez pas réduire complètement le contenu du fichier, car WordPress doit le lire. Dans mes thèmes, j'utilise style.cssjuste pour les en-têtes, et j'ajoute un commentaire, expliquant où trouver le vrai CSS, afin que les autres développeurs n'aient pas à chercher trop longtemps.

Exemple:

/*
Theme Name:    My theme name
Version:       2013.08.24
License:       MIT
Text Domain:   t5_theme
Domain Path:  /lang

You will find the real stylesheet in css/default.css.
*/
fuxia
la source
2
C'est une bonne idée.
Ravinder Kumar
C'est ce que je fais aussi, ça marche comme un charme.
Dalton
Avez-vous encore besoin de mettre en file d'attente style.css en file d'attente pour que WP puisse lire la configuration?
henrywright
3
@henrywright Non, cela n'a jamais été nécessaire.
fuxia
2

Vous avez raison, Harry, que vous n'avez pas besoin d'appeler ou de charger la valeur style.csspar défaut dans votre fichier d'en-tête. Depuis que j'utilise SCSS dans mes thèmes, j'ai rencontré ce même problème, mais j'avais décidé de maintenir le lien vers style.csspour les raisons suivantes qui peuvent ou non s'appliquer à votre situation:

  • Les hypothèses WP par défaut style.cssexistent et sont en cours d'utilisation, et je ne veux pas contrecarrer cette hypothèse en ce qui concerne les plugins. Je ne sais pas si / quand ce serait un problème et je serais intéressé à entendre les expériences et les conseils des autres sur ce point.
  • Si ma feuille de style en cours d'utilisation se trouve dans un dossier, cela empêche les utilisateurs de pouvoir modifier le CSS du site. Rester style.cssactif et disponible donne à mes utilisateurs un moyen de pouvoir toujours apporter des modifications CSS à partir de l'administrateur WP.
  • Liés, tout en travaillant sur le site de transfert avec d'autres partenaires, s'ils n'utilisent pas également SCSS, ils peuvent apporter des modifications style.csssans affecter ma capacité à continuer à utiliser mes fichiers SCSS.

Encore une fois, ces points peuvent ne pas s'appliquer à votre situation, mais j'ai informé ma décision de conserver le style.csslien par défaut , même s'il est principalement vide, à l'exception des informations de thème requises.

Angélique
la source
1

Oui, WordPress utilise les thèmes style.csscomme un document "config".

Vous avez également raison, pour autant que je sache, que vous n'avez pas besoin de charger réellement style.csssur le front-end pour qu'il serve à ses fins de "configuration".

Ce que vous faites devrait bien se passer. Je suis presque sûr d'avoir vu d'autres thèmes faire quelque chose de similaire mais je ne peux pas le jurer. Le seul problème que je peux voir serait que certains plugins supposent à tort qu'il style.csss'agit de la (seule) feuille de style du thème.

s_ha_dum
la source
1

Vous pouvez également l'ajouter à votre config.rb(si vous utilisez Compass) et CodeKit copiera automatiquement votre feuille de style réduite style.cssdans la racine du thème.

require 'fileutils'
on_stylesheet_saved do |file|
  if File.exists?(file) && File.basename(file) == "style.css"
    puts "Moving: #{file}"
    FileUtils.mv(file, File.dirname(file) + "/../" + File.basename(file))
  end
end

Je l'utilise avec chaque thème WordPress que je développe et cela fonctionne comme un charme.

Assurez-vous que le commentaire dans votre style.scssfichier commence par !après le commentaire d'ouverture, sinon il sera supprimé dans la minification:

/*!
  Theme Name: Your Theme

Source: CSS-Tricks

jjeaton
la source
1
Cette astuce avec l'ajout d'un point d'exclamation après le début / * a fait l'affaire pour moi. Cela signifie que je peux continuer à traiter le moins de fichiers -> css et conserver le format que WordPress attend pour lire les détails du thème. L'astuce la plus simple que j'ai vue depuis longtemps (un personnage au bon endroit!) :-)
Lars Koudal