1

私はploneサイトにnavtreeを持っており、すでにこの構成を使用しています:

navigation = mapping['navigation']
navigation.includeTop = True
navigation.currentFolderOnly = False
navigation.topLevel = 0
navigation.setProperty('metaTypesNotToList', ['ATBooleanCriterion', ...(another types go here) ..., MemberDataContainer'])
navigation.setProperty('idsNotToList',['Members', 'events'])

これにより、このリンクを一覧表示するNavTreeポートレットが作成されますidsNotToListnavtree_properties

  • ホーム(このIDは/ rootだと思いますが、誰かがここで私を助けて、オプションから得られた正確なIDは何であるかを教えてくれますnavigation.includeTop=True:)
  • 助けて)
  • 参考文献で検索(/ searchbibliography)
  • 統計(/ statistics)

今私が欲しいのは、この別のリスト(IDから)をパターンとして使用してこのnavtreeをソートすることです:

['root', 'searchbibliography', 'help', 'statistics']

NavTreeの順序がこの指定されたリストの順序とまったく同じように表示され、次のようなリンクが表示されます。

  • 参考文献で検索
  • ヘルプ
  • 統計学

ここにはアルファベット順がないことがわかります。正確に特定の順序があります。

だから、どうすればこれを行うことができますか?

4

1 に答える 1

3

解決済み: ルート ページの ID はfront-page
、製品のインストールの下で実行することで解決できます。

def install(portal):
    portal = getToolByName(portal, 'portal_url')
    portal = portal.getPortalObject()

    portal.moveObjectsToTop(['front-page', 'searchbibliography', 'help', 'statistics'])
    portal.plone_utils.reindexOnReorder(portal)

ポータルを注文するfolder_contentsと、ナビゲーション ポートレットが自動的に注文されます (ポータル フォルダー (つまり、folder_contents) と同じ順序を使用します)。

于 2010-09-08T21:29:23.400 に答える