Tridion 2011 GUI 拡張機能のコンテキスト メニュー項目にアイコンを追加するにはどうすればよいですか?
それはテーマまたはGUI拡張設定にありますか?
サイズは16pxですか?
Tridion 2011 GUI 拡張機能のコンテキスト メニュー項目にアイコンを追加するにはどうすればよいですか?
それはテーマまたはGUI拡張設定にありますか?
サイズは16pxですか?
はい、アイコンは16x16です。
私は常にCSSを使用してそれを行ってきましたが、この説明が理にかなっていることを願っています。
1)editor.configで、必要なcssファイルとその他のリソースを指定します
<cfg:groups>
<cfg:group name="PowerTools.Resources.Base" merge="always">
<cfg:fileset>
<cfg:file type="style">/PowerTools/Client/Shared/Theme/styles.css</cfg:file>
2)コンテキストメニューを構成すると、ContextMenuItemにID属性があります(以下にPT_PagePublisherとして表示されます)。
<ext:contextmenus>
<ext:add>
<ext:extension name="PowerToolsContextMenu" assignid="PowerToolsContextMenu" insertbefore="cm_refresh">
<ext:menudeclaration externaldefinition="">
<cmenu:ContextMenuItem id="PowerToolsMenuGroup" name="Power Tools">
<cmenu:ContextMenuItem id="PT_PagePublisher" name="Page Publisher" command="PT_PagePublisher"/>
3)CSSファイルには次のようなものがあります。
.PT_PagePublisher .image {background-image:url({ThemePath}/Icons/pagepublisher_16.png);}
CSSクラスの名前(PT_PagePublisher)がContextMenuItemノードのIDにどのようにマップされるかを確認してください。
これがお役に立てば幸いです。
テーマ CSS を使用します。開発イメージの拡張機能の CSS には次のものがあります。
.tridion .contextmenu #TweetThis .image
{
background-image:url({ThemePath}/images/icons/twitter-icon16x16.png);
}
Tweetこれは、拡張設定で定義されている、私のコンテキスト メニュー アイテム ID です。
現在の CME (Content Manager Explorer) のイメージを再利用したい場合は、以下を使用できます。
#PT_PagePublisher.item .image
{
background-image: url({ThemePath['CME']}/Sprites/cme_5_v6.1.0.55920.0_.png);
background-position: 0px -480px;
height: 16px;
width: 16px;
}
この例は、2011 SP1 インストールの発行アイコンを示しています。したがって、{ThemePath['EditorName']}を使用して、実際に構成されている任意のエディターのテーマ パスにアクセスできます。
また、場合によっては、リボン ツールバーまたはコンテキスト メニューのいずれにも画像が読み込まれないことがわかりました。これは、IIS のエディター仮想ディレクトリでの認証の問題であると思われます。
Web.config ファイルをテーマ (ルート) ディレクトリに追加することで解決しました。これにより、すべてのユーザーがテーマ ファイル (css および画像) にアクセスできるようになります。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<!-- allow all users access to theme files -->
<authorization>
<allow users="?" />
</authorization>
</system.web>
</configuration>