%

MT-Ranking は管理画面から簡単にランキングを作成できます。
MTタグを利用して表示項目をカスタマイズすることが可能です。
Movable Type 7系、8系で動作します。

  • MT-Ranking

    ランキングをかんたんに作成
    価格:11,000円(税込)
    ※stores.jp へ移動します

機能・特徴

MT-Rankingは、ページのアクセスランキング、アクセス数を記録、表示する機能を提供し、Movble Type で運用されている自社メディアにランキングを簡単に実装できます。プラグインによって拡張されるMTタグを利用して表示項目を設定することが可能です。

追加されるテンプレートタグ

  • MTRanking
    ランキングを出力するためのブロックタグです。
  • MTRank
    MTRanking内で利用します。ランキング順位を出力します。
  • MTRankDescription
    MTRanking内で利用します。計測対象のページのOG:Descriptionを参照し出力します。
  • MTRankImageUrl
    MTRanking内で利用します。計測対象のページのOG:Imageを参照し出力します。
  • MTRankPageView
    MTRanking内で利用します。計測対象のページのページビュー数を出力します。
  • MTRankTitle
    MTRanking内で利用します。計測対象のページのOG:Titleを参照し出力します。
  • MTRankType
    MTRanking内で利用します。計測対象のテンプレートの種類を出力します。記事、ウェブページ、コンテンツデータ、インデックステンプレートが対象となります。
  • MTRankUrl
    MTRanking内で利用します。計測対象のページのパーマリンクを出力します。
  • MTRankingPost
    計測対象先のテンプレートに設置することでランキング集計用の JavaScript スクリプトが自動で出力されます。
  • MTRankingScript
    ランキング集計用のスクリプトファイル名を出力します。

v1.21で追加されたタグ

  • MTEntryPageView
    特定の記事、ウェブページのページビュー数を出力します。記事アーカイブ、ウェブページアーカイブでは id を指定しなければ現在の記事を対象にします。
    モディファイア id(任意):出力する記事のIDを指定します。
  • MTContentPageView
    特定のコンテンツデータのページビュー数を出力します。コンテンツデータアーカイブでは id を指定しなければ現在のコンテンツデータを対象にします。
    モディファイア id(任意):出力するコンテンツデータのIDを指定します。
  • MTTemplatePageView
    特定のインデックステンプレートのページビュー数を出力します。コンテンツデータアーカイブでは id を指定しなければ現在のコンテンツデータを対象にします。
    モディファイア id(任意):出力するテンプレートのIDを指定します。

v1.21で追加されたモディファイア

  • include_sites
    複数のサイトの記事をまとめてランキングに表示したい場合に利用します。
  • category
    特定のカテゴリに絞ってに表示したい場合に利用します。
  • tag
    特定のタグに絞ってに表示したい場合に利用します。

v1.4で追加されたモディファイア

  • days
    指定した日数以内に作成された記事またはコンテンツデータに絞って表示したい場合に利用します。
  • type
    daysと組み合わせて、指定することで絞る対象のデータを指定することが可能になります。

v1.6で追加されたモディファイア

  • use_entry_title
    MTRankingPost タグに 1 を指定にすると、記事タイトルを参照する事が可能になります。

ランキングの集計対象

  • ブログ記事
  • ウェブページ
  • コンテンツデータ
  • インデックステンプレート

※月別、年別、カテゴリーアーカイブは集計対象にはできません。

インストール

ダウンロードしたファイルを解凍すると、「mt-ranking.cgi」と「plugins」フォルダができます。
「mt-ranking.cgi」をMovable Typeのインストール先の「mt」ディレクトリにアップロードします。
「plugins」の中に「MT-Ranking」フォルダがありますので、Movable Typeのインストール先の「plugins」ディレクトリにアップロードします。

※クラウド版をご利用の場合には、「mt-ranking.cgi」は「plugins」の中の「MT-Ranking」フォルダ内にアップロードしてください。

システム設定画面

使い方

1.利用するサイトのプラグイン設定から保持期間やCORSの設定をします。

システム設定画面
  • 保持期間
    アクセスデータを保持する期間を指定します。0 を指定すると削除されません。
  • CORS: Allow origin
    別ドメインからスクリプトを呼び出す場合、CORS 制限に抵触するため Access-Control-Allow-Origin で返すドメインを登録します。
    管理画面と出力先のドメインが等しい場合は設定は必要ありません。
    設定例:https://media.wim.jp
  • CORS: Allow methods
    Access-Control-Allow-Methods ヘッダーとして出力する値を設定します。
    初期値は*です。
  • CORS: Allow headers
    Access-Control-Expose-Headers ヘッダーとして出力する値を設定します。
    初期値は*です。
  • CORS: Expose headers
    Access-Control-Expose-Headers ヘッダーとして出力する値を設定します。
    初期値は*です。

2.集計対象のテンプレートにMTRankingPostタグを設置します。

※ランキング導入時など、プレビューを計測対象から外したい場合にはプレビューテンプレートを除外して設置します。

<mt:unless name="preview_template">
    <mt:RankingPost>
</mt:unless>
              

3.以下を参考にランキングの出力を記述します。

<mt:Ranking>
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
    <td><mt:if tag="ranktype" eq="content_data"><mt:ContentLabel><mt:ContentFields field="title"><mt:ContentFieldValue escape="html"></mt:ContentFields field="title"></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

カテゴリでランキング結果を絞り込みたい場合のサンプル

<mt:Ranking category="カテゴリ名">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
    <td><mt:if tag="ranktype" eq="content_data"><mt:ContentLabel><mt:ContentFields field="title"><mt:ContentFieldValue escape="html"></mt:ContentFields field="title"></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

複数のサイトの記事をまとめてランキングに表示したい場合のサンプル

<mt:Ranking include_sites="1,2,3">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

他のブログやウェブサイトを対象にする場合のサンプル

<mt:Ranking blog_id="1">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

再構築した時点から5日前までに公開された記事(ウェブページ)を対象にする場合のサンプル

<mt:Ranking days="5">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
    <td><mt:if tag="ranktype" eq="content_data"><mt:ContentLabel><mt:ContentFields field="title"><mt:ContentFieldValue escape="html"></mt:ContentFields field="title"></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>

または

<mt:Ranking days="5" type="entry">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
    <td><mt:if tag="ranktype" eq="content_data"><mt:ContentLabel><mt:ContentFields field="title"><mt:ContentFieldValue escape="html"></mt:ContentFields field="title"></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

再構築した時点から5日前までに公開されたコンテンツデータを対象にする場合のサンプル

<mt:Ranking days="5" type="cd">
  <mt:if name="__first__"><table></mt:if>
  <tr>
  <td><mt:if tag="RankImageUrl"><img src="<mt:RankImageUrl>" width="200"></mt:if></td>
    <td><mt:Rank></td>
    <td><a href="<mt:RankUrl>">[<mt:RankTitle escape="html">]</a> (<mt:RankPageView> views)</td>
    <td><mt:RankDescription></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:If tag="EntryCategory"><mt:EntryPrimaryCategory>in <mt:CategoryLabel></mt:EntryPrimaryCategory></mt:if></mt:if></td>
    <td><mt:if tag="ranktype" eq="entry"><mt:EntryIfTagged>with <mt:EntryTags glue=", "><mt:TagName></mt:EntryTags></mt:EntryIfTagged></mt:if></td>
    <td><mt:if tag="ranktype" eq="content_data"><mt:ContentLabel><mt:ContentFields field="title"><mt:ContentFieldValue escape="html"></mt:ContentFields field="title"></mt:if></td>
  </tr>
  <mt:if name="__last__"></table></mt:if>
</mt:Ranking>
              

動作条件

  • Movable Type 7系(ソフトウェア版/クラウド版)
  • Movable Type 8系(ソフトウェア版/クラウド版)

ブラウザの動作条件は Movable Type 本体のブラウザの動作条件に準拠します。

制限事項

  • ダイナミックパブリッシュには対応しておりません。
  • 月別、年別、カテゴリアーカイブは集計対象にはできません。
  • Movable Type Premum では動作検証は行っておりません。
  • サーバー配信との組み合わせについては動作検証は行っておりません。

サポート

お問い合わせフォームよりご連絡ください。

評価利用をご希望の方はお問い合わせフォームよりご連絡ください。

リリース

2024/4/11 v1.61リリース:

  • パッケージの不備を修正

2024/4/1 v1.6リリース:

  • MTRankingPost タグに use_entry_title モディファイアを追加
  • MTRankingPost で生成するスクリプトで、CGIPath が相対パスだった場合は MT管理画面のドメインを参照して絶対パスにするように変更

2023/11/8 v1.5リリース:

  • 複数のサイトのランキング参照時、保持期間が0日間になっていてもランキングデータが削除される問題を修正

2023/4/24 v1.4リリース:

  • 記事、コンテンツデータ、テンプレートが削除された場合、紐づくランキングデータを削除する処理を追加
  • プラグインのアップグレード時にランキングテーブルに残っている紐づきのないランキングデータを削除する処理を追加
  • 指定した日数以内に作成された記事またはコンテンツデータに絞ってランキングを作成する days モディファイアを追加
  • days モディファイアと合わせてに指定することで絞る対象のデータを指定する type モディファイアを追加

2023/4/7 v1.21リリース:

  • ランキングに同じ記事が複数表示される問題を修正
  • 複数のブログのランキングを集計するマルチブログモディファイアに対応
  • category と tag モディファイアに対応。名称ベースで指定されたサイト内のカテゴリやタグのフィルタリングが可能に
  • ランキングの集計対象のページビュー数の出力機能を追加

利用規約

こちらをご覧ください。