1

plone 4.0.1 + collective.xdv 1.0rc11 を使用していますが、別のテーマを使用する必要があります。

最近の質問/回答で説明されているようにしようとしていますが、条件付きで新しいテーマを挿入すると、デフォルトのテーマがまったく変換されません。私が試したもののいくつかの例を次に示します。

<rules css:if-content="body.section-mysection">
    <theme  href="mysection.html" />
</rules>

これは次で終わります:

Traceback (innermost last):
  Module ZPublisher.Publish, line 132, in publish
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 138, in subscribers
  Module zope.component.registry, line 323, in subscribers
  Module zope.interface.adapter, line 575, in subscribers
  Module plone.transformchain.zpublisher, line 93, in applyTransformOnSuccess
TypeError

これらの間:

<theme  href="mysection.html" if-path="/mysection/"/>

<theme  href="mysection.html" css:if-content="body.section-mysection"/>

どちらも特定のセクションでは機能しますが、ポータルの残りの部分ではまったく変換されません。

rules.xml でデフォルトのテーマも指定しようとしましたが (既に @@xdv-settings に登録されていても)、<theme href="index.html" />うまくいきませんでした。

ここで何が欠けていますか?

前もってありがとう、SimO

4

2 に答える 2

2

まず、plone.app.themingに移ることを検討します。アップグレード/変更は私が理解しているようにかなり些細なことであり(http://pypi.python.org/pypi/plone.app.theming#migrating-from-collective-xdv)、pathemingは開発されたすべての最新かつ最高の機能を提供しますcollective.xdvの下。

次に、このドキュメントを参照します。

最初にデフォルトのテーマを設定してから、条件を追加して、条件が一致したときに適切なセクションを変更する必要があるようです。追加の一致したテーマは、「デフォルト」(最初に一致した)テーマに影響を与えないようにする必要があります。

于 2011-05-05T02:12:18.747 に答える
1

セットアップと特定の問題を完全に理解しているかどうかわからないので、実際の例を投稿します。注: xdv コントロール パネルでは値を使用しません。いずれにせよdefault theme廃止されるためplone.app.themingです。また、特定の問題/ユースケースに関連する可能性のある rules.xml でテーマ テンプレートを直接設定することにも干渉しているようです。

<rules
xmlns="http://namespaces.plone.org/xdv"
xmlns:css="http://namespaces.plone.org/xdv+css"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<theme css:if-content="body.section-front-page" href="frontpage.html"/>
<theme css:if-content="body.section-contact" href="contact.html"/>

<!-- Only style actual Plone page and exclude things like /manage -->
<rules css:if-content="#visual-portal-wrapper">

    <!-- default theme templates -->
    <theme href="theme.html" />
    <!-- Add your default transform rules here -->
    <rules css:if-content="body.section-contact">
        <!-- Theme template is already setup on top of this file -->
        <!-- Add section specific rules here -->
        <drop css:theme="#sidebar" />
    </rules>
</rules>
</rules>

これらのルールは、diazo/plone.app.theming で必要とされる設定に可能な限り近く、わずかな調整 (名前空間の修正と / の検索/置換appendなど) が必要なだけですafter- この例が持ち出されたサイトを移行したところです。大きな欠点なしで Plone4.1/diazo に。

于 2011-05-04T12:15:22.177 に答える