先日、「ブログのカテゴリごとに10件しか表示できない」ことをご紹介しましたが、これに関連して調べたことがありましたので、まとめておきます。
トップページに表示される既定の投稿数を変更するには
以前、ブログを利用されようとしている方で、最近の主流は「1ページ 1投稿」というスタイルが多いらしいので SharePoint でも同じようにできないかというご質問をいただきました。トップページの投稿の表示部分は Webパーツですから、Web パーツのビューを編集すれば対応できます。
手順(1件ずつ表示する例)
- [サイトの操作] メニューから[ページの編集]をクリックします
- "投稿" Web パーツの [編集]から[共有Webパーツの変更]をクリックします
- 画面右側のツールパーツ部分に表示される "現在のビューの編集" をクリックします
- ビューの編集画面の最下部にある [アイテムの制限] セクションで [表示するアイテム数]を "1" に変更します(ここで表示したい数を指定します)
- [OK] をクリックします
さてここからがポイントです。本来これで、問題なさそうなものなのですがブログサイトだけは違います。実は既定のビューを変更すると、カテゴリ別で表示したときに正しくフィルタされず、どのカテゴリをクリックしてもすべてのアイテムが表示される(といっても10件までですが) ようになってしまいます。
このことはサポート技術文書が出ています。
[KB 939310] The blog posts are not filtered correctly when you click a link to a category on a Windows SharePoint Services 3.0 blog site
要するにCategory.aspx 内のListView Webパーツのフィルタ設定情報が壊れるということのようです。
ということで、サポート技術文書の手順に基づいて最後に SharePoint Designer 2007 を使用してWebパーツを一部修正します。
- 正しく動作するブログサイトからフィルタ構成情報を取得するため、一時的なブログサイトを別途作成しておきます
- 修正したいブログサイトを SharePoint Designer 2007 で開き、Listsフォルダ内の Category.aspx を開きます。これは GUID を取得するためです。
- 分割ビューで表示しておいて、デザインビュー側で投稿情報が表示される部分を選択します。するとコードビューの中に<ListViewXML>タグが見つかりますので、この中の"Veiew Name={GUID}" のGUID 部分をコピーしておきます。
- 今度は正しく動作している一時作成したブログサイトを SharePoint Designer 2007 で開きます。
- 分割ビューに切り替え、デザインビュー側で投稿情報が表示される部分を選択します。するとコードビュー内に先ほどと同様、<ListViewXML>タグが見つかります。この中の、"View Name={GUID}" の GUID を3.でコピーしたGUIDに置き換えます。
- <ListViewXML>開始タグから</ListViewXML>終了タグまでをコピーします。
- SharePoint Designer 2007 の画面を修正目的のブログサイトに切り替え、同じく<ListViewXML>から</ListViewXML>までをコピーした内容で置き換えます。
- 目的のブログサイトの Category.aspx を上書き保存します。
- 一時作成したブログサイトの方は変更を保存せずに、SharePoint Desiger 2007 を終了します。
以上です。正しく動くようになったら、一時作成したブログサイトは削除しておきます。