ヘッダーとフッターの出力キャッシュを有効にする
Power Pages の ヘッダー および フッター Web テンプレートのプロセス パフォーマンスを向上させるため、ヘッダーとフッターの出力キャッシュを有効にします。 ヘッダーおよびフッター Web テンプレートは、ページの読み込まれるたびに解析および表示されます。 ヘッダーおよびフッターの出力キャッシュは、著しくページ処理時間を短縮します。
ヘッダーとフッターのテンプレートは、Web サイト レコードの オプション セクションにある ヘッダー テンプレート と フッター テンプレート のフィールドによって決まります。 ヘッダーまたはフッターのテンプレートが指定されていない場合は、デフォルトのヘッダーとフッターが表示されます。
この記事で説明されている {% substitution %}
タグを利用する、カスタムのヘッダーおよびフッターの Web テンプレートを作成できます。
すべての新しいユーザーの場合、出力キャッシュがデフォルトで有効になります。 次のサイト設定は利用可能であり、この機能をサポートするのに既定で true に設定されます。
- Header/OutputCache/Enabled: ヘッダーの出力キャッシュを有効にするため、値を true に設定します。
- Footer/OutputCache/Enabled: フッターの出力キャッシュを有効にするため、値を true に設定します。
新しいバージョンの Power Pages にアップグレードした場合、既定で出力キャッシュは無効になります。つまり、ヘッダー および フッター の Web テンプレートは、ページが読み込まれるたびに解析および表示されます。 出力キャッシュを有効にするには、ヘッダー、フッター、言語ドロップダウン の Web テンプレートを更新し、必要なサイト設定を作成する必要があります。
注意
サイト設定の作成のみで出力キャッシュを有効にする場合、ヘッダーおよびフッターの一部が適切に表示せず、エラー メッセージが表示されます。
既存 Web サイトに対するヘッダーとフッターの出力キャッシュを有効にする
手順1: ヘッダー Web テンプレートの更新
ポータル管理アプリを開きます。
コンテンツ>Web テンプレート の順に移動します。
ヘッダー Web テンプレートを開きます。
ソース フィールドで次のコードを更新します。
次のコードを検索して更新します。
既存コード
<li> <a href={% if homeurl%}/{{ homeurl }}{% endif %}/Account/Login/LogOff?returnUrl={{ request.raw_url_encode | escape }} title={{ snippets["links/logout"] | default:resx["Sign_Out"] | escape }}> {{ snippets["links/logout"] | default:resx["Sign_Out"] | escape }} </a> </li> </ul> </li> {% else %} <li> <a href={% if homeurl%}/{{ homeurl }}{% endif %}/SignIn?returnUrl={{ request.raw_url_encode }}> {{ snippets["links/login"] | default:resx["Sign_In"] }} </a> </li>
更新済みコード
<li> <a href={% if homeurl%}/{{ homeurl }}{% endif %}{{ website.sign_out_url_substitution }} title={{ snippets["links/logout"] | default:resx["Sign_Out"] | escape }}> {{ snippets["links/logout"] | default:resx["Sign_Out"] | escape }} </a> </li> </ul> </li> {% else %} <li> <a href={% if homeurl%}/{{ homeurl }}{% endif %}{{ website.sign_in_url_substitution }}> {{ snippets["links/login"] | default:resx["Sign_In"] }} </a> </li>
次のコードを検索して更新します。
既存コード
{% assign current_page = page.adx_partialurl %} {% assign sr_page = sitemarkers[Search].url | remove: '/' %} {% assign forum_page = sitemarkers[Forums].url | remove: '/' %} {% if current_page == sr_page or current_page == forum_page %} <section class=page_section section-landing-{{ current_page }} color-inverse> <div class=container> <div class=row > <div class=col-md-12 text-center> {% if current_page == sr_page %} <h1 class=section-landing-heading>{% editable snippets 'Search/Title' default: resx["Discover_Contoso"] %}</h1> {% include 'Search' %} {% endif %} </div> </div> </div> </section> {% endif %}
更新済みコード
{% substitution %} {% assign current_page = page.id %} {% assign sr_page = sitemarkers[Search].id %} {% assign forum_page = sitemarkers[Forums].id %} {% if current_page == sr_page or current_page == forum_page %} {% assign section_class = section-landing-search %} {% if current_page == forum_page %} {% assign section_class = section-landing-forums %} {% endif %} <section class=page_section section-landing-{{ current_page }} {{ section_class | h }} color-inverse> <div class=container> <div class=row > <div class=col-md-12 text-center> {% if current_page == sr_page %} <h1 class=section-landing-heading>{% editable snippets 'Search/Title' default: resx["Discover_Contoso"] %}</h1> {% include 'Search' %} {% endif %} </div> </div> </div> </section> {% endif %} {% endsubstitution %}
Web テンプレートを保存します。
手順 2: フッター Web テンプレートの更新
ポータル管理アプリ を開きます。
コンテンツ>Web テンプレート の順に移動します。
フッター Web テンプレートを開きます。
ソースフィールドで、次のコードを検索して更新します。
既存コード
<section id=gethelp class=page_section section-diagonal-right color-inverse {% if page %}{% unless page.parent %}home-section{% endunless %}{% endif %} hidden-print>
更新済みコード
<section id=gethelp class=page_section section-diagonal-right color-inverse {% substitution %}{% if page %}{% unless page.parent %}home-section{% endunless %}{% endif %}{% endsubstitution %} hidden-print>
Web テンプレートを保存します。
手順 3: 言語ドロップダウン Web テンプレートの更新
ポータル管理アプリ を開きます。
Web サイト>Web テンプレートの順に移動します。
言語ドロップダウン Web テンプレートを開きます。
ソース フィールドで、次のコードを見つけて、
language
オブジェクトはurl
の代わりにurl.substitution
属性を使用します:<a href=/{{ language.url_substitution }} title={{ language.name }} data-code={{ language.code }}>{{ language.name }}</a>
Web テンプレートを保存します。
手順 4: サイト設定の作成
次のサイト設定を作成します。
件名 | 値 |
---|---|
Header/OutputCache/Enabled | 正 |
Footer/OutputCache/Enabled | 正 |