ACF(アドバンスドカスタムフィールド)のフィールド読み込み
ACF(アドバンスドカスタムフィールド)は、データのエントリーをサポートするプラグイン。
パソコンに詳しくなくてもデータのエントリーが楽になるということで、かなり評価がいいんですけどね。
便利かといえば、個人的には、あんまり。。。
ただ、よく使う機能などをプログラムにしてWPをデータエントリープログラムとして使うならば、便利かも。
でも、それにPHPが書けないといけないし、ワードプレスの構造を知らないといけないし。。。
非常に疑問のプラグイン。
しかも、バグ?もあって、フィールドの値を読み込めなかったり、たまーに意味不明の動きをしてくれて、
無駄な工数を持っていきます。
その場合には、「なぜ動かないんだ?」ではなく、やり直したほうが速いということを言っておきます。
それで、フィールドのエントリーは、やればわかるということで割愛しますけど、
そのACF(アドバンスドカスタムフィールド)のフィールドデータを読み込むプログラム構造を、いっつも忘れてしまうので、記録しておきます。
※他のページで設定してあるフィールドを読み込みたい場合は、各コマンドの後ろにターゲットのページのPOST_IDを指定することで読み込みが可能になります。
例えば、
といった構造の場合、
ワードプレスのカスタムフィールドはプログラムを書くものとしては、かなり厄介な連結構造です。
それを制御して、これだけの機能をのっけてるのはすごいと思います。
でも、それは技術的なことで、利用するプラグインとしては、多少のわがままをクリアできるプラグインです。
知らなければ、他の妥協点でやることを知っているから使ってしまう(使う努力)。
いいような悪いような。。。とりあえず、多くのコードを書かずに作業を定型化できるメリットはあると思います。
データの読み取りパターンも定型的で簡単に使うことができます。
他に必要になる知識としては、テンプレートの切り替え方法ぐらいです。
それでも敷居が高いといえば高いですが(笑)
プルグラムを書くものとしては面白い材料であることは確かです。
いろいろと楽しく使う方法を考えてみましょう。
パソコンに詳しくなくてもデータのエントリーが楽になるということで、かなり評価がいいんですけどね。
便利かといえば、個人的には、あんまり。。。
ただ、よく使う機能などをプログラムにしてWPをデータエントリープログラムとして使うならば、便利かも。
でも、それにPHPが書けないといけないし、ワードプレスの構造を知らないといけないし。。。
非常に疑問のプラグイン。
しかも、バグ?もあって、フィールドの値を読み込めなかったり、たまーに意味不明の動きをしてくれて、
無駄な工数を持っていきます。
その場合には、「なぜ動かないんだ?」ではなく、やり直したほうが速いということを言っておきます。
それで、フィールドのエントリーは、やればわかるということで割愛しますけど、
そのACF(アドバンスドカスタムフィールド)のフィールドデータを読み込むプログラム構造を、いっつも忘れてしまうので、記録しておきます。
ACF(アドバンスドカスタムフィールド)のフィールドをただただ並べたものを読み取る方法
$data = get_field('フィールド名');
※他のページで設定してあるフィールドを読み込みたい場合は、各コマンドの後ろにターゲットのページのPOST_IDを指定することで読み込みが可能になります。
$data = get_field('フィールド名',post_id);
ex.
$data = get_field('フィールド名',12); // post id が 12 のページで投稿したACFのフィールドデータを取り込む
ACF(アドバンスドカスタムフィールド)のグループ内のフィールドを読み取る方法
ポインタを当てる?ために一度 has_sub_field を実行します。if( has_sub_field('グループフィールド名') ){
$data = get_sub_field('グループフィールド内のフィールド名');
:
:
:
}
ACF(アドバンスドカスタムフィールド)の繰り返しフィールド内のフィールドを読み取る方法
ポインタを当てる?ために一度 have_rows で データの有無を確認し have_rows ループ内で the_row を実行しポンタを固めます。if(have_rows('繰り返しフィールドのフィールド名')){
while(have_rows('繰り返しフィールドのフィールド名')){
the_row();
$data = get_sub_field ( '繰り返しフィールド内のフィールド名' );
:
:
:
}
}
例えば、
groupfield : グループ
pictfield : 画像
ingroupfield : テキスト
roopfield : 繰り返し
datafield : テキストroopfield : 繰り返し
loopinfield1 : テキスト
loopinfield2 : 画像
loopinfield2 : 画像
pictfield : 画像
といった構造の場合、
if( has_sub_field('groupfield') ){
$ingroupfield = get_sub_field('ingroupfield ');
if(have_rows('roopfield')){
while(have_rows('roopfield')){
the_row();
$loopinfield1 = get_sub_field ( 'loopinfield1' );
$loopinfield2 = get_sub_field ( 'loopinfield2' );
:
:
:
}
}
}
$datafield = get_field('datafield');
$pictfield = get_field('pictfield');
ACF(アドバンスドカスタムフィールド)のフィールド読み込みまとめ
ワードプレスのカスタムフィールドはプログラムを書くものとしては、かなり厄介な連結構造です。
それを制御して、これだけの機能をのっけてるのはすごいと思います。
でも、それは技術的なことで、利用するプラグインとしては、多少のわがままをクリアできるプラグインです。
知らなければ、他の妥協点でやることを知っているから使ってしまう(使う努力)。
いいような悪いような。。。とりあえず、多くのコードを書かずに作業を定型化できるメリットはあると思います。
データの読み取りパターンも定型的で簡単に使うことができます。
他に必要になる知識としては、テンプレートの切り替え方法ぐらいです。
それでも敷居が高いといえば高いですが(笑)
プルグラムを書くものとしては面白い材料であることは確かです。
いろいろと楽しく使う方法を考えてみましょう。
スポンサーリンク