Как переопределить popup.pt в Plone?

Мне удалось изменить исходный popup.pt и увидеть изменения в моем экземпляре, но когда я пытаюсь переопределить его, скопировав и переименовав его в archetypes.referencebrowserwidget.browser.popup.pt в моей теме/(надстройке), переопределяет папка Я не могу увидеть свои изменения.

Я переопределил вьюлет класса path_bar, следуя этому учебнику. . Я попытался следовать той же логике для переопределения popup.pt, но мне не удалось заставить Plone увидеть файл в моем configure.zcml.

configure.zcml:

<configure
    xmlns="http://namespaces.zope.org/zope"
    xmlns:i18n="http://namespaces.zope.org/i18n"
    xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
    xmlns:browser="http://namespaces.zope.org/browser"
    xmlns:plone="http://namespaces.plone.org/plone"
    i18n_domain="mytheme.theme">

    <includeDependencies package="." />

    <plone:static
    directory="resources"
    type="theme"
    />

    <genericsetup:registerProfile
           name="default"
           title="mytheme.theme"
           directory="profiles/default"
           description="Installs the mytheme.theme package"
           provides="Products.GenericSetup.interfaces.EXTENSION"
     />

    <browser:viewlet
         name="plone.path_bar"
         manager="plone.app.layout.viewlets.interfaces.IAboveContent"
         class=".customizations.PathBarViewlet"
         permission="zope2.View"
         layer=".interfaces.IMyTheme"
    />      

   <browser:page
       name="login_main_template"
       for="*"
       permission="zope.Public"
    template="login_main_template.pt"
   />  
</configure>

При поиске решения я нашел этот вопрос Stackoverflow - Как настроить шаблон popup.pt из archetypes.referencebrowserwidget?. Я добавил/:

<include package="z3c.jbot" file="meta.zcml" />
<browser:jbot directory="jbot_templates" layer=".browser.interfaces.IThemeSpecific" />

на мой configure.zcml и удалил browser:viewlet из моей предыдущей попытки, но я так и не смог заставить Plone увидеть мой обзор.

Какой метод мне нужно использовать для переопределения, вьюлет класса, z3c.jbot или просто стандартный метод копирования/переименования? Я прочел документацию по Plone несколько раз, но так и не смог решить свою проблему. Если мне нужно опубликовать какие-либо дополнительные файлы, пожалуйста, дайте мне знать.

Заранее спасибо.


person Herr Josua    schedule 31.10.2013    source источник


Ответы (1)


Подход z3c.jbot обычно работает нормально. Вы должны быть уверены, что файл, который вы помещаете в свою папку jbot_templates, имеет правильное имя. Путь к popup.pt archetypes/referencebrowserwidget/browser/popup.pt, поэтому в вашем случае имя файла должно быть archetypes.referencebrowserwidget.browser.popup.pt

Пожалуйста, убедитесь, что ваш браузер .interfaces.IMyTheme активен на вашем сайте -> browserlayer.xml

person Mathias    schedule 01.11.2013