【WordPress】カテゴリごとにキャッチ画像を設定する
記事更新日:2022-08-21
画像を
記事ごとに
変えるのは面倒
記事ごとに
変えるのは面倒
functionにしてみる
functions.php
include(get_template_directory() . '/(ディレクトリ名)/set_the_post_thumbnail.php');
set_the_post_thumbnail.php を作る
function set_the_post_thumbnail($size, $type) {
global $post;
$default_img = '<img src="' . xxx . '/img/thumbnail/default.png" alt="xxx"></figure>';
$class_main = "'(クラス名)'";
$class_sub = "'(クラス名)'";
switch (get_post_type()) {
case 'post': // 投稿ページの場合
// 開始タグ
switch ($type) {
case 'main': // メインループの場合
echo '<figure class=' . $class_main . '>';
break;
case 'sub': // サブループの場合
echo '<a class=' . $class_sub . ' href="' . esc_url(get_permalink()) . '">';
break;
}
// サムネイル追加
if (has_post_thumbnail()) {
the_post_thumbnail($size);
} else {
$class = "wp-post-image";
if (has_category('(カテゴリ名)')) {
$png = "(画像名)";
} elseif (has_category('(カテゴリ名)')) {
$png = "(画像名)";
} else {
$class = "";
$png = "default";
}
echo '<img class=' . $class . ' ' . 'src="' . xxx . '/img/thumbnail/' . $png . '.png">';
};
// 終了タグ
switch ($type) {
case 'main': // メインループの場合
echo '</figure>';
break;
case 'sub': // サブループの場合
echo '<p class="post-title">';
the_title();
echo '</p></a>';
break;
}
break;
}
}
2022-08-21
編集後記:
この記事の内容がベストではないかもしれません。