web-dev-qa-db-fra.com

Comment mettre en file d'attente des fichiers php avec une variable personnalisée et des conditions?

Salut, j'ai repris un site Web avec un thème à moitié personnalisé. C'était un thème obsolète avec un tas de scripts et de formatage. Actuellement, j'ai rencontré un petit problème lors de la mise en file d'attente des feuilles de style dans functions.php au lieu de header.php (car toutes étaient directement incluses dans le header.php).

Problème n ° 1

Le thème a un 'style.php' chargé directement dans les fichiers header.php qui ont:

header("Content-type: text/css",true); 

ob_start("compress");
function compress($buffer) {
  /* remove comments */
  $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);
  /* remove tabs, spaces, newlines, etc. */
  $buffer = str_replace(array("\r\n", "\r", "\n", "\t", '  ', '    ', '    '), '', $buffer);
  return $buffer;
}

/* css files */
include('style.css');
include('css/1140.css');
include('css/response.css');
include('css/flexslider.css');
include('css/tipsy.css');
include('css/custom.css'); // ALL CUSTOMIZATION goes here!

ob_end_flush();

et je me demande s'il faut charger tous les fichiers séparément ou mettre en file d'attente le fichier .php.

Problème n ° 2

Il a une option dynamique pour changer les couleurs et est donc chargé directement dans header.php avec des lignes:

<?php $primary_color = $data['primary_color'];?>
<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/css/color.php?color=<?php echo substr($primary_color,1) ?>" type="text/css" media="screen" />

Comment puis-je déplacer cela aux fonctions et utiliser wp_enqueue standard?

Merci beaucoup!

1
nerijusgood

Du point de vue de la mise en file d'attente, peu importe s'il pointe vers un fichier CSS statique authentique ou un noeud final qui le génère de manière dynamique.

Cependant, il y a une implication massive massive . Le chargement du moteur PHP (et pire encore - le noyau de WordPress en haut) nécessite beaucoup plus de ressources que de servir un fichier statique.

Votre objectif final ne devrait pas être de convertir cela, mais de vous en débarrasser complètement. S'il s'agit d'un site autonome (et non d'un thème destiné à la redistribution), il devrait être assez facile de générer les modifications souhaitées une fois pour toutes et de les servir de fichiers statiques à partir de ce point.

1
Rarst