web-dev-qa-db-fra.com

Correction des urls externes

Mes images sont actuellement liées de manière externe à mon compte blogueur. Après avoir tout importé via PowerPress, toutes mes images ont été importées comme suit:

<div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-YrjQLYBicjE/Wl19tTXO1mI/AAAAAAAAneY/ulQf9voxKGo0CTZFb4Xi96Lk0mFS2purwCLcBGAs/s1600/95DD6994-4A23-4B1C-A333-F5352B5A3B04.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1200" height="400" src="https://1.bp.blogspot.com/-YrjQLYBicjE/Wl19tTXO1mI/AAAAAAAAneY/ulQf9voxKGo0CTZFb4Xi96Lk0mFS2purwCLcBGAs/s400/95DD6994-4A23-4B1C-A333-F5352B5A3B04.jpeg" width="400" /></a></div>

Existe-t-il un type de code .htaccess qui me permette de changer le /s400 en /s1600 afin que la bonne taille d'image soit affichée sur mon site sans qu'il soit nécessaire de modifier chaque publication individuellement?

3
Kelen Conley

Comme la demande est envoyée au serveur blogspot, aucun fichier .htaccess ne le fera pas.

Vous pouvez filtrer le contenu de votre message output:

add_filter('the_content', function($the_content) {
    return str_replace('/s400','/s1600',$the_content);
});

Ou vous pouvez éditer modifier la base de données

global $wpdb;

$wpdb->query("UPDATE $wpdb->posts SET `post_content` = REPLACE(`post_content`,'/s400','/s1600');"); 

Ou le faire dans mysql

UPDATE wp_posts SET `post_content` = REPLACE(`post_content`,'/s400','/s1600';

en supposant que wp_posts est votre table posts.

Ou vous pouvez utiliser wpcli

wp search-replace '/s400' '/s1600'

Si vous modifiez la base de données avec l’une des méthodes, veillez à toujours la sauvegarder au préalable.


(Avant que quiconque ne rejette ma réponse, veuillez noter que ce que j’ai fourni serait une réponse à votre question, mais c’est une solution miracle au problème réel: les images ne sont pas dans Wordpress et devraient probablement l'être.

5
David Sword