ACF(アドバンスドカスタムフィード)を利用していて、カスタムフィールドを投稿画面に追加して様々なワードプレスのページ生成機能を拡張している方も多いのではないでしょうか?しかしACFによってカスタムフィールドを追加して様々な機能を拡張しているとサイトの管理(情報更新の手順等)自体が煩雑化してしまっていることもございます。
ワードプレスドクターではサイト管理方法の簡略化等のご相談も承っており、お客様の業務の効率化を複数行ってまいりました。ACFとテーマの拡張によってクライアント様のイベント情報の管理を効率化と簡略化した事例をご紹介いたします。

クライアント様の状況とご依頼内容

クライアント様はライブイベントを企画、開催されている企業様で、ワードプレスのサイトにイベント内容を日付順に表示されていましたが、ACFによって追加されたカスタムフィールドでスケジュールの日付を設定できるところまではよいものの、その後
そのスケジュールを表示する固定ページを追加されたり、
トップページのスケジュール表示の種別を毎月変更したり、
毎月のスケジュールが表示されるページでは次の月や前の月のスケジュールを表示するページ作成やリンクを手作業で作らなければいけなく、
メニューのリンク先も変えなければいけない
などの煩雑な作業内容となっており、なんとか効率化されたいというご希望を持っておられました。

ACFの投稿メタキーを利用して業務の効率化を行う

ACFによって増やしたカスタムフィールドの値をより効率的に利用すると業務を簡略化することができます。ワードプレスドクターでは下記のようなサイトの管理最適化をテーマの改造とACFの値のより有効な活用により行わせていただきました。

●ACFの値をテーマ側で取得し、その月のスケジュールが自動表示されるようにして、毎月スケジュールをトップページにて選択変更する必要がないようにいたしました
●毎月のスケジュールを一覧表示するページにて、テーマを改造し、次の月や前の月の一覧を表示するためのリンクを自動生成にして、こちらも毎月リスト表示の為の固定ページを作成されていた業務を不要にいたしました
●上記次の月や前の月のリンクがクリックされたときにも、その受け側のページを自動生成し、業務としては新たなスケジュールを投稿して公開するだけでトップページとスケジュール閲覧ページに投稿したスケジュールが月ごとに表示されるようにしました
●また投稿一覧画面にカスタムな表示欄を作って投稿に含まれる情報を一部表示することも可能です。

ACFの値でソートして投稿のリストを出力するには?

具体的にはACFの値で投稿を並べ替えて表示するには下記のようにテーマの投稿取得プログラムを改造します。

$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$args = array(
  'post_type' => 'post',
  'cat' => 'XXXXX', //表示したい投稿が含まれるカテゴリー
  'meta_key' => 'XXXXX', //ACFのフィールドのキー名
  'orderby' => 'meta_value',
  'post_status' => 'publish',
  'posts_per_page' => 20,
  'paged' => $paged,
  );
$the_query = new WP_Query( $args );

上記事例はカテゴリーで投稿を取得しますが、ACFによるフィールドキーで投稿を取得することもできます。

$args = array(
   'meta_query' => array(
       array(
           'key' => 'XXXXX', //表示したい投稿が含まれる投稿のACFのフィールドのキー名
           'value' => 'XXXXXX', //表ACFのフィールドのキーに入っている値
           'compare' => '=',
       )
   )
);
$the_query = new WP_Query( $args );

また、URLにパラメータを渡してそのパラメータに応じて投稿リストを作成するようにすると、手作業で行っていたページ作成などをある程度自動化することも可能となる事があります。

ーー

ACFは投稿編集ページに自由に新たな欄を追加して、ワードプレスの機能を拡張することができる有用なプラグインですが、その利用方法によってはサイトの管理が非常に煩雑になってしまうことがあります。サイトの管理を簡略化、効率化すると業務時間の効率化とミスも少なくなるようにすることが可能です。

WordPress ワードプレス上の業務の煩雑さを軽減されたい、簡略化されたい、効率化されたい場合はWPドクターにご相談、ご依頼ください