ムーバブルタイプでアクセスランク順に人気記事リストを表示する方法
目次
Access Counterというプラグインを使って人気の記事リストを表示する方法を書き留めておきます。アクセスの高い順に表示してくれます。
プラグインをmt/pluginsにアップロードしてAccessCounter.cgi のパーミッションを755にしてください。(レンタルサーバーがヘテムルの場合700)
パーミッションの設定が644になっている場合は500エラーとなり正常に機能しません。
プラグインのサイトにも説明がありますが、管理画面にアクセスするとデータベースの再構築を促されますので、指示にしたがって進めてください。
そして、以下のコードで「アクセスランキング」というウィジェットを作成。ちなみに「limit="10"」は上位10件を指定しているところ。
<mt:If tag="BlogEntryCount">
<mt:Entries sort_by="accessed_count" sort_order="descend" limit="10">
<mt:EntriesHeader>
<div class="widget-recent-entries widget-archives widget">
<h3 class="widget-header">アクセスランキング</h3>
<div class="widget-content">
<ul class="widget-list">
</mt:EntriesHeader>
<$mt:setvar name="rank" value="1" op="++"$>
<li class="widget-list-item"><a href="<$mt:EntryPermalink$>">#<$mt:var name="rank"$> <$mt:EntryTitle$></a></li>
<mt:EntriesFooter>
</ul>
</div>
</div>
</mt:EntriesFooter>
</mt:Entries>
</mt:If>
参考にサムネイル画像付きのリストにしたい場合はこんな感じ。
<mt:If tag="BlogEntryCount">
<mt:Entries sort\_by="accessed\_count" sort\_order="descend" limit="5">
<mt:EntriesHeader>
<div class="widget-recent-entries widget-archives widget">
<h3 class="widget-header">人気記事</h3>
<div class="widget-content">
<ul id="access-lanking">
</mt:EntriesHeader>
<$mt:setvar name="rank" value="1" op="++"$>
<li><a href="<$MTEntryPermalink$>">
<img src="<mt:EntryAssets type="image" limit="1"><$mt:AssetThumbnailURL height="60" square="1" encode_html="1"$><mt:Else><mt:Assets type="image" tag="@SITE_ICON" limit="1"><$mt:AssetThumbnailURL height="60" square="1" encode_html="1"$><mt:Else><$mt:SupportDirectoryURL with_domain="1" encode_html="1"$>theme_static/rainier/img/siteicon-sample.png</mt:Assets></mt:EntryAssets>" width="60" height="60" alt="<$MTEntryTitle$>" />
</a>
<a href="<$MTEntryPermalink$>"><p class="entry-title"><$MTEntryTitle trim_to="43+..."$></p></a></li>
<mt:EntriesFooter>
</ul>
</div>
</div>
</mt:EntriesFooter>
</mt:Entries>
</mt:If>
カテゴリページや月間ページ別のランキング表示もできるようです。(以下ページが参考になります)