情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
Advanced Custom Fields の関連フィールドでおすすめ記事の設定をしているのだが、上限10で全件表示から上限を増やしてランダム表示にしたいということで
<?php $pid = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = 'config'"); if (get_field('recommend')) { $posts = get_field('recommend'); } elseif (get_field('recommend','category_'.$ccat->cat_ID)) { $posts = get_field('recommend','category_'.$ccat->cat_ID); } elseif (get_field('recommend','category_'.$pcat)) { $posts = get_field('recommend','category_'.$pcat); } elseif (get_field('recommend_common', $pid)) { $posts = get_field('recommend_common', $pid); } if ($posts) { ?> <div class="recommend"> <h3>おすすめ記事</h3><ul> <?php foreach( $posts as $post): setup_postdata($post); ?> <li class="clearfix"><?php if (has_post_thumbnail()) { ?><a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('gridthumb'); ?></a><?php } ?><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><span class="excerpt"><?php echo mb_substr(get_the_excerpt(), 0, 42); ?>…</span></li> <?php endforeach; ?></ul></div><?php wp_reset_postdata(); } ?>
から
<?php $pid = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = 'config'"); if (get_field('recommend')) { $posts = get_field('recommend'); } elseif (get_field('recommend','category_'.$ccat->cat_ID)) { $posts = get_field('recommend','category_'.$ccat->cat_ID); } elseif (get_field('recommend','category_'.$pcat)) { $posts = get_field('recommend','category_'.$pcat); } elseif (get_field('recommend_common', $pid)) { $posts = get_field('recommend_common', $pid); } $args = array( 'posts_per_page' => 6, 'post__in' => $posts, 'orderby' => 'rand', ); $the_query = new WP_Query( $args ); ?><?php if ($the_query->have_posts()) : ?><div class="recommend"><h3>おすすめ記事</h3><ul> <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <li class="clearfix"><?php if (has_post_thumbnail()) { ?><a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('gridthumb'); ?></a><?php } ?><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><span class="excerpt"><?php echo mb_substr(get_the_excerpt(), 0, 42); ?>…</span></li> <?php endwhile; ?></ul></div><?php endif; wp_reset_query(); ?>
に変更
その他のAdvanced Custom Fields に関する記事一覧
- ページ・投稿の差し替え更新
- ゆっくり編集・プレビューして更新する
- メールフォーム・申込みの締め切り
- ACF iframe
- acf カウント
- ACFで日時指定更新/ゆっくり編集して更新
- アイキャッチの有無とリピーター1つ目の画像
- ACFリピーターのサブフィールドを自動作成
- イベントカレンダーサンプル(ACFとCF7)
- acf 投稿オブジェクトにメタ値でフィルター
- ACF 画像URLからALTを取得
- 子テーマでACFを使う
- ACF リピーターをランダムに
- ブロックエディターでACFを使う
- ACF Blocks
- acf reset_rows
- ACF 値などの登録まとめ
- ACF チェックボックスの値での条件分岐
- ACF 柔軟コンテンツフィールド、固定ページ用
- ACF 柔軟コンテンツフィールド、ブログ・コラム用