4 votes

Problèmes de détection de la différence entre l'aperçu du CMS et l'aperçu dynamique dans 2012 UI/XM

J'ai un code de template (2011 SP1) qui détecte si un CMS Preview est utilisé en vérifiant engine.RenderMode (ce qui serait PreviewDynamic ). Cela garantirait que les éléments qui seraient normalement ajoutés par le serveur d'applications pour les pages publiées (comme les CSS, JS, les éléments de navigation, etc.) sont injectés dans la sortie rendue afin que l'aperçu soit agréable à regarder dans le CMS.

L'UI/XM de Tridion 2012 crée des fichiers temporaires pour la prévisualisation dynamique et il s'avère que lors de la publication de ces fichiers, le mode de rendu est également PreviewDynamic ce qui me pose un problème car dans la situation où la page est effectivement publiée, je ne veux pas injecter de choses (le serveur d'applications s'en charge avec une page maître .NET dans ce cas).

En regardant les valeurs possibles pour RenderMode dans l'API .NET, nous avons Publish , PreviewStatic y PreviewDynamic .

Mes questions sont donc les suivantes :

  1. Comment puis-je faire la différence entre l'aperçu CMS et l'aperçu DYnamic dans le code du modèle ?
  2. Quand (le cas échéant) le RenderMode est-il utilisé ? PreviewStatic ?

5voto

Will Points 745

J'ai une solution partielle (pour la première question). Si vous utilisez une combinaison de RenderMode et le engine.PublishingContext.PublicationTarget vous pouvez détecter l'aperçu du CMS, l'aperçu dynamique et la publication normale :

  • Aperçu du CMS - RenderMode : DynamicPreview PublicationTarget:null
  • Dynamic Preview - RenderMode : DynamicPreview PublicationTarget:not null
  • Normal Publish - RenderMode : Publish PublicationTarget : non nul

Je ne sais toujours pas quand PreviewStatic est utilisé... ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X