3

パフォーマンスの微調整が必​​要なプロジェクトで Plone 3.1.7 を使用しています。微調整の 1 つは、CSS をページの上部に配置し、JS をページの下部に配置するように要求します。ただし、どちらも次の場所にあります

<div tal:replace="structure provider:plone.htmlhead" />

main_template で。これらをどのように分割しますか?

前もって感謝します

4

5 に答える 5

3

私の同僚は解決策を見つけました:

plone.htmlhead は製品 plone.app.layout によって登録されたビューレットで、他の 3 つのビューレットをロードします。

  • plone.resourceregistries.styles
  • plone.resourceregistries.scripts
  • plone.resourceregistries.kineticstylesheets

HEADタグに以下を入れます。

<div tal:replace="structure provider:plone.resourceregistries.styles" />

そして、一番下に次のとおりです。

<div tal:replace="structure provider:plone.resourceregistries.scripts" />
<div tal:replace="structure provider:plone.resourceregistries.kineticstylesheets" />

終わり!CSS はページの上部に配置され、JS はページの下部に配置されます。

于 2010-03-11T13:22:47.397 に答える
0

これは Products.ResourceRegistries の一部の最近のバージョンの既知のバグでした。この問題は 2.02b リリースで修正されています。ビルドアウトでそのバージョンを固定できます。

[versions]
    ...
    Products.ResourceRegistries == 2.02b
    ...

その後、buildout を再実行すると、この問題はなくなります。

于 2010-03-17T05:39:57.423 に答える
0

head タグに加えて

<div tal:replace="structure provider:plone.resourceregistries.styles" />

入れました

<title tal:define="page_title python: context_state.object_title()"
       tal:content="page_title">page title</title>

....
しかし、実際には、キーワードに関連するすべてのメタタグを失ってしまいました。

于 2011-07-29T15:38:08.060 に答える
0

plone.htmlhead 分割を 3 つのビューレットに置き換えるという上記の提案は、ページ タイトルを失った (SEO には適していない) ため、完全には機能しませんでした。ページタイトルも plone.htmlhead に含まれているのが普通だと思います。

より良い解決策は、ビルドアウト行がわずかに間違っていることを除いて、上記で提案された新しい Products.ResourceRegistries を使用することです。以下は私のために働いた:

[バージョン]

...
Products.ResourceRegistries=2.0b3
...
于 2010-06-02T12:59:41.953 に答える