長らくお待たせしました! DotNetNuke 5.2.0 の日本語言語パックの公開を開始しました。 作成時期の関係で、最新版の 5.2.1 ではないのですが、この言語パックは 5.2.1にもインストール可能です。 5.2.1 の公開も早々に開始しますので、お待ちください。
Blog の最新投稿一覧を表示する方法です。
■事前準備 1.Reports モジュールをインストールしておきます。
参考: DotNetNuke Project :: Report Module http://www.dotnetnuke.com/DotNetNukeProjects/ModuleReports/tabid/970/Default.aspx
2.テンプレート用 html ファイル作成 下記の内容を含む html ファイルを作成し、サーバーにアップロードしておきます。
ファイル名: BlogEntries.html 内容:
<a href="/tabid/0000/EntryID/[EntryID]/Default.aspx" class="Links" >[Title]</a> (<a href="/tabid/0000/BlogID/[BlogID]/Default.aspx" class="Links">[DisplayName]</a>, [AddedDate])<br />
「0000」は、ブログを含むページの TabID に置き換えます。 作成したファイルは、UTF-8 の文字形式で保存します。 保存したファイルを DotNetNuke の「ファイル」の機能を使って、 アップロードしておいてください
■設定手順 1.host でログインします。
2.一覧を追加するページを開きます。
3.ツールバーからモジュール「Reports」を追加します。 モジュールが表示されます。
4.追加したモジュールのメニュー「設定」を開きます。 Reports の設定画面が表示されます。
5.セクション「Reports 設定」を開きます。
6.項目「タイトル」「説明」にタイトルと説明を入力します。 省略できます。
7.項目「クエリー」に次の内容をいれます。 「0000」は、ブログを含むページの TabID に置き換えます。
select top 5 e.BlogID, e.EntryID, e.Title, u.DisplayName, case convert(nvarchar, dateadd(hour, b.TimeZone, e.AddedDate), 111) when convert(nvarchar, getdate(), 111) then N'今日' when convert(nvarchar, dateadd(day, -1, getdate()), 111) then N'昨日' else convert(nvarchar, dateadd(hour, b.TimeZone, e.AddedDate), 111) end as [AddedDate], '/Tabid/0000/EntryID/' + convert(varchar, e.EntryID) + '/default.aspx' as [EntryLink], '/Tabid/0000/BlogID/' + convert(varchar, e.BlogID) + '/default.aspx' as [BlogLink]from {databaseOwner}{objectQualifier}blog_entries e (nolock)left join {databaseOwner}{objectQualifier}blog_blogs b (nolock) on e.BlogID = b.BlogIDleft join {databaseOwner}{objectQualifier}Users u (nolock) on b.UserID = u.UserIDwhere e.Published = 1 and b.[Public] = 1order by e.EntryID desc;
8.項目「キャッシュ」をチェックします。
9.項目「Visualizer」を「HTML Template Visualizer」に設定します。
10.項目「テンプレートファイル」に事前準備でアップロードしたテンプレート用 HTMLファイルを指定します。
11.画面下の「更新」を選択します。
以上で、設定が完了します。
■一覧のデザイン変更 デザインは、テンプレート用HTMLを修正します。 テンプレートには、XSLT も利用できます。
■キャッシュの設定 サーバーのパフォーマンスを維持するため、「キャッシュ」に適切な時間を 設定することをお勧めします。
最低 : 10 分
以上です。
こんにちは。DOT NET NUKE初心者で今、ブログを作成しています。
初心者な質問で申し訳ないですが、2.テンプレート用 html ファイル作成で、作るhtmlファイルは、タグの中に内容の文章を書き込めばよいだけでしょうか?
あと、「0000」の、ブログを含むページの TabID とは何ですか?
ほんと基本的なことかもしれませんが、まだまだWEBも初心者なので、助けていただけるとうれしいです。
違う質問なんですが・・・。
このやり方はバージョンは何に適してるんですか?私は今、バージョン4.3を使っているんですが、項目「Visualizer」、項目「テンプレートファイル」は見当たりません。
バージョン4.3だと、Reports モジュールは最初からあるのですが、それを使ってやっても同じでしょうか?
この方法は、blog機能を使って最新情報をトップページに表示したりするのにとても便利で、活用させていただいています。上の質問と合わせて下記を参考にしてください。
BlogEntries.htmは、テキストエディタかノートパッドで新しいテキストファイルを作成し、<a href="... から ...br />までを貼り付け、保存してからファイル名をBlogEntries.htmに変更すればOKです。tabidとは、DotNetNukeのページごとの番号でURLを見ればわかります。例えばこのページならhttp://dotnetnuke.jp/tabid/263/forumid/23/threadid/1694/scope/posts/Default.aspxなので、tabidの後にある263という番号がtabid番号になります。なので、blogを作ったページを開き、そのURLにあるtabid番号を0000と置き換えてください。ちなみにDefault.aspx?tabid=263と表現されるときもありますので、その時もtabid=の後の数字を使ってください。Reportモジュールは、DNN4.3.7でインストールされているものでは、この機能は作動しません。最新バージョンのModule :: Reports 04.05.02を本家からダウンロードして、ホストアカウントを使用してモジュール定義から新しいモジュールのアップロードをしてアップデートする必要があります。