web-dev-qa-db-fra.com

Supprimer les polices Google qui sont (probablement) ajoutées par des plugins

J'ai un thème qui charge "Open Sans" à partir de Google Fonts. Notre site utilise SSL et nous utilisons un $protocol:// pour afficher l'URL de la police.

Cependant, j'ai remarqué que certains plugins/(s) ajoutaient probablement 3 polices différentes à partir de Google Fonts, et ils étaient chargés à l'aide de http:// & qui lançait une erreur telle que:

Blocked loading mixed active content "http://fonts.googleapis.com/css?family=Lato:300,400,700"

Question: Comment désactivons-nous les polices chargées à partir de plugins, sur le front-office, puisqu'elles ne sont pas utilisées au sens visuel du site

Merci d'avance :)

4
tushonline

Si les polices sont chargées depuis un plugin, vous devez utiliser un crochet pour les insérer. Vous pouvez le désactiver, mais vous devez savoir d'où il vient. Principalement parce que vous aurez besoin de la poignée du script.

Cela peut être fait de différentes manières. Je vais donc vous donner un exemple. Mais il y a de fortes chances que vous deviez vous lancer à la chasse.

Le plugin pourrait (idéalement) le charger directement avec wp_enqueue_style() , heureusement pour nous, il existe une fonction permettant d’inverser cette action wp_dequeue_style() , il vous suffit de vous assurer que vous vous connectez au bon moment et que vous le pouvez. retirez-le. Dans la plupart des cas, cela se fait dans le répertoire wp_enqueue_scripts hook. Il est possible qu'ils aient mis une priorité élevée à retarder le chargement, mais ce n'est généralement pas nécessaire, vous devrez peut-être trouver exactement comment ils le font pour en être sûr.

quelque part dans le plugin peut être quelques lignes de code quelque chose comme:

add_action( 'wp_enqueue_scripts', 'plugin_setup_styles' );

function plugin_setup_styles() {
  // it may not be quite this simple, depending on what the plugin is doing
  wp_register_style( 'plugin-google-font-lato', 'http://fonts.googleapis.com/css?family=Lato:300,400,700' );
  wp_enqueue_style( 'plugin-google-font-lato' );
}

solution possible, devrait fonctionner à partir de functions.php:

add_action( 'wp_enqueue_scripts', function() {
  wp_dequeue_style( 'plugin-google-font-lato' );
}, 99 );

Fondamentalement, vous allez avoir besoin de connaître le descripteur du script lorsqu’il est enregistré, grep est idéal pour ce $ grep -R wp_enqueue_style wp-content/plugins/ au début. Mais vous pourriez obtenir de meilleurs résultats en recherchant Lato $ grep -Rn Lato wp-content/plugins/

2
totels

Je voulais faire un commentaire pour mentionner cela, mais je n'ai pas encore assez de représentants pour le faire. J'ai eu un problème similaire à celui-ci et j'ai utilisé un plugin simple comme base pour résoudre le problème. Vous pourriez peut-être faire la même chose.

Commander disable-google-fonts sur GitHub. Il désactive diverses polices google trouvées dans les thèmes Wordpress. Vous pouvez le modifier ou utiliser des extraits du code pour faire ce dont vous avez besoin.

1
phoenixlaef