web-dev-qa-db-fra.com

Comment faire en sorte que l'éditeur de publications et la médiathèque respectent le mode d'administration HTTPS?

J'ai un site avec FORCE_SSL_ADMIN activé. Lorsque je modifie une publication avec une image incorporée ou lorsque je visionne des images dans la médiathèque, elles sont chargées à l'aide du protocole http: // plutôt que de https. Cela provoque un avertissement de contenu mixte dans IE, ce qui effraie les clients.

Quelqu'un a-t-il une approche recommandée pour rechercher/remplacer ces URL d'image non sécurisées lors de leur affichage par l'intermédiaire de l'administrateur?

Le frontal se charge via http standard, je ne souhaite donc pas effectuer de remplacement dans la base de données qui forcerait le chargement des images sur https en dehors de l’administrateur.

Je suppose que cela doit être un problème commun, alors j'apprécierais tout conseil, même si c'est "tu ne peux pas faire ça".

4
MathSmath

Vous ne pouvez pas maintenant. Cela doit être corrigé dans WordPress Core. Cela peut probablement être temporairement contourné pour une fraction des problèmes avec un plugin, mais il est beaucoup plus intéressant d'investir du temps à développer quelque chose dans un correctif réel de wordpress.

1
hakre

Heureusement, le correctif de core.trac.wordpress.org/ticket/15928 devrait être inclus dans la prochaine version. Jusque-là, vous pouvez utiliser le code suivant comme solution de contournement. ( Props à Andrew Tetlaw pour le correctif. )

Ajoutez-le au fichier functions.php de votre thème ou mettez-le dans un fichier (c'est-à-dire fix_ssl.php) et placez-le dans votre dossier wp-content/mu-plugins.

 function fix_ssl_siteurl ($ url) {
 if (0 === strpos ($ url, 'http') && is_ssl ()) 
 $ url = str_replace ('http: // ',' https: // ', $ url); 
 renvoie $ url; 
} 
 add_filter (' option_siteurl ',' fix_ssl_siteurl '); 
 add_filter ('option_home', 'fix_ssl_siteurl'); 
 add_filter ('option_url', 'fix_ssl_siteurl'); [.________ ('option_stylesheet_url', 'fix_ssl_siteurl'); 
 add_filter ('option_template_url', 'fix_ssl_siteurl'); 
3
marfarma