WPカスタマイズアイキャッチの設定してある記事だけを、指定数リストに出力する方法をいろいろ試してみました。おまけとして、アイキャッチの「無い」記事だけを取得する方法もあります!代替画像のない記事リストを出したいちょっと前にフッターのレイアウトを変えまして、そこで出している「ピックアップ」という名のランダム記事リンクに、アイキャッチを一緒に表示させることにしました(以前はテキストだけでした)。このブログをWordPressで始めてからは毎回アイキャッチを設定しているので、新着記事などでは問題ないんですが、WPに移行する前の記事もインポートしてあって、ランダムだとそれも出てきちゃうんですよね。アイキャッチが設定されてない記事にはnoimageのような代替画像を出す、という手法でももちろんいいんでしょうが、なんというか見栄えがなー、びみょうだなー、と思ってしまいまして。あったりなかったり...。いうことで、「アイキャッチが設定してある記事だけ」を取得してリストにする方法をいろいろ試してみました。サンプルコード以下はすべて、functions.phpとかではなく、リストを出したい任意の場所(sideber.phpとかfooter.phpとか)に書くコードです。ランダムで5件出力します。アイキャッチがない場合、代替画像を表示する方法せっかくなので、最初にやったnoimage画像を出す方法から。?></a></li><?php}wp_reset_postdata();?>3行目ではランダムで5件を指定しているのだけなので、アイキャッチの有無は関係なく5件取得します。取得した5件をループさせて、アイキャッチを持っていたら8行目で取得、なかったら10行目で代替画像を取得して、13行目で画像とリンクテキストを出力します。//指定数を超えたら終了}}wp_reset_postdata();?>やっぱり代替画像は見栄えがな...、と思って書いてみたコード。3行目で、多めに20件くらいランダム記事を取得しておいて、アイキャッチを持っていた時だけ出力し、出力数をカウントしていって5件を超えたらループを抜ける、というもの。参考にさせていただいて改善したコードがこちら。上記の方法でアイキャッチ「有り」は簡単に取得できるんですが、「無し」について一発で持ってこれる引数はない模様...。参考の記事もそちらの方法を模索しておられたようです。さきほどの「多めに取得してカウント」という方法が使えそうな気がしたので、わたしも書いてみました。//指定数を超えたら終了}}wp_reset_postdata();?>3行目で、多めにランダム記事を取得しておいて、アイキャッチを持たない時だけ出力していく、というもの。ちなみに、総記事数に対してアイキャッチ無し記事の割合が少ないと、20件取得してもその中に5件も出てこないかもしれません。そんなときは3行目の'numberposts'の数をもっと増やすか、-1とすると、全件取得してくれます。初心者でも、“デキる奴”と思わせるプレゼンテーションの基本とコツこれからExcelのマクロを勉強したいという方に!簡単な練習問題作りました。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。コメントは承認制ですので、反映までしばらくお待ち下さい。(稀にスパムの誤判定にて届かないこともあるようですので、必要な際はお問い合わせからお願い致します。週間人気記事ExcelVBAでカレンダーコントロールを自作するExcelで1行・1列おきの合計を求めるSUM関数の書き方これからExcelのマクロを勉強したいという方に!簡単な練習問題作りました。-2019/09/27運営者*you非IT系の会社で社内業務アプリ開発したりWeb担してたり。ExcelとかAccessの本を書いてます。