6

このボタンは常に定義済みのスキーマを使用するため、クライアントに多くの問題を引き起こします。エディターの設定でこのボタンを削除する方法が見つかりません。他のボタンでこれを行いましたが、これらのボタンは何らかのサブグループで実装されています。

私の個人用サンドボックス マシンで、以下に示す ../WebUI/Editors/CME/Controls/Toolbars/Tabs/CreateRibbonPage.ascx ファイルの抽出でコメント アウトされたコントロールを削除しようとしました。

<c:RibbonSplitButton runat="server" CommandName="NewComponent" 
   Title="<%$ Resources: Tridion.Web.UI.Strings, NewComponent %>" 
   Label="<%$ Resources: Tridion.Web.UI.Strings, NewComponent %>"
   ID="NewComponentBtn1">
  <c:RibbonContextMenuItem runat="server" ID="NewComponentCMI2" 
     Command="NewComponent" 
     Title="<%$ Resources: Tridion.Web.UI.Strings, NewComponent %>" 
     Label="<%$ Resources: Tridion.Web.UI.Strings, NewComponent %>" />
  <c:RibbonContextMenuItem runat="server" ID="NewMultimediaComponentCMI2" 
     Command="NewMultimediaComponent"  
     Title="<%$ Resources: Tridion.Web.UI.Strings, NewMultimediaComponent %>" 
     Label="<%$ Resources: Tridion.Web.UI.Strings, NewMultimediaComponent %>" />
  <!--
  <c:RibbonUploadContextMenuItem runat="server" 
     ID="NewBasicMultimediaComponentCMI2" Command="NewBasicMultimediaComponent"  
     Title="<%$ Resources: Tridion.Web.UI.Strings, NewBasicMultimediaComponent %>"
     Label="<%$ Resources: Tridion.Web.UI.Strings, NewBasicMultimediaComponent %>" />
  -->
</c:RibbonSplitButton>

これで期待どおりの結果が得られたようですが、お客様の環境でこれを行った場合、おそらくサポート契約が無効になると思います。サポートされている方法でこれを行うことは可能ですか、それとも目標を達成するためにこのような UI ファイルをハックする必要がありますか?

4

3 に答える 3

7

解決策の 1 つは、コマンドの拡張機能を作成することです。これは、NewBasicMultimediaComponentコマンドを拡張しisAvailableisEnabledメソッドを返しfalse、それらを返します。この場合、[MM コンポーネントのアップロード] は [新しいコンポーネント] ボタンのオプションとして引き続き表示されますが、無効になります。

于 2012-05-23T14:44:29.247 に答える
6

以前、css を使用してリボン アイテムの表示を非表示にしました。適切な解決策が見つからなかったからです。

于 2012-05-22T16:46:35.053 に答える
2

完全なリボンツールバーで同様のことをする必要があったため、この回答を追加しています。

より単純なバージョンを追加するために、完全なリボン ツールバー "作成" を削除する必要がありました。新しい拡張機能を作成して、これを拡張機能構成で使用することで、削除部分を実行できるようです。

<?xml version="1.0"?>
<Configuration xmlns="http://www.sdltridion.com/2009/GUI/Configuration/Merge" xmlns:cfg="http://www.sdltridion.com/2009/GUI/Configuration" xmlns:ext="http://www.sdltridion.com/2009/GUI/extensions" xmlns:cmenu="http://www.sdltridion.com/2009/GUI/extensions/ContextMenu" xmlns:edt="http://www.sdltridion.com/2009/GUI/Configuration/Merge">
    <resources>
        <cfg:groups />
    </resources>
    <definitionfiles />
    <extensions>
        <ext:editorextensions>
            <ext:editorextension target="CME">
                <ext:editurls />
                <ext:listdefinitions />
                <ext:itemicons />
                <ext:taskbars />
                <ext:commands />
                <ext:commandextensions />
                <ext:contextmenus />
                <ext:lists />
                <ext:tabpages>
                </ext:tabpages>
                <ext:toolbars>
                </ext:toolbars>
                <ext:ribbontoolbars>
                    <ext:remove>
                        <ext:extension id="CreatePage">
                            <ext:apply>
                                <ext:view name="DashboardView">
                                    <ext:control id="DashboardToolbar" />
                                </ext:view>
                            </ext:apply>
                        </ext:extension>
                    </ext:remove>
                </ext:ribbontoolbars>
                <ext:extendedareas />
            </ext:editorextension>
        </ext:editorextensions>
        <ext:dataextenders />
    </extensions>
    <commands />
    <contextmenus />
    <localization />
    <settings>
        <dependencies />
        <defaultpage />
        <editurls />
        <listdefinitions />
        <theme>
            <path>/Themes/</path>
        </theme>
        <customconfiguration />
    </settings>
</Configuration>

ボタンでこれを機能させるには、ext:extension id 属性にボタン ID を指定することで、おそらく同じことができます (これはテストしていません)。

于 2012-08-27T14:29:12.353 に答える