1
我正在使用第三方產品,它提供了一個過於普遍的plone.uuid.interfaces.IUUIDAware
上下文的viewlet,所以它實際上出現在所有東西上。我想重寫此限制它在我的網站上的特定內容類型。覆蓋viewlet不太普遍
我試着加入以下聲明,以在站點包都configures.zcml
和overrides.zcml
:
<browser:viewlet
name="other.product.viewlet"
for="my.site.interfaces.ICustomContentType"
manager="plone.app.layout.viewlets.interfaces.IAboveContentBody"
class="other.product.ViewletClass"
template="browser/copy_of_product_viewlet.pt"
layer="my.site.interfaces.ISiteLayerMarker"
permission="zope2.View"
/>
然而,它似乎並沒有更換該產品提供了一個(我不知道如何參考產品中的模板,從網站包中覆蓋,這樣就製作了本地副本)。
兩個'configure.zcml'和'overrides.zcml'嘗試這個。它添加了綁定到站點包定義圖層的特定類的自定義視圖(現在有兩個,包括另一個包提供的圖層),並且沒有從其他所有'IUUIDAware'對象中刪除原始視圖。我已經更新了問題以顯示圖層綁定。 –