時間が経っているので解決済みかもしれませんが、
アイキャッチをthe_post_thumbnail()
で呼び出すのではなくget_the_post_thumbnail
などで呼び出し、前後の<a>
タグを書き換えてあげれば解決するかと思います。
EisukeAkimotoさんご返信ありがとうございます。
index.phpという所に「the_post_thumbnail」があったのですが、これを「get_the_post_thumbnail」に書き換えればよろしいのでしょうか。
すみません。ど勘違いをしておりました。
前回の返信は忘れてください。
the_post_thumbnail()
は、現在投表示している投稿のアイキャッチを呼び出すテンプレートタグですので、その前後にある<a href="<?php the_permalink(); ?>"></a>
等のリンク先を書き換えてあげてください。
get_the_post_thumbnail()
は「指定した投稿のアイキャッチを取得するテンプレートタグ」ですので、こちらでなくとも希望の動きにはなると思います。
EisukeAkimotoさんご返信ありがとうございます。
説明不足で申し訳ありません。1つのリンク先ではなく、記事ごとに別々のリンク先を指定したいと思っております。ワードプレスははじめてで、自分なりに色々勉強しているのですが見当違いな質問だったら申し訳ありません。
記事ごとに別々のリンク先を指定したい
というのは、例えば「画像」と「記事タイトル」があったとするならば、テキストタイトルは記事へのリンクだとして画像を別のリンク先とし、更に記事単位でそれぞれも同様にリンクを分けていく、ということではなくてですか?
また、次のご返信にループ文codeで貼り付けてみてください。
ご返信ありがとうございます。おっしゃるとおり、テキストは記事個別へ、アイキャッチを記事単位で任意のリンク先を指定したいと思っております。ループ文codeというのが理解していないのですが下記でよろしいのでしょうか。よろしくお願いします。
<!– アイキャッチ画像 –>
<a href="<?php the_permalink() ?>">
<?php
if ( has_post_thumbnail() ) the_post_thumbnail(array(170,170));
else echo '<img src="'.get_bloginfo("template_url").'/images/dot.gif" width="170" height="170" />';
?>
</a>
<!– / アイキャッチ画像 –>
`
であれば、投稿画面で「カスタムフィールド」を使用するのが一番簡単です。
投稿画面にて、タイトルと本文入力画面の下に“カスタムフィールド”という入力欄はありませんか?もし無ければ、画面上部の「表示オプション」タブの中の“カスタムフィールド”のチェックが外れていると思うので、チェックを入れ有効化します。
後に、本文入力欄下部のカスタムフィールドの名前の欄に例えば“imgurl”とでもいれて、値の部分に画像のリンク先としたいURLを入力します。
そしてテンプレートのコードは
<a href="<?php echo get_post_meta($post->ID, 'imgurl', true); ?>">
<?php
if ( has_post_thumbnail() ):
the_post_thumbnail(array(170,170));
else:
echo '<img src="'.get_bloginfo("template_url").'/images/dot.gif" width="170" height="170" />';
endif;
?>
</a>
検証はしていませんが、上記で実現可能かと思います。
書き換えたget_post_meta()
に関しての詳細はこちらをご覧ください。
もっと分かりやすく直感的に管理画面の実装をする必要がある場合はCustom Field TemplateやAdvanced Custom Fieldsの導入を検討してみてください。
EisukeAkimotoさんありがとうございます!教えていただいた通りやりましたらできました!遅い時間にもかかわらず何度もご丁寧に回答していただいて本当にありがとうございます。大変勉強になりました。ありがとうございました。