Поскольку я не могу опубликовать код, я задаю это как теоретический вопрос, но даю сценарий.
У меня есть подслой "newsroom", который статически связывает пару XSLT для отображения последних новостей и последних событий. Подслой используется в элементе новостей, события и новости являются его потомками (хотя это и не прямые дочерние элементы, существует несколько слоев папок для классификации и датирования элементов).
В нашем решении подпроект используется примерно на 10 сайтах без проблем. Каждый сайт является клоном нашего основного сайта с добавленной дополнительной языковой версией. Мы успешно использовали это с (среди прочего) сайтами на японском, китайском, русском, польском и чешском языках.
Однако наш самый последний клон (турецкий) не отображает никаких элементов в списке событий или новостях. Элементы существуют, публикуются и отображаются, как ожидается, при просмотре по отдельности.
Детали представления для элемента редакции идентичны всем остальным элементам редакции.
Еще более озадачивает то, что сам элемент newsoom при отображении в контексте другого домена отображается правильно.
т.е.
www.mysite.com/sitecore/content/my_turkish_site/path/newsroom?sc_lang=tr-TR
показывает списки без проблем, включая даты, отформатированные в соответствии с культурой, но
www.mysite.com.tr/sitecore/content/my_turkish_site/path/newsroom?sc_lang=tr-TR
показывает пустые списки.
Точно такая же проблема возникает, если язык переключается на английский (язык источника клона)
Почти весь турецкий сайт работает нормально.
Ни один из компонентов презентации не помечен как кэшируемый.
Ни один из компонентов представления не имеет указанного источника данных (т. Е. Все они используют ось текущего элемента / потомков)
Каковы возможные причины этой проблемы и как их проверить?
EDIT:
Для Марка Урсино
Это определение сайта (слегка вымышленное). Я не могу опубликовать гораздо больше web.config ...
<site name="www.mysite.com.tr" patch:after="site[@name='www.mysite.com.au']" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/CloneData/TurkishClone" hostName="www.mysite.com.tr" startItem="/Turkey_Home" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" language="tr-TR" />
Некоторые отладки показывают, что XSLT не соответствуют шаблону при просмотре элемента в турецком контексте.
Это использованное совпадение отладки (выбор - это то, что мы используем в нашем for-each):
<xsl:value-of select="count(./descendant::item[@template='newsitem' and @id!=$topNewsId and sc:fld('__created',.)])"/>
Он совпадает с тем же элементом, который просматривали в других доменах.
Результаты отладки показывают, что турецкий сайт думает, что шаблон newsıtem
вместо newsitem
(я ошибаюсь!).
Я также протестировал просмотр новостной ленты других сайтов через турецкий домен - проблема та же.
У нас та же проблема с элементами на основе шаблона eventitem и, очевидно, с шаблоном Image Spot.