• 管理人へのメール

  • crossbreed tumblr.  ※画像をクリックして拡大できます tumblr-タンブラーって何?tumblrの始め方
    最新記事ヘッドライン (※画像をクリックして拡大できます)
    はてなブログ始めました この記事を読む → はてなブログ始めました http://crossbreed.tv/archives/201709011610.php お前らってどうやって嫌な事乗り越えてるの? この記事を読む → お前らってどうやって嫌な事乗り越えてるの? http://crossbreed.tv/archives/201501150028.php キモ美しい街並みを集めてみたよ(Googleマップ付) この記事を読む → キモ美しい街並みを集めてみたよ(Googleマップ付) http://crossbreed.tv/archives/201501101258.php みんなのビヤホールCMがリア充過ぎる件 この記事を読む → みんなのビヤホールCMがリア充過ぎる件 http://crossbreed.tv/archives/201501101122.php 【DJMIX】Bar KNAT FINAL MIX この記事を読む → 【DJMIX】Bar KNAT FINAL MIX http://crossbreed.tv/archives/201411300014.php
    同カテゴリ内最新記事ヘッドライン (※画像をクリックして拡大できます)
    「姪っ子が嫁に行った」スレ この記事を読む → 「姪っ子が嫁に行った」スレ http://crossbreed.tv/archives/201104042221.php Ajaxを使ったクールなメールフォームを設置する方法 この記事を読む → Ajaxを使ったクールなメールフォームを設置する方法 http://crossbreed.tv/archives/200901122305.php ネタ投稿掲示板を始める事にしたよ! この記事を読む → ネタ投稿掲示板を始める事にしたよ! http://crossbreed.tv/archives/200711291245.php web2.0時代のhtmlタグ作成方法(amazonリンクタグ作成方法)その1 この記事を読む → web2.0時代のhtmlタグ作成方法(amazonリンクタグ作成方法)その1 http://crossbreed.tv/archives/200607190117.php トラックバックスパムフィルター「BanNoReferTb」は凄いです この記事を読む → トラックバックスパムフィルター「BanNoReferTb」は凄いです http://crossbreed.tv/archives/200603261315.php

    11月
    22
    2003

    MTで人気記事ランキングを。

    カテゴリ:blogカスタマイズ |

    STARを押してこの記事を評価お願いします→
    つまんないイマイチ普通まあまあよかった! (3票, 平均: 3.67)
    Loading...


    新ブログ始めました!
    http://crossbreed.hatenablog.com

    ずっと設置したいと思っていたmovabletypeのplugin、MTMostVisitedの設置にやっと成功した。このプラグイン、簡単に言えば「記事別アクセスランキング」。#BLOG一色政彦さんと、Living by the Animal Faith@KHさんのネタを見て激しく設置の欲望にかられた。トップページの左側の中ほどにあるやつがそれ。
    現在のランキングを表示すると
    ranking.jpg ↑こうなる
    MT使ってて、これやりたくてもできなかったヒトは結構いるんじゃないかと思うので、僕の苦難の道を記そうと思う。参考になれば幸いだなあ。


    実はこのplugin、#BLOGさんとこで見つけて早速やってみたのだが、あっさり撤退。何度やっても上手く行かなかった。イライラ上昇。
    で、調べるうちに分かったことがあった。
    apacheのアクセスログを使うこのプラグイン、ここのサーバではアクセスログが上手く取れないことが分かった。
    それなら作ってしまえ!というわけで、ログを取るCGIを作成して成功した。ちょっと感動。perlなんてさっぱりわからないけど、サンプルを引っ張ってきて見よう見真似で。なんとかなるもんだね。
    それでは設置方法をば。
    まず、このプラグインを導入する前に、Akira HangaiさんののApache::ParseLogというapacheログを解析するモジュールが必要です。何にも考えずにダウンロードします。リンク先の「source」ってとこ。
    DLした「ParseLog.pm」は (MTのインストールディレクトリ)/extlib/Apache/
    にアップロード(以下UL)。これで第一段階完了です。
    次に本命のJeffrey Borlikさんのサイトに行き、The plugin is available (as a ZIP archive) hereと書かれたMTMostVisitedのプラグイン(zip)をDLする。解凍したら、mt-mostvisited.plをテキストエディタで開き、
    my $logdir、my $root、my $filetype、my @searchfilesを
    my $logdir = “/var/log/httpd”;←apacheのログファイルのパス
    my $root = “/blog/archives”;←アーカイブファイルのパス
    my $filetype = “html”;
    my @searchfiles = (“$logdir/access_log”,←ログファイル名
    “$logdir/access_log.1”,
    “$logdir/access_log.2”,
    “$logdir/access_log.3”,
    “$logdir/access_log.4”,
    “$logdir/access_log.5”,
    “$logdir/access_log.6”);
    こんなカンジで書き換えます。ここでapacheのログが取れないが為に、僕は何日も悩んだのですが、apacheのログがとれ、しかも一週間分とかに区切って出力してくれる優しいホスティング会社に加入している方なら迷わずapacheのログのパスを記述しましょう。
    僕の利用してるホスティングサーバは厳密に言うとログは取れたんですが、切り分けをしてくれなかったので、仕方なく他のディレクトリに移動しようと思ったが、FTPで取得できない(SSIで接続しないと取得できない)上にTELNETの使い方が全く分からないというどうしようもない状態に陥った為、
    自分でログを書き出すプログラムを作ってしまえ
    ということを考えた。無謀。
    それと、apacheのログって画像なんかにアクセスしても生成されるから一週間程度で物凄い量になるのでもっと簡単にしたいというのもあった。
    というわけで、apacheのログの形式で書き出すアクセス解析のようなperlスクリプトを作ったってわけだ。なんかムダなことをやってるようだがあまり気にしない。つうかヒトのをパクリまくって作ったんですが。
    アクセスログ取得スクリプト(へなちょこ)
    ↑ZIPで圧縮してます。念のため。
    解凍したら、テキストエディタでaclog.cgi開こう。
    変更するところは3個所
    $aclog = ‘access_log’; # logfilename
    $max = ‘5000’; # logsize
    $myself = ‘http://crossbreed.tv/’;


    $aclogはアクセスログが格納されるファイル名。
    $maxはログの最大件数。これは好みで
    $myselfは自分のルートのアドレスをフルパスで。
    こんだけ。FTPでUPLOADしたら、aclog.cgiのパーミッションを755に。←これはサーバによって違うかも。
    次に、空のテキストをaccess_logというファイル名で保存してこれもUPLOAD。
    もうひとつ。log.gifという透明なGIFファイルを同じディレクトリにUPLOAD。
    次に、Individual Entry Archiveに、以下のスクリプトを追加。
    <SCRIPT Language="JavaScript">
    <!–
    document.write("<img src=’http://(サーバ名)/logs/aclog.cgi?");
    document.write(document.referrer+"’ width=1 height=1>");
    // –>
    </SCRIPT>
    <NOSCRIPT>
    <IMG src="http://(サーバ名)/aclog.cgi?JS_OFF" width="1" height="1">
    </NOSCRIPT>
    こんなカンジ。パスは各自適当に。
    あ、そうそう。自前アクセスログスクリプトを設置したなら、上のmt-mostvisited.pl

    my $logdir = “/var/log/httpd”;
    の部分をログファイルのパスを指定してください。
    ウチのサーバだったら
    “/home/(ユーザ名)/public_html/logs”
    ↑こんなカンジでかいてますね。
    後は、一色さんとこのが非常に分かりやすく解説されてますが一応書いておくことにする。
    MTの管理画面で新しいIndex Templateを作成する。
    Templateの名前は 「Popular Ranking」
    出力ファイル名は「(任意のディレクトリ)/ranking.html」
    Templateの中身は
    <div class="side">

    <ol><MTMostVisited count="20">

    <li><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a><b>(<$MTMostVisitedCount$>hit)</b></li></MTMostVisited></ol>

    <i>(Updated: <$MTDate format="%m/%d %X"$>)</i><br />

    Powered by MTMostVisited

    </div>
    こんなカンジで書いてます。ま、これも適当に。
    そしてMain Indexの中の任意の場所に以下のコードを。
    <$MTInclude file="ranking.html"$>
    これをリビルドして完了。
    うまく行きましたか?
    間違いや指摘がありましたら、やさしく教えてくださいね。よろしくです。

    商品無料仕入戦隊『電脳卸』

    この記事を読んで頂きありがとうございます。
    コメント欄も設けておりますが、
    よかったらtwitterやfacebookなどでつぶやいたりシェアして頂けると嬉しいです。

    STARを押してこの記事を評価お願いします→
    つまんないイマイチ普通まあまあよかった! (3票, 平均: 3.67)
    Loading...

    Written by ayu in: blogカスタマイズ |

    28 Comments »

    • ayu より:

      すみません。調子に乗って配布したスクリプトでしたが、不具合があることが判明しました。サーバによってはログをちゃんととれないことがあるようです。
      修正してます。使ってみてください。

    • Plog より:

      記事のランキングを表示する 2

      私の環境では、Apacheのログを見れないようなので、この方法だとランキングを表示させることは、困難なようです。 しかしながら、CROSSBREEDさんのBlogによる縺…

    • 人気記事ランキング表示

      インデックスにコメントアクセスランキングを表示してみました。 結構苦労しましたよ(;´Д`) 詳細はExtendにて・・…

    • グレンデル より:

      こんにちは~鋼鉄の拳~管理人のグレンデルです。
      すみませんトラックバック不調で2回も送ってしまいました。
      一回目のものは削除してください。
      お願い致します。

    • 管理人ayu より:

      >グレンデルさん
      ご紹介ありがとうございました。
      現在はこのプラグイン、当サイトでは使ってません。
      というのが、記事ID=ファイル名のときにしか使えないのです。
      ウチはphp化と共に日付をファイル名にしたので、どうしてもこの機能が使えなくなりました。

    • DEFAULT より:

      MT 人気記事ランキング AAA!CAFE

      人気記事ランキングと言うのをやってみたくなったのでいろいろ検索してみた。 まだ出来ていないので、今までやったメモだけ残しておく。 AAA!CAFEのapacheのアクセスログを使うことはちょっとだけ考えてすぐにやめた。 検索してみつけた、CROSS BREEDさんの「apacheのログ…

    • domy より:

      Hmmmmm interesting !!!

    • moriguchi より:

      サプライズ!!!!
      がはは。

    • kitano より:

      サンプルのIndividual Entry ArchiveとPopular Rankingテンプレートの中身が同じなのは、気にしないとして、うちのサイトに設置したら擬似ログファイルが見当たらない旨のエラーがでてしまいました。$logdirと@searchfilesを直せといってくるのですが、フルパスで記述するとだめなのでしょうか。
      こんなエラーです。
      Error in MTMostVisited. A webserver log was not found. The plugin was looking for files in the “http://www.xillion.net/cgi-bin/mt/logs“ directory, with filenames http://www.xillion.net/cgi-bin/mt/logs/access_log. Please double-check the location of your Apache webserver access log, and possibly change the $logdir variable, or any of the entries in the @searchfiles list.
      因みにログディルはこんな感じで、
      $logdir = “http://www.xillion.net/cgi-bin/mt/logs“;
      サーチファイルはこんな感じです。
      @searchfiles = ($logdir.”/access_log”);

    • 管理人ayu より:

      >kitanoさん
      テンプレートのところ、全く気づきませんでした。ご指摘ありがとうございます。
      サーチファイルの所が
      @searchfiles = ($logdir.”/access_log”);
      ではなく、
      @searchfiles = (“$logdir/access_log”);
      なのではないでしょうか?
      あと、logdirはhttpからのパスでいけるかどうかはサーバによって違うかもです。

    • kitano より:

      >管理人ayuさん
      早速の回答ありがとうございます。
      httpからのパスはだめなようです。
      /homeからのパスにしたらうまくいきました。
      参考になりました。
      うちのMovableTypeでも(勝手に)使わせてもらいます。

    • 管理人ayu より:

      >kitanoさん
      参考になったようでこの記事書いてよかったです。
      今後ともよろしくです。

    • MT-Plugins

      今回導入しようと思ったプラグイン。 Supplemental Calendar Tags カレンダーを複数表示。 [参考] [E`] M::T > カレンダーを…

    • caramel*vanilla より:

      カスタマイズ失敗記

      いつもカスタマイズの成功ばかり書いてるのでたまには失敗した記録も残しておきます。…

    • Mamo-Dead 4.0 より:

      アクセスランキング

      「aclog.cgi」も「Individual Entry Archive」に仕込んだJavascriptも上手く動いているようで、アクセスログ自体は出力されて…

    • Diary::Weblog より:

      人気記事Top10

      「人気記事Top10」を前々からしてみたかったのですが、 MTで人気記事ランキングを。:(CROSSBREED クロスブリード!)blog:N@TURE BRA…

    • junichi_y より:

      苦労のにじむ、このエントリーを参照し、MTMostVisitedプラグインの導入に挑みましたがあえなく撃沈。(笑)
      代替案で解決(?)しましたが、参考になりました。ありがとうございましたー。

    • 管理人ayu より:

      >junichi_yさん
      phpの個別ファイル化をしたとたんこれが出来なくなったのですよ、実は。
      代替案、良さそうですね。僕もやってみることにしますよ。

    • *vitalage*blog より:

      人気ページランキングをサイドバー.jpで!

      サイドバー.JPというサービスで、ブログ内のどのエントリが人気か、ランキングをと…

    • EUCでの人気記事ランキング

      「人気記事ランキング」というのを前々からやってみたかったんですが、 やっと実現し…

    • Diary::Weblog より:

      人気記事Top10

      「人気記事Top10」を前々からしてみたかったのですが、 MTで人気記事ランキングを。:(CROSSBREED クロスブリード!)blog:N@TURE BRA…

    • Diary::Weblog より:

      人気記事Top10

      「人気記事Top10」を前々からしてみたかったのですが、 MTで人気記事ランキングを。:(CROSSBREED クロスブリード!)blog:N@TURE BRA…

    • MTで人気記事ランキングを作ってみる

       Blogで色々エントリーしてると「いったいどのエントリーがよく読まれてるんだろう」という更新している者としての疑問にぶつかるわけだけど、その疑問を簡単に解決し…

    • Diary::Weblog より:

      人気記事Top10

      「人気記事Top10」を前々からしてみたかったのですが、 MTで人気記事ランキングを。:(CROSSBREED クロスブリード!)blog:N@TURE BRA…

    • 山左と一郎 より:

      無料ゲーム関連サイトのための検索エンジンです。無料ゲームも設置しています。
      http://www.twsunkom.com/p-vi/lin241.jpg

    • low level life より:

      MTで人気記事ランキングを作る!

      MTで人気記事ランキングを作ってみました(現在トップページで試験動作中)。
      ただ、MT-MostVisitedはアーカイブファイル名がエントリーIDでなくてはい…

    • 日々異常に増えるディスク使用量

      ここ最近、サーバーのディスク使用量が毎日のように数M単位で増えてて気持ちわるかっ…

    RSS feed for comments on this post. TrackBack URL


    コメントして下さい

    同一カテゴリ内記事

    最近買ったモノ


    Template: TheBuckmaker.com Blog Themes | Website Hosting, Gesundheitspapst