###<質問(依頼)内容>
サブディレクトリ型のマルチサイトで表題のプラグインを使用しているのですが、
サイトを追加するごとに不具合が発生し、困っています。
以下の不具合に関して根本的な解決方法をご教授願いたいです。
また、同じようなご経験をされた方がいらしたら、経験談など伺えると嬉しいです。
####バージョン
WordPress:5.4.8
Advanced Custom Fields PRO:5.7.7
###<運用内容>
・マルチサイト内のそれぞれのサイトは「店舗ページ」として扱っていて、
新しい店舗を出店する際にサイトを1つ作成している。
・全てのサイト(店舗)に店舗情報用としてカスタムフィールドを使用している。
・親サイトの店舗一覧画面に各店舗の情報を表示している。
###<不具合>
・サイト追加時に、親サイト内の店舗一覧画面上で既存サイト(店舗)の店舗情報が表示されなくなる。
また、店舗は複数あるが全て表示されなくなるわけではなく、ある店舗のある情報だけ表示されないといったことが多い。
例えば、店舗1の店舗名は表示されるが、店舗2の店舗名は表示されない等
(ソースコードに差異はない)
・管理画面で内容を確認してみたところ、フィールドやフィールドに登録している内容は消えていない。
・表示されなくなる情報はフィールドタイプが「Group」の箇所のことが多い。
###<現時点で行っている解決方法>
その場しのぎですが、消えた箇所のフィールドを再度作成して、元々設置してあったフィールドと置き換える(元のフィールドは削除)と正しく表示されます。
###ソースコード例
業務の都合上実際のソースコードをお見せできないのですが、例えば以下のような形で店舗一覧ページへ出力しています。
php
1<?php 2 $cats = get_terms(array( 3 'taxonomy' => 'area', 4 )); 5 foreach ($cats as $cat): 6?> 7 8<?php echo $cat->name?> 9 10<?php 11$args = array( 12 'post_type' => 'store', 13 'taxonomy' => 'area', 14 'term' => $cat->slug, 15 'posts_per_page' => -1, 16 ); 17 $myposts = new WP_Query( $args ); 18 if( $myposts->have_posts()) : 19 while($myposts->have_posts()) : $myposts->the_post(); 20 21 $ID = get_field('id'); 22 23 switch_to_blog( $ID ); 24 25 $config = get_page_by_path('config'); 26 $config_id = $config->ID; 27 28 $name = get_field('name',$config_id); 29 $name1 = $name['name1']; 30 $name2 = $name['name2']; 31 $name3 = $name['name3']; 32?> 33 34<?php echo $name1; ?><?php echo $name2; ?><?php echo $name3; ?> 35 36<?php restore_current_blog(); ?> 37 38<?php endwhile;endif?> 39<?php endforeach; ?> 40 41<?php wp_reset_postdata(); ?>
以上、よろしくお願いいたします。
あなたの回答
tips
プレビュー