Activer la mise en cache de la sortie d’en-tête et de pied de page sur un portail
Notes
À compter du 12 octobre 2022, le portail Power Apps devient Power Pages. Plus d’informations : Microsoft Power Pages est maintenant généralement disponible (blog)
Nous allons bientôt migrer et fusionner la documentation des portails Power Apps avec la documentation de Power Pages.
Pour améliorer les performances de traitement des modèles Web En-tête et Pied de page dans un portail, activez la mise en cache de la sortie d’en-tête et de pied de page. Les modèles Web En-tête et Pied de page sont analysés et affichés chaque fois qu’une page est chargée. La mise en cache de la sortie d’en-tête et de pied de page réduit considérablement le temps de traitement des pages.
Pour un nouvel utilisateur, la mise en cache de la sortie est activée par défaut. Les paramètres de site suivants sont disponibles et définis sur true par défaut pour prendre en charge cette fonctionnalité :
- Header/OutputCache/Enabled : définissez la valeur sur true pour activer la mise en cache de la sortie pour l’en-tête.
- Footer/OutputCache/Enabled : définissez la valeur sur true pour activer la mise en cache de la sortie pour le pied de page.
Pour un utilisateur qui a mis à niveau vers une nouvelle version des portails, la mise en cache de la sortie est désactivée par défaut, en d’autres termes, les modèles web En-tête et Pied de page sont analysés et affichés à chaque chargement de page. Pour activer la mise en cache de la sortie, vous devez mettre à jour les modèles Web En-tête, Pied de page et Liste déroulante de langues et créer les paramètres de site requis.
Notes
Si vous activez la mise en cache de la sortie uniquement en créant des paramètres de site, des parties de l’en-tête et du pied de page ne s’afficheront pas correctement et un message d’erreur apparaîtra.
Activer la mise en cache de la sortie d’en-tête et de pied de page pour un utilisateur existant
Étape 1 : mettre à jour le modèle Web En-tête
Ouvrez l’application Gestion du portail.
Accédez à Paramètres > Modèles.
Ouvrez le modèle Web En-tête.
Mettez à jour le code dans le champ Source :
Recherchez le code suivant et mettez-le à jour :
Code existant
<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>
Code mis à jour
<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>
Recherchez le code suivant et mettez-le à jour :
Code existant
{% 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 %}
Code mis à jour
{% 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 %}
Enregistrez le modèle Web.
Étape 2 : mettre à jour le modèle Web Pied de page
Ouvrez l’application Gestion du portail.
Accédez à Paramètres > Modèles.
Ouvrez le modèle Web Pied de page.
Dans le champ Source, recherchez le code suivant et mettez-le à jour :
Code existant
<section id=gethelp class=page_section section-diagonal-right color-inverse {% if page %}{% unless page.parent %}home-section{% endunless %}{% endif %} hidden-print>
Code mis à jour
<section id=gethelp class=page_section section-diagonal-right color-inverse {% substitution %}{% if page %}{% unless page.parent %}home-section{% endunless %}{% endif %}{% endsubstitution %} hidden-print>
Enregistrez le modèle Web.
Étape 3 : mettre à jour le modèle Web Liste déroulante de langues
Ouvrez l’application Gestion du portail.
Accédez à Paramètres > Modèles.
Ouvrez le modèle Web Liste déroulante de langues.
Dans le champ Source, recherchez le code suivant et assurez-vous que les objets
language
utilisent l’attributurl.substitution
au lieu deurl
:<a href=/{{ language.url_substitution }} title={{ language.name }} data-code={{ language.code }}>{{ language.name }}</a>
Enregistrez le modèle Web.
Étape 4 : créer les paramètres de site
Créez les paramètres de site suivants :
Nom | Valeur |
---|---|
Header/OutputCache/Enabled | True |
Footer/OutputCache/Enabled | True |
Notes
Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)
Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).