AIサマリー
HTMLフォームフィールド内にショートコードを表示したいですか?デフォルトでは、フォームフィールドはショートコードを受け付けません。このチュートリアルでは、PHP を使ってHTMLフォームフィールドにショートコードを追加できるようにする方法を紹介します。
Shortcodes Ultimateプラグインをインストールする
この例では、無料のプラグインを使ってHTMLフォームフィールドにアコーディオン・ショートコードを追加します。すでにショートコード・プラグインがインストールされていたり、組み込みのショートコードが利用できるかもしれないので、このステップはもちろん任意です。必要なものを自由に使ってください。ただ、以下のオプションのCSSはこのプラグイン専用であることを覚えておいてください。
このチュートリアルで提案されているプラグインを使用する場合は、プラグインをダウンロードしてWordPressサイトにインストールしてください。
あなたのサイトにプラグインを追加する方法については、 WPBeginnerのプラグインをインストールする方法のガイドをチェックするとよいでしょう。
ショートコードの作成
HTMLフィールドに必要なアコーディオン・ショートコードを作成するには、アコーディオン・ショートコードの作成方法に関するドキュメントに従う必要がある。
シンプル・スタイルを使って、アコーディオンのサイズ・チャートの説明を作成します。ショートコードはこのようになります。
<strong>Size chart explained</strong> [su_accordion] [su_spoiler title="X Small" open="no" style="simple"] Size Alpha: XS. Size Numeric: 0-2. Bust(IN): 28-30. Waist(IN): 23-24. [/su_spoiler] [su_spoiler title="Small" style="simple"] Size Alpha: S. Size Numeric: 4-6. Bust(IN): 30-32. Waist(IN): 25-26. [/su_spoiler] [su_spoiler title="Medium" style="simple"] Size Alpha: M. Size Numeric: 8-10. Bust(IN): 32-34. Waist(IN): 27-28. [/su_spoiler] [su_spoiler title="Large" style="simple"] Size Alpha: L. Size Numeric: 12-14. Bust(IN): 36-38. Waist(IN): 30-32. [/su_spoiler] [su_spoiler title="X Large" style="simple"] Size Alpha: XL. Size Numeric: 16-18. Bust(IN): 40-42. Waist(IN): 33-35. [/su_spoiler] [su_spoiler title="XX Large" style="simple"] XXL. Size Numeric: 20-22. Bust(IN): 44-46. Waist(IN): 36-38. [/su_spoiler] [/su_accordion]
HTMLフィールド内にショートコードを表示する
フォームを作成する前に、スニペットをサイトに追加します。
あなたのサイトにスニペットを追加する方法と場所については、こちらのチュートリアルをご覧ください。
/**
* Run shortcodes on HTML field content.
*
* @link https://wpforms.com/developers/how-to-display-shortcodes-inside-the-html-field/
*
*/
function wpf_dev_html_field_shortcodes( $field, $field_atts, $form_data ) {
if ( ! empty( $field[ 'code' ] ) ) {
$field[ 'code' ] = do_shortcode( $field[ 'code' ] );
}
return $field;
}
add_filter( 'wpforms_html_field_display', 'wpf_dev_html_field_shortcodes', 10, 3 );
このスニペットを使うと、WPForms のすべての HTMLフォームフィールドでショートコードを使えるようになります。
フォームの作成
いよいよフォームを作成し、HTMLフォーム・フィールドを追加する。
WPFormsでフォームを作成する方法についてヘルプが必要な場合は、ドキュメントをご覧ください。

HTMLフィールドにショートコードを追加する
では、前のステップのショートコードをコピーして、HTMLフィールドに貼り付けます。
<strong>Size chart explained</strong> [su_accordion] [su_spoiler title="X Small" open="no" style="simple"] Size Alpha: XS. Size Numeric: 0-2. Bust(IN): 28-30. Waist(IN): 23-24. [/su_spoiler] [su_spoiler title="Small" style="simple"] Size Alpha: S. Size Numeric: 4-6. Bust(IN): 30-32. Waist(IN): 25-26. [/su_spoiler] [su_spoiler title="Medium" style="simple"] Size Alpha: M. Size Numeric: 8-10. Bust(IN): 32-34. Waist(IN): 27-28. [/su_spoiler] [su_spoiler title="Large" style="simple"] Size Alpha: L. Size Numeric: 12-14. Bust(IN): 36-38. Waist(IN): 30-32. [/su_spoiler] [su_spoiler title="X Large" style="simple"] Size Alpha: XL. Size Numeric: 16-18. Bust(IN): 40-42. Waist(IN): 33-35. [/su_spoiler] [su_spoiler title="XX Large" style="simple"] XXL. Size Numeric: 20-22. Bust(IN): 44-46. Waist(IN): 36-38. [/su_spoiler] [/su_accordion]
ショートコードの出力外観は、フォームのスタイルによって変更される可能性があります。使用するショートコードのスタイルを必ずテストしてください。

CSSの追加(オプション)
上で述べたように、ショートコードのスタイルの一部は、WPFormsのデフォルト・スタイルのために、あなたが期待するものとは異なる場合があります。 この例では、アコーディオンを開くアイコンのスタイルと位置を設定するためにCSSを追加します。
.wpforms-field .su-accordion {
margin-bottom: 1.5em;
}
.wpforms-field .su-spoiler-style-simple {
border-top: 1px solid #ccc !important;
border-bottom: 1px solid #ccc !important;
}
.wpforms-field .su-spoiler {
margin-bottom: 1.5em !important;
}
.wpforms-field .su-accordion .su-spoiler {
margin-bottom: 0.5em !important;
}
.wpforms-field .su-u-trim>:first-child {
margin-top: 0 !important;
}
.wpforms-field .su-spoiler-style-simple>.su-spoiler-title {
padding: 5px 10px;
background: #f0f0f0;
color: #333;
font-size: .9em;
}
.wpforms-field .su-spoiler-title {
position: relative !important;
cursor: pointer;
min-height: 20px;
line-height: 20px;
padding: 7px 7px 7px 34px !important;
font-weight: 700;
font-size: 13px !important;
}
.wpforms-field .su-spoiler-icon {
position: absolute !important;
left: 7px;
top: 7px;
display: block !important;
width: 20px !important;
height: 20px !important;
line-height: 21px;
text-align: center;
font-size: 14px !important;
font-family: ShortcodesUltimateIcons;
font-weight: 400;
font-style: normal;
-webkit-font-smoothing: antialiased;
}
.wpforms-field .su-spoiler-style-simple>.su-spoiler-content {
padding: 1em 10px !important;
background: #fff;
color: #333;
}
.su-spoiler.su-spoiler-closed>.su-spoiler-content {
height: 0;
margin: 0;
padding-top: 0 !important;
padding-bottom: 0 !important;
overflow: hidden;
border: none;
opacity: 0;
pointer-events: none;
}
.wpforms-field .su-spoiler-content {
padding: 14px !important;
transition: padding-top .2s !important;
-ie-transition: padding-top .2s !important;
}
これで訪問者がフォームを見たとき、フォームのHTMLフィールド内に商品の特徴を示すアコーディオンが表示されるようになります。

これだけで、HTMLフォーム・フィールド内に任意のショートコードを表示することができます。 HTMLフィールドにスマートタグを表示したいですか? HTMLフィールドでスマートタグを処理する方法の記事をご覧ください。