Mr. Celarier published a tutorial to develop Community Server skins , Here is translation to Japanese
このCommunity Server スキン作成チュートリアルはStuart Celarierさんが作成したドキュメントを、超ラフ意訳含みで翻訳したものです。オリジナルは、Blog skin tutorial for Community Server: Part 5 – Custom skin controls です。
翻訳ここから----------------------------------
パート5カスタムスキンコントロール
このチュートリアルの最初の方のパート2(要素の追加) では、LayoutTemplate.ascxカスタムコントロールを作成しました。 このASP.NETカスタムコントロールには、<Blog:BlogTitleHeader> と <Blog:BlogSideBar> が使われており、それぞれ、ブログのヘッダ部分とサイドバー部分を構成しています。次は、これらのエレメントの構成の理解と、カスタマイズの方法を学習します。
インストラクション
%csroot%/Themes/Blogs/default フォルダに移動します。 このフォルダにあるスキンがCommunity Serverで標準的に利用されています。 ブログが標準以外のスキン(テーマ)を使うとき、Community Serverは、選択されたスキンの中からスキンのコンポーネントを探します。コンポーネントが存在しない場合、再度標準のスキンの情報を参照します。 これは、パート4で紹介した、CSSのコンセプトの「カスケーディング」に似ています。。
Community Serverインストール時に、Marvin2スキンはブログの標準スキンとしてインストールされています。Marvin2スキンは、DefaultやCustomフォルダと同じ階層に存在しています。 標準のブログスキンを変更するには、defaultフォルダにあるファイル群をリプレースします。 上記の通り、非標準スキンに含まれないコンポーネントなどは、標準スキンを参照することになるため、標準のスキンを変更することは、Community Serverで利用できるすべての非標準スキンに影響を与える可能性があるという事を理解しておかなければなりません。つまり、標準のスキンを変更する事は、新しいスキンを作成するよりも大きな注意が必要です。このチュートリアルでは、シンプルに新しいスキンを作成する事に重点を置きます。.
まず、default の中のSkins に移動します。多くのファイルがこのフォルダにありますがSkin-BlogTitleHeader.ascx と Skin-BlogSideBar.ascx を探します。Skin-という接頭辞よりあとのコントロールの名前が、CustomスキンのLayoutTemplate.ascxで使われている<Blog:BlogTitleHeader> と <Blog:BlogSideBar>の要素を意味します。
次に %csroot%/Themes/Blogs/Custom フォルダに移動し、Skinsフォルダを作成します。
Custom Skins フォルダに 以下の内容でSkin-BlogTitleHeader.ascx というファイルを作成します。
<%@ Control Language="C#" %>
<%@ Register TagPrefix="CS"
Namespace="CommunityServer.Controls"
Assembly="CommunityServer.Controls" %>
<%@ Import Namespace="CommunityServer.Components" %>
<div id="maintitle">
<asp:HyperLink id="BlogTitle" runat="server"/>
</div>
<div id="subtitle">
<asp:Literal id="blogSubTitle" runat="server"/>
</div>
Community Server は<asp:HyperLink> の <asp:Literal>を指定・挿入するために id属性の値を使います。スタイリングのために、これらのエレメントは、<div>タグで囲ってあります。
In the Custom Styles フォルダのstyle.cssに次のルールを追加します。
#maintitle {
font-size: 2em;
font-weight: bold;
}
#maintitle a {
color: blue;
}
#subtitle {
font-size: 0.8em;
letter-spacing: 0.2em;
}
これは、今作成したBlogTitleHeaderコントロールのスタイルを決定しています。
次のステップは、カスタムコントールでななく、blog全体の見た目を変更します。以下の通り、既存のbodyのルールを修正します。
body {
margin: 0px;
font-family: segoe ui, gill sans mt, verdana, sans-serif;
}
そして、次の通り、ハイパーリンクのスタイルを追加します。
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
テスト
テストブログに移動し、再読込します。メインタイトルのハイパーリンクは青で表示され、サブタイトルは、文字間のスペースが広げられています。作成されたBlogTitleHeaderは、標準の設定を上書きし、新しいコントロールでスタイルを上書きしています。
ここまででSkinsフォルダの中のコントロールをカスタマイズする方法を学習してきました。 次は、ここまで学習してきた事を利用し、ブログスキンの中の構造を変更してみましょう。