WordPress Popular Posts が指定した画像を表示していないことに気づいた。
既に同じサイズの画像、圧縮された画像があるのに、わざわざ自分であらためて画像を作成してから表示させている。その画像の容量サイズが小さければいいのだが、圧縮されていないから大きい。
それでなんとかこちらの規定のサイズのサムネイルを表示させるようにしてみた。
まず、WordPress Popular Posts の設定画面で以下のように設定する。
カスタムフィールド名は何でもいい。
自分の画像を表示させる。
そして functions.php に次のコードを追加する。
赤文字のところに自分で作成しているサムネイル画像のサイズを指定する。
//wppサムネイル取得先変更
function change_wpp_thumb( $content, $p ) {
$thumb_html = get_the_post_thumbnail( $p->id, 'wpp348x208' );
preg_match( '!src="([^"]+)"!', $thumb_html, $thumb );
$new_content = preg_replace('!<img(.+?)? src="[^"]+"(.+?)>!', '<img$1 src="' . $thumb['1'] . '"$2>', $content );
return $new_content;
}
add_filter( 'wpp_post', 'change_wpp_thumb', 10, 2 );
これでWordPress Popular Posts がサムネイルを作成してキャッシュすることはなくなる。