1. Webフォームの作成

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

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

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

フォーム デザイナーでMVC (ASP.NET MVC) または非MVC (ASP.NET Webフォーム) フォームを作成した後、ユーザーは エクスペリエンス エディターまたはコンテンツ エディターを使用してWebページに挿入できます。

ただし、開発者と管理者は、次の方法で既存のWebフォームをWebページに直接挿入できます。

コンテンツエディターのページに既存のフォームを挿入する

WebフォームはSitecoreレンダリングであるため、コンテンツ エディターに挿入できます。

コンテンツエディターで既存のフォームをページに追加するには:

  1. Content Editorで、Webフォームを追加するアイテムをクリックします。

  2. リボンのPresentationタブのLayoutグループで、Detailsをクリックします。

  3. Layout Detailsダイアログボックスの「Shared Layout」タブで、関連するデバイスを選択し、「Edit」をクリックします。

  4. Device Editorダイアログの左側のペインで、Controlsをクリックし、Addをクリックします。

  5. Select a Renderingダイアログで、Renderings/Modules/Web Forms for Marketersに移動してFormまたはMVC Formを選択し、Add to Placeholderセクションでプレースホルダ名を入力してクリックします。Select.

  6. Device Editorダイアログで、新しいコントロールをクリックし、Editをクリックします。

  7. Control Propertiesダイアログの「Data」セクションの「FormID」フィールドで、ドロップダウン矢印をクリックしてSystem/Modules/Web Forms for Marketers/Websiteフォルダに移動し、関連するWebフォームを選択して、「OK」をクリックします。

  8. Device EditorダイアログとLayout Detailsダイアログで、OKをクリックし、Saveをクリックします。

    選択したフォームが、選択したプレースホルダーのWebサイトに表示されます。

既存のフォームをWebコントロールとしてページに挿入します

Webフォームをレイアウトに静的に追加するには、.aspx.ascx、または .cshtmlレイアウトを使用します。

既存のフォームをWebコントロールとしてページに挿入するには:

  • .aspxまたは.ascxレイアウトの場合:

    • .aspxファイルまたは .ascxファイルを開き、次のコードを名前空間に追加します。

    <%@ Register TagPrefix="wffm" Namespace="Sitecore.Form.Core.Renderings" Assembly="Sitecore.Forms.Core" %>
    • FormRendererタグを追加します。

    <wffm:FormRender  FormID="<id of the form item>" runat="server"/>
  • .cshtmlレイアウトの場合:

    • .cshtmlファイルを開き、次のコードを追加します。

    @{ Sitecore.Mvc.Presentation.RenderingContext.Current.Rendering.Parameters["FormId"] = "<id of the form item>"; }
    @Html.Sitecore().Controller("Sitecore.Forms.Mvc.Controllers.FormController, Sitecore.Forms.Mvc")
    • または、次のコードを使用することもできます。

    @Html.Sitecore().Rendering("{F2CCA16D-7524-4E99-8EE0-78FF6394A3B3}", new { Datasource = "<id of the form item>" , UniqueId = "<unique id of the form rendering>"})

分離コード クラスを使用して既存のフォームをページに挿入します

分離コード クラスを使用して、さまざまな条件に応じてWebフォームを追加できます。

分離コード クラスを使用して既存のフォームをページに挿入するには、次のようにします。

FormRender fr = new FormRender(); 
fr.FormID = "5D9E85F3-5E03-49A7-A136-93269DEA22A7";//form item id
Sitecore.Context.Page.GetPlaceholder("main").Controls.Add(fr);

このサンプル コードでは、指定したIDを含むWebフォームをMainプレースホルダに挿入します。

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