WordPressをカスタマイズするプラグインとして定着しているAdvanced Custom Fieldsのテキストエリアを設定・表示する方法を解説します。
いきなりですが、Advanced Custom Fieldのテキストエリアを出力するためには、テンプレートに以下のコードを挿入するだけです。
1 |
<?php the_field('フィールド名'); ?> |
例えば、フィールド名が「test」だった場合は、
1 |
<?php the_field('test'); ?> |
となります。
あとは、デザインを施したい場合は、pタグで囲んだり、divタグで囲んだりするだけです。
因みに、ほとんどのAdvanced Custom Fieldのフィールドの出力は上記のthe_feild(‘フィールド名’)で出力できるので、テキストエリア以外のフィールドを出力する時にも一度the_feild(‘フィールド名’)で試してみるのが早いかも知れないですね。(また、配列を使う必要があるものは、一度変数に値を代入してから、foreach()などの繰り返し処理の関数を使って処理するケースもあります。)
次に、Advanced Custom Fieldのテキストエリアを使用する場合の設定項目について解説します。
Advanced Custom Fieldのテキストエリアの項目の解説。
フィールドラベル
フィールドラベルは編集ページに表示されるテキストになります。目次や解説的な意味で使用されることになる項目です。どんな意味合いのエリアかを分りやすく書くと投稿をする人も使いやすくなります。
フィールド名
フィールド名は、「テキストエリア」設定後に、phpで呼び出すための名前。名前は分りやすい名前を付けておけばOKです。他にもフィールドを設定する場合に混同しないように、はっきりと区別がつくフィールド名にしておくのがおすすめ。
フィールドタイプ
フィールドタイプは「テキストエリア」を選択。これでAdvanced Custom Fieldのテキストエリアのフィールドタイプを使用することができるようになります。ここをテキストエリア以外にしてしまうと、当たり前ですが、テキストエリアのフィールドが使えなくなります(^-^;)
説明
管理画面で「テキストエリア」の説明をする項目になります。投稿者に何を入力するかを説明する目的で使われます。
導入部分に使うのであれば「導入」、メインコンテンツとして使うのであれば「メインコンテンツ」、まとめとして使うのであれば「まとめ」といった説明したおくと、投稿する人にも分りやすくなると思います。
必須か?
投稿する際、「テキストエリア」は必須ではありませんが、必須とすることも可能です。必須にする場合は、「いいえ」ではなく「はい」の状態になります。
もし、必須にしたいテキストエリアがある場合は必須としておきましょう。
デフォルト値
入力欄に初期値として入力されるテキストになります。新規の投稿をする際に表示される欄になります。
上記で解説した「説明」をデフォルト値に設定しておいても良いかも知れないですね。
プレースホルダーのテキスト
入力欄の初期値を削除すると表示されるテキストになります。正直あまり意味がある項目ではないような気がしますが、投稿者に対して向けて「ここに入力」といったようなメッセージを書いておいても良いかも知れないですね。
制限文字数
「テキストエリア」に入力する文字数を制限します。空白の場合は制限なく入力することができます。
テキストエリアに文字数を制限することはあまりないと思います。
なので、この項目は何か理由がない限りは空白で問題ないでしょう。
行数
行数はテキストエリアの入力欄の大きさになります。
デフォルトでは8行となっていますが、特に入力欄を大きくしたい場合を除けば、デフォルトの8行で特に問題はないと思います。
改行
改行はテキストエリアに入力した文字列を自動的に改行してくれる機能になります。
選択肢は「自動的に段落に変換」「自動的にに変換」「なにもしない」の3つがありますが、おすすめの設定は「自動的に段落に変換」。
「テキストエリア」に入力した文字列を改行によって「自動的に段落に変換」しておくと、コード上も意味のあるコードになりやすくなります(ここでいうコード上とはSEO上という意味です)。
「自動的にに変換」でも悪くはないですが、1つの文章の塊を1つの意味として捉えにくくなります。テキストエリア全体で1つの意味として捉えられれば問題ないという場合は、それで問題ないですが、必ずしもテキストエリア全体で1つの意味になるとは限らないことを考えるとやはり「自動的に段落に変換」と設定しておくのがベターですね。
条件判定
条件設定にはフィールドを管理画面に表示するか表示しないかの条件を設定する項目になります。(実際に公開したページではなくて管理画面に表示するか否かの条件判定です。)
1つの条件設定としては、今設定しようとしているフィールド以外のフィールドを対象として、そのフィールドに対して条件を決める項目が7つあります。
フィールドに対して条件を決める項目 | 内容説明 |
Has any value | 何らかのvalue(データ)が入力されていれば表示。 |
Has no value | 何のvalue(データ)も入力されていなければ表示。 |
Value is equal to | 何らかの入力する内容と完全に一致すれば表示。 |
Value contains | 何らかのデータが含まれている場合に表示。 |
Value is greater than | 条件に指定したフィールドが数値やRangeの場合、指定以上の数値を入力した場合に表示。 |
Value is less than | 条件に指定したフィールドが数値やRangeの場合、指定以下の数値を入力した場合に表示。 |
Value matches pattern | 条件に指定したフィールドの文字列や数値などが一致していれば表示します。正規表現も使えるので、柔軟に設定することができます。 |
そして、この条件判定は追加設定ができるので、細かな設定が可能になっています。
ただ、おそらくほとんどの人はあまり使わないと思いますが・・・。
ラッパーの属性
ラッパーの属性は、管理画面上で表示するエリアの大きさを決めるものです。
デフォルトでは、管理画面上で問題のない大きさで表示されます。こちらはデフォルトのままでまず問題ないでしょう。
Advanced Custom Fieldのテキストエリアを設定・出力まとめ
Advanced Custom Fieldのテキストエリアの出力から始まり、設定についても解説しましたが、実際に少し触ってみると結構簡単にできます。
一番最初は少し取っつきにくい部分もあると思いますが、プログラム言語としてのphpに関しては、を投稿のテンプレートに入れるだけなので特に難しくありません。