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

AlloyEditorでCKEditorプラグインボタンを使用する

投稿者

Georgel Pop

knowledge-article-header-disclaimer-how-to

knowledge-article-header-disclaimer

legacy-article

learn-legacy-article-disclaimer-text

問題

Environment

  • DXP 7.0、DXP 7.1、DXP 7.2、DXP 7.3

解決策

  • 解決策は、この extraPluginscolorbutton:の構成を することです。
    "ae_uibridge,ae_richcombobridge,ae_panelmenubuttonbridge,ae_menubridge,ae_menubuttonbridge,ae_buttonbridge,colorbutton";
  • colorbutton プラグインの場合、呼び出して使用できる 2 つのボタンがあります: "TextColor"、"BGColor"
  • このサンプル コードを参考に、 AlloyEditorConfigContributor.java をに変更します。
    @Override
    public void populateConfigJSONObject(
    JSONObject jsonObject, Map<String, Object> inputEditorTaglibAttributes,
    ThemeDisplay themeDisplay,
    RequestBackedPortletURLFactory requestBackedPortletURLFactory) {
    super.populateConfigJSONObject(
    jsonObject, inputEditorTaglibAttributes, themeDisplay,
    requestBackedPortletURLFactory);
    jsonObject.put("entities", Boolean.FALSE);
    String extraPlugins = jsonObject.getString("extraPlugins");
    String extraPluginsNeeded = "ae_uibridge,ae_richcombobridge,ae_panelmenubuttonbridge,ae_menubridge,ae_menubuttonbridge,ae_buttonbridge,colorbutton";
    if (Validator.isNotNull(extraPlugins)) {
    extraPlugins += ",itemselector,media,embedurl," + extraPluginsNeeded;
    }
    else {
    extraPlugins = "itemselector,media,embedurl," + extraPluginsNeeded;
    }
    jsonObject.put(
    "extraPlugins", extraPlugins
    ).put(
    "toolbars", getToolbarsJSONObject(themeDisplay.getLocale())
    );
    }
    ...
    protected JSONObject getToolbarsStylesSelectionsTextJSONObject(
    Locale locale) {
    return JSONUtil.put(
    "buttons",
    JSONUtil.putAll(
    getStyleFormatsJSONObject(locale), "bold", "italic",
    "underline", "ol", "ul", "linkBrowse", "TextColor", "BGColor")
    ).put(
    "name", "text"
    ).put(
    "test", "AlloyEditor.SelectionTest.text"
    );
    }

追加情報

did-this-article-resolve-your-issue

legacy-knowledge-base