Quantcast
Channel: omnioo lab. record » PHP/MySQL
Viewing all articles
Browse latest Browse all 59

WordPressで挿入する画像のsrcを相対リンクにする

$
0
0

記事内に画像を挿入する作業がえらく楽になったWordpressではありますが、如何せんパスが絶対パスになってしまいます。httpsを設定した際にはsrcの内容がhttpになってしまうのでSSLエラーになって警告されてしまいます。MovabeleTypeやその他のCMSも同様の事情でありますが、ここはルート相対とかで書いておくと問題ないわけです。
プラグイン使うのも開発するのも手ですが面倒なのでフィルターフックで絶対パスをルート相対パスに置換した方が断然早いです。
テーマ内のfunctions.phpに以下の関数を加えます。delete_host_from_attachment_urlというフィルターフックにひっかける感じです。

function delete_host_from_attachment_url( $url ) {
    $regex = '/^http(s)?:\/\/[^\/\s]+(.*)$/';
    if ( preg_match( $regex, $url, $m ) ) {
        $url = $m[2];
    }
    return $url;
}
add_filter( 'wp_get_attachment_url', 'delete_host_from_attachment_url' );
参考:
http://www.warna.info/archives/20/

Viewing all articles
Browse latest Browse all 59

Trending Articles