拙著「FXはチャートで勝つ!」が発売されました。
FX(外国為替証拠金取引)でのチャートの読み方を解説しています。
自由国民社刊で、定価1,728円(消費税込み)です。
イベントカレンダープラグイン(その16・アーカイブページの出力3)
イベントカレンダープラグインで、イベントのアーカイブページを出力する方法の最後として、アーカイブページ用のテンプレートモジュールの書き方を解説します。
1.URLのパラメータから期間を得る
まず、URLのパラメータ(monthやyearなど)から、出力するイベントの期間を得る処理を行います。
月別アーカイブページを出力する場合、アーカイブ用テンプレートモジュールに以下の部分を入れます。
<$mt:GetQueryParamsToVars$> <mt:SetVarBlock name="from"><$mt:GetVar name="qp_month"$>01000000</mt:SetVarBlock> <$mt:DateDiff ts="$from" offset="1n-1s" format="%Y%m%d%H%M%S" setvar="to"$>
また、年別アーカイブページを出力する場合は、以下の部分を入れます。
<$mt:GetQueryParamsToVars$> <mt:SetVarBlock name="from"><$mt:GetVar name="qp_year"$>0101000000</mt:SetVarBlock> <$mt:DateDiff ts="$from" offset="1y-1s" format="%Y%m%d%H%M%S" setvar="to"$>
2.アーカイブに属するイベントを出力する
次に、手順1.の部分より後に、アーカイブに属するイベントを出力する部分を入れます。
過去に終了したのイベントのアーカイブを出力する場合は、以下のような部分を入れます。
<mt:PastEventEntries start_date_from="$from" start_date_to="$to" firstn="9999"$> イベントの情報を出力するHTMLやテンプレートタグ </mt:PastEventEntries>
また、今後開催予定のイベントのアーカイブを出力する場合は、上のMTPastEventEntriesタグをMTFutureEventEntriesタグに置き換えます。
3.前後のアーカイブページへのリンク
前月(年)や来月(年)のアーカイブページへのリンクを出力することもできます。
月別アーカイブページで、前月/来月へのアーカイブページへのリンクを出力するには、手順1.の部分の後に、以下のような部分を入れます。
「イベントアーカイブ用テンプレートモジュール名」の部分は、実際のテンプレートモジュールの名前に置き換えます。
1行目が前月へのリンクで、2行目が来月へのリンクにあたります。
<a href="<$MTRealtimeRebuildLink tmpl_name="イベントアーカイブ用テンプレートモジュール名" tmpl_type="custom"$>&month=<$mt:DateDiff ts="$from" offset="-1n" format="%Y%m"$>"><$mt:DateDiff ts="$from" offset="-1n" format="%Y年%m月"$></a></li> <a href="<$MTRealtimeRebuildLink tmpl_name="イベントアーカイブ用テンプレートモジュール名" tmpl_type="custom"$>&month=<$mt:DateDiff ts="$from" offset="1n" format="%Y%m"$>"><$mt:DateDiff ts="$from" offset="1n" format="%Y年%m月"$></a>
また、年別アーカイブページで、前年/来年へのアーカイブページへのリンクを出力するには、手順1.の部分の後に、以下のような部分を入れます。
<a href="<$MTRealtimeRebuildLink tmpl_name="イベントアーカイブ用テンプレートモジュール名" tmpl_type="custom"$>&year=<$mt:DateDiff ts="$from" offset="-1y" format="%Y"$>"><$mt:DateDiff ts="$from" offset="-1y" format="%Y年"$></a> <a href="<$MTRealtimeRebuildLink tmpl_name="イベントアーカイブ用テンプレートモジュール名" tmpl_type="custom"$>&year=<$mt:DateDiff ts="$from" offset="1y" format="%Y"$>"><$mt:DateDiff ts="$from" offset="1y" format="%Y年"$></a>