Webページにフォームを追加する

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore Formsでは、新しい空白のフォームを簡単に作成したり、テンプレートを使用したりできます。その後、コンテンツ エディターまたはエクスペリエンス エディターを使用して、フォームをWebページに挿入できます。最初のステップは、デフォルトのサンプルレイアウトを作成したMVCレイアウトに置き換えることです。その後、フォームをWebページに挿入できます。

デフォルトでは、Sitecore Formsには、すべてのフォーム要素 (Website/Views/FormBuilder/FieldTemplates) の基本的な .cshtml Razorファイルが付属しています。これらのファイルをカスタマイズしたり、必要に応じて新しいファイルを追加したりできます。

MVCレイアウトを追加する

Sitecore Formsを正しく機能させるには、まずMVCレイアウトを作成して追加する必要があります。 「MVCとレンダリング」を参照してください

大事な

フォームスクリプトとスタイルは <root>/sitecore modules/Web/ExperienceFormsフォルダに保存され、@Html.RenderFormScripts() ヘルパーと @Html.RenderFormStyles() ヘルパーによって読み込まれます。

フォームに関連付けられたスクリプトとスタイルを正しくレンダリングするには、MVC Layout.cshtmlMVC OuterLayout.cshtmlの2つのレイアウトを使用する必要があります。 MVC OuterLayoutは、Sitecore.ExperienceForms.Mvc.htmlへの参照を追加し、@Html.RenderFormStyles() ヘルパーと @Html.RenderFormScripts() ヘルパーを呼び出すために使用されます。これにより、フォームのJavascriptファイルとスタイルシートに必要な参照が追加されます。

MVCレイアウトを追加するには:

  1. コンテンツ エディターでsitecore/Layoutに移動し、Layoutsを右クリックしてInsertをクリックし、MVC Layoutをクリックします。

    Layouts Insert MVC Layout
  2. ウィザードのNameページで、名前を入力してNextをクリックします。

  3. ウィザードのLocationページで、Sitecoreコンテンツ ツリーで新しいファイルのフォルダー ( Layoutsなど) を選択し、Nextをクリックします。

  4. File Locationページで、Sitecoreウェブルート ファイル構造で新しいファイルを保存する場所を選択し、Createをクリックします。

  5. MVC Layout.cshtmlファイルを開き、Layout = MVC OuterLayout.cshtmlを追加します。MVC Layout.cshtmlファイルには、次のコードが含まれています。

    @using Sitecore.Mvc
    @using Sitecore.Mvc.Analytics.Extensions
    
    @{
        Layout = "Mvc OuterLayout.cshtml";
    
    }
    
    <h1>@Html.Sitecore().Field("title")</h1>
    <div>
        @Html.Sitecore().Placeholder("main")
    </div>
  6. MVC OuterLayout.cshtmlファイルを作成して、WebサイトのViewsフォルダーに追加します。次のコードが含まれている必要があります。

    @using Sitecore.Mvc
    @using Sitecore.ExperienceForms.Mvc.Html
    @using Sitecore.Mvc.Analytics.Extensions
    @{
        Layout = null;
    }
    <!DOCTYPE html>
    <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>@Html.Sitecore().Field("title", new { DisableWebEdit = true })</title>
        @Html.Sitecore().VisitorIdentification()
        @Html.RenderFormStyles()
        @Html.RenderFormScripts()
    </head>
    <body>
        @RenderBody()
    </body>
    </html>

Webページにフォームを挿入する

MVCレイアウトを追加したら、フォームをWebページに挿入できます。

フォームをページに追加するには:

  1. コンテンツエディターで、Webサイトに移動し、フォームを挿入するページをクリックして、PresentationタブでDetailsをクリックします。

  2. Layout Detailsダイアログボックスで、デフォルトのレイアウトをクリックして変更します(次の例では「サンプルレイアウト」)。

    Insert a form in a web page
  3. Device Editorダイアログボックスで、ドロップダウンリストからLayouts/MVC Layoutをクリックします。

    MVC layout
  4. Controlsタブで、既存のコントロールを削除し、Addをクリックします。

  5. Select a Renderingダイアログボックスで、「 Renderings/System/Forms」に移動し、「 MvcForm」をクリックします。

  6. Add to Placeholderフィールドにmainと入力し、Selectをクリックします。

    Add to placeholder
  7. デバイス エディタのControlsタブで、MVCフォーム コントロールをクリックし、Editをクリックします。

  8. Control Propertiesダイアログボックスの「Data Source」フィールドで、ページに追加するフォームを選択し、「OK」をクリックします。

    Add the data source
  9. OKをクリックしてControl Propertiesダイアログ ボックスを閉じ、OKをクリックして デバイス エディター ダイアログ ボックスを閉じ、OKをクリックしてLayout Detailsダイアログ ボックスを閉じます。

  10. 変更を保存し、F9キーを押してサイトを公開します。

    メモ

    公開するには、メインのプレースホルダ定義アイテムを作成し、ページが公開可能である必要があります。

エクスペリエンス エディターでWebページにフォームを追加する

エクスペリエンス エディターでフォームをWebページに挿入できます。これを行うには、ページにMVCレイアウトを使用していること、およびプレースホルダーに対してMvcフォーム コントロールが許可されていることを確認する必要があります。

エクスペリエンスエディターでウェブページにフォームを追加するには:

  1. Mvcフォーム コントロールをプレースホルダ設定に追加するには、コンテンツ エディタでsitecore/Layout/Placeholder Settingsに移動し、プレースホルダ ( mainなど) をクリックします。

  2. DataセクションのAllowed Controlsフィールドで、Editをクリックします。

  3. Select Itemsダイアログボックスで、Mvcフォームをクリックし、「OK」をクリックします。

    Add the MVC control to the placeholder settings.
  4. 変更を保存します。

  5. エクスペリエンス エディターで関連するWebページを開き、Add a new componentをクリックします。

    In Experience Editor, click add a new component.
  6. Add here」をクリックします。

  7. Select a Renderingダイアログボックスで、「 Mvc Form」をクリックし、「 Select」をクリックします。

    Select the Mvc Form component
  8. Select the Associated Contentダイアログボックスで、フォームを選択し、「OK」をクリックします。

    Select your form and click OK.

    フォームがページに追加されます。

    Form displays on page.
この記事を改善するための提案がある場合は、 お知らせください!