2

Plone 3.x のスキンを開発しています。スキンはデフォルトのテーマとは多くの違いがあるため、デフォルトのスキンを管理モードのままにしたいと考えています。このhttp://maurits.vanrees.org/weblog/archive/2008/01/switch-your-skin-based-on-the-urlのようないくつかのソリューションを読みました。しかし、Web でサブドメインを使用できないため、これらのソリューションを使用できません。

解決策は次のようなものになると思います。

私の main_template.pt:
<tal 条件:"true: 管理者として認証されました" >
''ここに詳細 css
</talを入力してください>

しかし、Plone の正しいシンタックスがわかりません

ありがとうございました。

4

3 に答える 3

1

最後に、このソリューションを使用しました。認証されているかどうかを検出する条件は、tal:condition="not: here/portal_membership/isAnonymousUser" です。したがって、訪問者のみにスタイルシートを使用し、認証されたユーザーには他のスタイルシートを使用できます。そんな感じ:

< style type="text/css" tal:content="string:@import url($portal_url/visitors.css);" media="all" tal:condition="here/portal_membership/isAnonymousUser" />

< style type="text/css" tal:content="string:@import url($portal_url/admin.css);" media="all" tal:condition="not: here/portal_membership/isAnonymousUser" />

たぶんこれは最適な解決策ではないかもしれませんが、私にとってはうまくいきます

于 2010-06-30T10:52:54.167 に答える
1

これはあなたの質問に直接答えるものではありませんが、「Editskin switcher」をご覧になることをお勧めします。

于 2010-06-30T06:31:14.740 に答える
1

あなたのソリューションは機能しますが、もっと良い方法があります。スタイルシートがどのようにインストールされるかについては説明しませんが、それを行う 2 つの方法を次に示します。

いずれかのポリシー製品がある場合は、製品の profile/default/cssregistry.xml に次を入力します。

<object name="portal_css" meta_type="Stylesheets Registry">  
  <stylesheet title="" cacheable="True" compression="safe" cookable="True" enabled="1"  
             expression="here/portal_membership/isAnonymousUser"  
             id="visitors.css"  
             media="all" rel="stylesheet" rendering="import"/>  
  <stylesheet title=""  
             cacheable="True" compression="safe" cookable="True" enabled="1"  
             expression="not:here/portal_membership/isAnonymousUser"  
             id="admin.css"  
             media="all" rel="stylesheet" rendering="import"/>  
</object>

また; ZMI (Zope 管理インターフェース) の「portal_css」にアクセスしてください。上記の 2 つのスタイルシートを「追加」することで、同じことができます。「条件」は、上記の「式」の値です。

これらは同じものです - 1 つは Web を介して設定し、もう 1 つは GenericSetup を介して設定するだけです - そして今、Plone は main_template.pt を変更する必要なく、いずれかの css ファイルをすべてのページに自動的に組み込みます。これは、決して、決して、してはいけないことです。

于 2011-03-09T15:39:19.693 に答える