2ページ目 | Movable Type

PageBute利用時のページング

PageBute 3.5.7〜で、ページングを作成する場合の例。カレントページの場合の出力も制御可能になっている。


MTML


<nav>
<mt:Pagination>
<mt:PaginationHeader>
<ol class="nav-contents-01">
</mt:PaginationHeader>
<mt:IfPaginationCurrent>
<li><em><$mt:PaginationLink element="number"$></em></li>
<mt:Else>
<li><a href="<$mt:PaginationLink abs2rel="1"$>"><$mt:PaginationLink element="number"$></a></li>
</mt:IfPaginationCurrent>
<mt:PaginationFooter>
</ol>
</mt:PaginationFooter>
</mt:Pagination>
</nav>

タグ付けしたウェブページをまとめて出力する

単一ページをセクション毎に分割してウェブページに入れるのが正しいか議論の余地はあるが、セクション要素を含めて出力するには、今のところこの方法しか無いと思われる。


※.parent > h2に上方向のマージンを付けて、セクション要素を使わない方法も考えられる。


MTML


<$mt:SetVar name="tag" value="@tag01" function="push"$>
<$mt:SetVar name="tag" value="@tag02" function="push"$>
<$mt:SetVar name="tag" value="@tag03" function="push"$>
<$mt:SetVar name="tag" value="@tag04" function="push"$>
<$mt:SetVar name="tag" value="@tag05" function="push"$>

<mt:Loop name="tag">
<mt:Pages tag="$__value__">
<section class="sctn-l1-01">
<h2 class="hdg-l2-01"><$mt:PageTitle$></h2>
<$mt:PageBody$>
</section>
</mt:Pages>
</mt:Loop>

コンバージョン数のトラッキング

コンバージョン数のトラッキングを行う際の各種コード。自社お問い合わせフォーム+MT専用。


Google Analyticsテンプレート


<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXX-Y']);
_gaq.push(['_trackPageview']);
<$mt:Var name="OptionalTrackingCode"$>
(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>

各ページのテンプレート


<mt:SetVarBlock name="OptionalTrackingCode">
// _gaq.push(['_trackPageview', '/funnel_G1/form.html']);
// _gaq.push(['_trackPageview', '/funnel_G1/comfirm.html']);
// _gaq.push(['_trackPageview', '/funnel_G1/thanks.html']);
</mt:SetVarBlock>
<$mt:Include module="Google Analytics" parent="1"$>

インデックステンプレートで記事を年別にグループ化

例えばプレスリリースや新着情報のインデックスページで、記事を年別にグループ化(見出しに2012年などを置き、テーブルで2012年の記事をリストアップ)して表示したい場合に利用する。年別アーカイブを作るほど記事数がない場合に利用する。


MTML


<h1 class="hdg-category">プレスリリース</h1>
<$mt:SetVar name="currentYear" value="0"$>
<$mt:SetVar name="tableOpen" value="false"$>

<mt:Entries sort_by="authored_on" sort_order="descend">
<$mt:EntryDate format="%Y" setvar="year"$>
<mt:If name="year" ne="$currentYear">
<mt:If name="tableOpen" eq="true">
</tbody>
</table>
</section>
</mt:If>
<section>
<h2 class="hdg-l2-02"><$mt:Var name="year"$>年</h2>
<table class="tbl-02">
<tbody>
<$mt:SetVar name="currentYear" value="$year"$>
<$mt:SetVar name="tableOpen" value="true"$>
</mt:If>
<tr>
<th class="date"><$mt:EntryDate format="%Y年%m月%d日"$></th>
<td><a href="<$mt:EntryPermalink abs2rel="1">"><$mt:EntryTitle$></a></td>
</tr>
</mt:Entries>
</tbody>
</table>
</section>

Webページのローカルナビ設置例

表示しているページが属するディレクトリはディレクトリ名に加えページリストを列挙、その他はディレクトリ名のみ列挙するローカルナビの例。


MTML


<$mt:SetVar name="blogdir" value="/foo/"$>
<mt:SetVarBlock name="currentdir"><mt:PageFolder><$mt:FolderBasename$></mt:PageFolder></mt:SetVarBlock>
<ul>
<mt:TopLevelFolders>
<$mt:FolderBasename setvar="dir"$>
<li<mt:If name="dir" eq="$currentdir"> class="active"</mt:If>><a href="<$mt:GetVar name="blogdir"$><$mt:FolderPath$>"><$mt:FolderLabel$></a>
<mt:If name="dir" eq="$currentdir">
<mt:Pages sort_by="title" sort_order="ascend">
<mt:PagesHeader>
<ul>
</mt:PagesHeader>
<li><a href="<$mt:PagePermalink$>"><$mt:PageTitle$></a></li>
<mt:PagesFooter>
</ul>
</mt:PagesFooter>
</mt:Pages>
</mt:If>
</li>
</mt:TopLevelFolders>
</ul>