Comment changer l'adresse de l'image WordPress en chemin relatif

不言
Libérer: 2023-04-02 21:38:01
original
3574 Les gens l'ont consulté

Cet article présente principalement comment modifier l'adresse de l'image WordPress en un chemin relatif. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer. est édité par défaut. J'utilise un chemin absolu, de sorte que lorsque d'autres copient votre article sur d'autres sites Web, les images puissent s'afficher normalement. Cependant, si je souhaite modifier le nom de domaine ou le chemin du blog, alors les adresses de ceux-ci. les images seront invalides et ne pourront pas être affichées normalement.

Yousou.com

a trouvé deux façons de résoudre le problème de l'utilisation de chemins relatifs pour les images de modèles WordPress sur Internet. J'espère que cela pourra aider tout le monde. 1. Modifiez

wp-config.php dans le répertoire racine du thème WordPress. Ce fichier n'apparaîtra qu'après l'installation de WordPress. Ajoutez les deux lignes suivantes au fichier.

Enregistrez, OK ! Mais cette méthode de modification ne peut utiliser que le répertoire racine du site Web du réseau utilisateur, et utiliser le port par défaut 80
define(‘WP_HOME’, ”);
define(‘WP_SITEURL’, ”);
Copier après la connexion


Si vous n'utilisez pas le répertoire racine du site Web, ou si vous utilisez un port non-80 , puis utilisez la seconde méthode

2. Ouvrez le fichier wp-includes/post.php, modifiez la fonction wp_get_attachment_url (3.7.1 à la ligne 4276) par le code suivant

<🎜. >Enregistrez, OK

function wp_get_attachment_url( $post_id = 0 ) {
$file_dir=dirname(__FILE__);
$server_root=$_SERVER[DOCUMENT_ROOT];
$file_dir=substr($file_dir,strlen($server_root));
$file_dir=substr($file_dir,0,-12);
if($file_dir!=”){
$file_dir=’/’.substr($file_dir,1);
}
$post_id = (int) $post_id;
if ( !$post =& get_post( $post_id ) )
return false;
$url = ”;
if ( $file = get_post_meta( $post->ID, ‘_wp_attached_file’, true) ) { //Get attached file
if ( ($uploads = wp_upload_dir()) && false === $uploads[&#39;error&#39;] ) { //Get upload directory
if ( 0 === strpos($file, $uploads[&#39;basedir&#39;]) ) //Check that the upload base exists in the file location
//$url = str_replace($uploads[&#39;basedir&#39;], $uploads[&#39;baseurl&#39;], $file); //replace file location with url location
$url=$file_dir.”/wp-content/uploads/”.$file;
elseif ( false !== strpos($file, ‘wp-content/uploads’) )
//$url = $uploads[&#39;baseurl&#39;] . substr( $file, strpos($file, ‘wp-content/uploads’) + 18 );
$url=$file_dir.”/wp-content/uploads/”.$file;
else
//$url = $uploads[&#39;baseurl&#39;] . “/$file”; //Its a newly uploaded file, therefor $file is relative to the basedir.
$url=$file_dir.”/wp-content/uploads/”.$file;
}
}
if ( empty($url) ) //If any of the above options failed, Fallback on the GUID as used pre-2.7, not recomended to rely upon this.
$url = get_the_guid( $post->ID );
if ( ‘attachment’ != $post->post_type || empty($url) )
return false;
return apply_filters( ‘wp_get_attachment_url’, $url, $post->ID );
}
Copier après la connexion
De cette façon, les chemins de fichiers multimédia dans les journaux d'articles que vous écrirez à l'avenir utiliseront tous des chemins relatifs. Les adresses d'image ne deviendront pas invalides après avoir modifié l'espace du nom de domaine !

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

WordPress prend en charge la mise en œuvre de la liaison/de l'accès à plusieurs noms de domaine

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!