こんにちは。ニクです。
WordPressで画像を貼り付けると下記のように「width」「height」「class」が自動的に挿入されます。
<img class="alignnone size-full wp-image-5960" src=".../sample.jpg" alt="" width="1020" height="585" />
ニク
WordPressで画像を貼り付けた時に自動挿入される指定は、ほぼ不要です。
画像を指定するたびに不要な指定が入ることを避けたいので、自動的に挿入されないよう変更してしまいましょう。
目次
不要な指定とは?
WordPressが自動で挿入してしまう不要な指定とはなんでしょうか?
それぞれ見ていきましょう。
<img class="alignnone size-full wp-image-5960" src=".../sample.jpg" alt="" width="1020" height="585" />
class=”alignnone size-full wp-image-5960″
画像を貼り付けた時に自動的に挿入される「class=”alignnone size-full wp-image-5960″」が何を意味しているかは、「メディアを追加」画面の赤枠部位をみると分かります。
「class=”alignnone size-full wp-image-5960″」の「alignnone」は「配置:なし」、「size-full」は「サイズ:フルサイズ-1020×585」、「wp-image-5960」はWordpressが画像に割り振った番号を意味します。
width=”1020″ height=”585″
こちらは「width=幅」「height=高さ」を意味します。
「メディアを追加」画面で「サイズ」に指定した幅と高さが入力されます。
WordPressには画像をアップロードする時、アップロードした画像とは異なるサイズの画像を自動的に生成する仕組みがあります。
また、画像を貼り付けると「src=”…/sample-150×150.jpg”」というように、自動的に「150×150」 の画像が指定されるため、「300×300」で貼りたいといった希望がなければ幅と高さの指定は本来必要がありません。
自動挿入されないように変更する方法
画像を貼り付けた時に「不要な指定が含まれないソースコード」となるように設定を変更していきましょう。
不要な指定が含まれるソースコード
<img class="alignnone size-full wp-image-5960" src=".../sample-150x150.jpg" alt="" width="1020" height="585" />
不要な指定が含まれないソースコード
<img src=".../sample-150x150.jpg" alt="" />
設定の変更方法
「外観」→「テーマエディター」→「テーマのための関数(function.php)」を開きます。
「テーマのための関数(function.php)」以下に下記のソースコードを貼り付けます。
//START 画像の自動指定停止
add_filter( 'image_send_to_editor', 'remove_image_attribute', 10 );
add_filter( 'post_thumbnail_html', 'remove_image_attribute', 10 );
function remove_image_attribute( $html ){
$html = preg_replace( '/(width|height)="\d*"\s/', '', $html );
$html = preg_replace( '/class=[\'"]([^\'"]+)[\'"]/i', '', $html );
return $html;
}
//END 画像の自動指定停止
これで画像を貼り付けた時に無駄な指定が含まれないようになりました。