Używam Plone 4.1.2 i próbuję zastąpić szablon widoku dostarczony przez collective.contenleadimage. Łatwo edytować podany szablon przez portal_view_customization, ale chcę spróbować zrobić to z mojego produktu polityki w systemie plików.Zastępowanie szablonu widoku innego produktu w Plone
Chciałbym zastąpić folder_leadimage_view z c.contentleadimage.
Oto, co zrobiłem w moim produkcie z zakresu polityki.
w interfaces.py
from zope.interface import Interface
class IExamplePolicy(Interface):
"""Marker interface that defines a Zope 3 browser layer.
"""
w profilach/default/browserlayer.xml
<?xml version="1.0"?>
<layers>
<layer name="example.policy"
interface="example.policy.interfaces.IExamplePolicy" />
</layers>
w przeglądarce/configure.zcml
<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:browser="http://namespaces.zope.org/browser"
xmlns:i18n="http://namespaces.zope.org/i18n"
xmlns:zcml="http://namespaces.zope.org/zcml"
i18n_domain="example.policy">
<browser:page
for="Products.Archetypes.interfaces.IBaseFolder"
name="folder_leadimage_view"
class="collective.contentleadimage.browser.folder_leadimage_view.FolderLeadImageView"
template="folder_leadimage_view.pt"
layer="..interfaces.IExamplePolicy"
permission="zope2.View"
allowed_attributes="tag"
/>
<browser:page
for="Products.CMFPlone.interfaces.IPloneSiteRoot"
name="folder_leadimage_view"
class="collective.contentleadimage.browser.folder_leadimage_view.FolderLeadImageView"
template="folder_leadimage_view.pt"
layer="..interfaces.IExamplePolicy"
permission="zope2.View"
/>
Mój produkt polityka instaluje dobrze i widzę w portal_view_customization
Products.Archetypes.interfaces.base.IBaseFolder
folder_leadimage_view (example.policy.interfaces.IExamplePolicy)
folder_leadimage_view (collective.contentleadimage.interfaces.ILeadImageSpecific)
Jednak mój nowy szablon nie jest jeden świadczonych przez Plone.
Byłbym wdzięczny za pomoc.
Dzięki. To działało dobrze. Sprawdzę podręcznik Zręczności. – h2o