legacy-knowledge-base
公開されました Jul. 2, 2025

ジャーナル記事のドロップダウン メニュー (Web コンテンツのドロップダウン メニュー) にカスタム アイテムを追加する

written-by

Phil Chapman

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • Web コンテンツのドロップダウン メニューで、独自のカスタム アイテムを構成する方法はありますか?

  • このブログ で見られる ドキュメント ライブラリ の例では、 DLDisplayContextFactory 拡張ポイントを利用しています。 Web コンテンツに相当するものはありますか?

Environment

  • DXP 7.3

解決策

  • Web コンテンツの DLDisplayContextFactory のような同等の拡張ポイントはありません。 現在、 は認識されている製品の制限です。

  • ただし、市場のオーバーライドを開発することと機能的に同等である JournalArticleActionDropdownItemsProviderの Liferay ソース コードを代わりに直接変更することにより、意図した必要性 理論的には可能です。

    参考 に、このコミットを使用して変更をモデル化できます。 機能するカスタム アイテムを取得するには、 JournalDisplayContext および JournalArticleActionDropdownItemsProvider が使用されます。 これは、 view_entries.jsp を見ることで確認できます。ここでは、以下を使用してドロップダウン メニューの Clay 実装を呼び出しています

    <liferay-ui:search-container-column-text>
    <clay:dropdown-actions
    defaultEventHandler="<%= JournalWebConstants.JOURNAL_ELEMENTS_DEFAULT_EVENT_HANDLER %>"
    dropdownItems="<%= journalDisplayContext.getArticleActionDropdownItems(curArticle) %>"
    />
    </liferay-ui:search-container-column-text>

    リストは、 getArticleActionDropdownItems 使用して生成され、 DropdownItemsProviderによって生成されます。

    JournalArticleActionDropdownItemsProvider 、アイテムがドロップダウン メニューに追加される場所であり、そこからさらにトレースするために使用できます。

    参照:
    - com.liferay.frontend.taglib.clay.servlet.taglib.util.DropdownItem
    - com.liferay.frontend.taglib.clay.servlet.taglib.util.DropdownItemList;
    - com.liferay.frontend.taglib.clay.servlet.taglib.util.DropdownItemListBuilder;
    - com.liferay.journal.web.internal.servlet.taglib.util.JournalArticleActionDropdownItemsProvider
    - modules\apps\journal\journal-web\src\main\resources\META-INF\resources\view_entries.jsp
    - ElementsDefaultEventHandler

    注: 明確にするために、マーケットプレイスのオーバーライドは文書化された拡張ポイントを利用しません。 マーケットプレイスのオーバーライドは、特定のニーズを達成するために Liferay の動作を強制的にオーバーライドします。

追加情報

  • Web コンテンツのこの機能に対する機能要求が提起されました。 これは ここに続きます。
did-this-article-resolve-your-issue

legacy-knowledge-base