今回は、wordpressの固定ページで、その固定ページ直下の「アイキャッチ画像」を表示する方法を紹介します。ページテンプレート(page.php)等に記載して使用すると良いと思います。
<?php
// === 商品紹介以下、サムネイル自動表示
function attachment_children_thumbnail($postID){
$pageID=2; // 親ページにしたいページIDを指定
if($postID == $pageID){
// 現在のページの下のページを取得。編集の「順序」で指定した順番で。
$pages = get_pages('child_of='.$pageID.'&sort_column=menu_order&sort_order=asc');
echo "<ul>";
foreach($pages as $page) {
if ($page->post_parent != $productID) continue; // 直下以外は無視
// image from gallery
$link = get_page_link($page->ID);
if(has_post_thumbnail($page->ID)) {
$image_id = get_post_thumbnail_id($page->ID);
$image_url = wp_get_attachment_image_src($image_id,'thumbnail', true);
echo <<<_PRODUCT_
<li><a href="{$link}"><img src="{$image_url[0]}" width="{$image_url[1]}" height="{$image_url[2]}" />
<span>{$page->post_title}</span></a></li>
_PRODUCT_;
}else{
// アイキャッチ画像が無い場合。noimage.pngは予め用意する
echo <<<_PRODUCT_
<li><a href="{$link}"><img src="/images/noimage.png" />
<span>{$page->post_title}</span></a></li>
_PRODUCT_;
}
}
echo "</ul>";
}
}
?>
先日、「wordpress プラグイン」としてリリースしたので、こちらも参考にしてください。