ログファイル出力ファイルを利用する、アクセス解析と、グラフ表示をするテンプレートを公開しました。
http://one-seed.com/program/?page_id=676
ご利用はご自由に。
改造もご自由に。
私が欲しい機能が元なので、不十分なとこもあるかと思いますが、、、
サポートは、しません。対応できないので、ごめんなさい。
そんなんじゃ、不親切だろ~という方や 使えるじゃん! って方は、
ご自分の名前で対応してくださってもokです。
グラフ呼び出し部分を、表グラフにしたり、FLASHにしたり
集計データを利用すると、いろいろできる! はず・・・・です。
テンプレートは利用テーマフォルダにアップします。
が、cssは別のファイルをリンクしてるので、こちらも、素敵に利用してください。
サイドバーの、月選択や、年選択をしたら、セレクトボックスの選択も変えたいなと思ってたのですが
すいません。直さずにアップしちゃいました。
受け取ったGETと、くるくる回すセレクトボックスを書きこむときに、ifで比較してselectをつければ、なるはずです。
デフォルトのデザインCSSは、ついています。
PHPのarray_searchを使って、WordPress用のアクセス解析の集計をおこなっていたのですが
すっかり、はまってしまってました。
PHPってC言語系とか言われるけど、言語って構文の書き方が似てても異なるものですからね。。
私、一番好きなのは、java言語なんで、期待がjavaの動きによっちゃうんで。。と
言い訳・・・
array_searchは配列の要素を検索して、キーを返してくれるんですが
返ったキーを判定に使おうとすると、キーが0だと
PHPのif文って、trueかfalseで判定とか言ってるくせに・・
そこがコンピュータは計算機ですよね。
0をfalseとし、それ以外をtrueとして扱う もんだから。。
issetでキー配列をとろうとしたら、
PHPったら、nullを0にしてくれちゃうものだから
で、結局、in_arrayで、消える1日リンクが解決。
現在、串刺し集計、サンプリングチェックしてるので、
大きな問題をみつけなければ、早々に公開します。
ただし、バグなしの保障はないですから。。
バグが見つかり、私自身が直していけば、こちらに記事投稿はしていきますが、期待されるほど早くないかも。
利用する人は、自分で責任もって直してくださいませよね。
こうしたテストをしようとすると、やっぱり該当ページへのリンクがしたくなっちゃいますよね。
忍者アクセスって、横棒グラフだけでできてたので、それでもいいんだろうなぁ~なんて、思ったりします。
でも、今回は、作って公開はないので、作りたい人はがんばってくださいませね。
アクセス解析にCSS頼んで作成してもらいました。
CSSファイルになっているので、デザインは変更できます。
※グラフ部分が画像なので、変更はできませぬ・・・
http://one-seed.com/program/?page_id=663
ページパスワードは、test です。
セレクトボックスの初期値変化と
集計が雑すぎたか、ばぐってるか、総計がいまいち変です。
(期待している人、いないかも知れませんが、しばしお待ちくださいませ。)
Wordpressアクセス解析用プラグイン
なんとな~くいい感じ?
http://one-seed.com/program/?page_id=663
ページパスワードは、test です。
月の集計グラフ対応もいれました。
少し使ってみないと、微調整に何をすべきか、まだまだ漏れてそうです。
アクセスしていただけたようで、円グラフ(ブラウザ)の色テーブルが足りなかったのは追加しました。
見慣れた#FFFFFFという色コード設定に変更したら、ばっちり色つきました。
もう少し、ログファイルが時系列でたまって、月が変わった対応ができてることを確認したら、公開しますね。
ほんとは、年がわりまでも確認してみたいです。
私のサイトのアクセス数は少ないですし、見よう見まねと感で作成してるとこがあるだけに、
「汎用的です!」と言い切る自信はないので、グレードアップしてくださる方がいれば、大歓迎です。
グラフ機能の部分はincludeファイルで、切り替えできるような形も考えています。
同じfuncton名で他のグラフ機能を入れ替えることができれば便利だろうなぁ・・なんて思うので
簡単に、html表バージョンと2つを作って完成させたいと思います。
アクセス解析用プラグインの作成は、
当初は1つのプラグインでログファイルを出力し、同プラグインにグラフ出力の機能を持たせる形にするつもりだったのですが
グラフの表示方法がいろいろあることと、ログ&グラフで、ソースが長くなってきたので、分割して作成することにしました。
ログ出力があり、
グラフ表示は、好きなもの(Image_Graph、open-flash-chart1 、CSS、etc)を
利用する形のほうが使いやすいですものね。
ログをじっくり見てると、自分が閲覧したページが表示される。。。のはいいとしても、
管理画面で投稿したあとのサイト表示や、投稿プレビューがカウントされるのははずしたいかな。と。。。
ログ出力時によけるか、グラフ生成でよけるか、、ですが
ログはなるたけ加工しないほうがいいかと思われるので、ログ出力ファイル用プラグインは、手を加えないことに。
グラフ機能プラグインが完成すると、ログ出力ファイル用プラグインで作成されたファイルを利用します。
利用したい人は下記のダンロードから、、、
ダウンロード logwiter.zip
展開したフォルダごと、/wp-content/plugins にアップロードし、プラグインを有効にします。
プラグインは、 wp_head(); にフックされています。
展開したフォルダごと、/wp-content/plugins にアップロードし、プラグインを有効にします。
プラグインは、 wp_head(); にフックされています。
<?php wp_head(); ?> が呼び出されたあとに
<?php if(isset($osp1)) $osp1->log_update(); ?>
の1行を追加しておきます。
このプラグインは、/wp-content 内にlogディレクトリを作成し、年/月/日の階層で、日付別のログファイルを出力します。
ログファイルはタブ区切りで出力されます。
エクセルなどタブ区切りを読み込める表ソフトで開くと生ログファイルとして内容を確認することができます。
プラグインに関しては、自分の欲しいツールとして作成、公開をしてますが、バージョンアップやサポートに対応していく予定はありません。
・・・・・・・・・たぶん、対応できないんで・・・
もしも、もっと汎用的に便利に使えるようにしよう!というのであれば、利用していただいてかまいません。
アクセス解析の日別グラフを作成して、テスト配置してみました。
http://one-seed.com/program/?page_id=663
ページパスワードは、test です。
・・・悲しいかなバランスが、悪い。
Image_Graphを、もうちょっと調べなくちゃだめですね。
なぜか、今日の時間別アクセスが集計されない・・・・1時すぎるとできたりして。 現在 0:59
ほんとに、1時になったら、線がでた!
最小最大値の対応させないと、グラフのバランスが悪い。
テストしおわるまでに時間がかかりそうですね。。。
アクセス数を持つサイトじゃないので、さびしい数字ですが、Image_Graphはデータの最大値でグラフを作成するので、アクセス数の多いサイトでも、問題はないでしょう。
ktai_styleのテンプレート(header.php)にも、ログ出力を入れてみました。wp_head()で起動かけちゃってるんですが、大丈夫かな・・・。
・・・・・・・・・横棒グラフ、Wordpressのページと連携するリンクもデータには持っているのだけど
画像グラフにしたら、リンクできない。
やっぱりhtmlの表のほうがいいのかな。。
となると、open-flash-chart でいいじゃないってことになる。
WordPress用アクセス解析プラグインを作成しようとして、最初は、機能満載構想だったのですが、さすがに現実と向き合い機能が減ってきました。(悲)
まだ完成段階ではありませんが、先が見えてきたので仕様の整理。
-条件-
PHP4でも動く
グラフ
Wordpressの機能と連携
テンプレートを利用
-日別機能-
●時間帯アクセス 縦棒グラフ
●ページごとのアクセス集計 横棒グラフ形式
個別ページ、投稿、カテゴリのタイトル、リンク アクセス数
私の場合、まだまだ投稿記事が少ないから、1ページにまとめてもいいですが、長く書いている人はページ数は多いですよね。
いまは、1つにまとめていますが、
先々、上位、下位、投稿、ページ、カテゴリ などで、分けてしまったほうがいいかもしれません。
●ブラウザ 円グラフ
●検索エンジン/クローラ 円グラフ
※ユーザ追跡と検索ワード機能は考えていたのですが、今回はなし。
-月別-
グラフは、いろいろ試行錯誤で悩んだあげく、PEARのImage_Graphを利用することにしました。
PEARがインストールできるとは限らないので、インストールをするのではなくディレクトリにアップしておく方法
日本語フォント等も一緒に持たせてしまうので、かなり、、容量が大きいです。
忍者アクセス解析のように、表を利用するほうが軽い! とも思うのですが、
ログファイルを利用すれば、できるので、今回はあえて、画像 PEARで!
今回、PEARのImage_Graphを利用するにあたり、参考にさせてもらったのは下記のサイトです。
http://d.hatena.ne.jp/akiraneko/20080208/1202729847
http://labs.sotaro-k.com/PHP/PEAR/Image_Graph/Tips/%E7%94%BB%E5%83%8F%E3%81%AB%E5%90%8D%E5%89%8D%E3%82%92%E3%81%A4%E3%81%91%E3%81%A6%E4%BF%9D%E5%AD%98%E3%81%99%E3%82%8B/
さすが、PEARだけに利用者も多いですね。TIPSが多いです。
アクセス解析のグラフ用ツール探しで、はまり中です。WordPressの中に取り込みたいですから。。。
まずは、軽いという噂をみつけて open-flash-chart1 を(しつこく)試してました。
open-flash-chart2が出てるのですが、情報はopen-flash-chart1のほうがおおそうだったのでこちらにしてます。
ファイルを作成して読み込ませなければならないのと、横棒グラフがないので、設置できて満足。でほか探し中です。
もしかしたら仕事で利用すると思うと、クリックしてサイトに飛んでしまったり、ライセンスの問題あるとなると辛いですしね。
今、想定してるのは、PHP4でも動くグラフなので、
よさげなLibchartはPHP5なので、まだ試していません。※動くかもしれませんが。
–open-flash-chart1 の覚書–
グラフ動作を見たいかたはこちら データはサンプルを利用しています。
/wp-content/themesにoschart というディレクトリを作成し、中にjsフォルダ、php-ofc-libraryフォルダ、open-flash-chart.swfの3つをアップ、テスト用に、同じoschartにサンプルデータ用のファイルをおく
テンプレートを作成して、下記のタグを書き、ページを作成する。
<?php
include_once TEMPLATEPATH. ‘/oschart/php-ofc-library/open_flash_chart_object.php’;
?>
を、最初に記述し
<?php
open_flash_chart_object( 500, 300, get_bloginfo(‘template_directory’).’/oschart/chart-access_time.php’, false,get_bloginfo(‘template_directory’).’/oschart/’ );
?>
折れ線グラフ chart-access_time.php として保存
<?php
open_flash_chart_object( 300, 300, get_bloginfo(‘template_directory’).’/oschart/chart-agent.php’, false,get_bloginfo(‘template_directory’).’/oschart/’ );
?>
円グラフ chart-agent.php として保存
<?php
open_flash_chart_object(500, 300, get_bloginfo(‘template_directory’).’/oschart/chart-access-page.php’, false,get_bloginfo(‘template_directory’).’/oschart/’ );
?>
棒グラフ chart-access-page.php として保存
アクセス解析プラグインを開発中、いくつかのサイトにログ出力のプラグインを設置
あわせてグラフ化をどうやろうかなとか、日付解析に飛ぶのは、やっぱりカレンダーかなとか、悩みながら
ログが正しく取得できているのかを確認している最中なのですが
なんか、変なログあるな~と思ったら、クローラでした。
拒否設定等、くわしいページがありました。
http://www.seiren-udoku.com/
http://tonecontrol.mods.jp/memo/htaccess_deny.html
公開するサイトは、アクセス数が増えたほうがいいだろうから、クローラ(巡回)も大歓迎とも思ったけど、まるでサーバアタックのようなふるまいをするってのは、困りますよね。
対応するときの調査もできたら、いいな。とか、、、いかん。まだ出きてもいないのに、欲がでてきてしまう。
利用ブラウザ (PC 携帯)の取得が、文字列長いから、ログ保存前に振り分けちゃおと、短縮名で設定したときのチェックで振り分けしたのが間違ったのかと思って、あせってしまいました。で、とりあえず、ログはログらしく生のまま保存することに
視覚的グラフ表示ですが、どうしようかな~と悩んでさがしてたら、沢山のツールを紹介してくれているサイトに。
http://www.moongift.jp/category/category/graph/
よけいに沢山のツールをみて、また、悩みだしちゃいました。CSSからAJAX、FLASHまでグラフ視覚化してます。
FLASHが一番、ブラウザ依存性にひっかからないのかな。とは思いますが。FLASHも、よくわかってないですから・・・
※仕事時には、頼りきれるフラッシャーさんがいるので、私は指示されたデータを送るだけなんで。。
このサイト、CMSをはじめてさわりだし、いろいろインストールしようとしてた時に、よく覗いてました。
いろいろなオープンソースをレビューしてくれています。
プラグインを作成しよう・・という記事を書いてはいるけど
やっぱり、あれば使ったほうがいい。探したほうがいい 日本語説明のサイトは少ないけど検索しまくると手がかりは見つかる。
もちろん、テンプレートタグを使って利用できることも多いし、関数も多い。
WordPress関連の記事をたくさん読むのが、一番知識が増える。
私はPHPエディタを使って、WordPressのソースを調べながら、サイト情報を参考にしながら、また、WordPressをいじくりまわして、調べている。
欲しいプラグインに似た機能のもつプラグイン ※近いけどちょっと違う
は、まずダウンロードして、実際に使ってみる。
機能が違うにしても、動作やソースから、かなりのヒントを得られる。
※といっても、まだ分からないことは多い。英語読めないし。いまさら覚えられないし。。。
プラグイン作成のヒント やりたいことがあるけど、どういう形で作ればいいか・・と悩んだら、
WordPressの情報がまだまだ少ないと思っていても、MTの情報も探してみるといい。
かなりのヒントがころがっている。
プラグイン 専用タグ テンプレート この大きな3つの仕組みが同じなので、ヒラメキも近いかも。
いま、作りたいのが、Wordpress用のアクセス解析。
アクセス解析って面白いですよね。
サーバーには、AWStatsが入ってはいるのだけど、WordPressのURLをパーマリンク設定を特にしてないので、?p=123のようなGETパラメータは無視されちゃう。※これは設定ができるのであれば解決するので、サーバーの管理パネルから確認してみるのがいい。
http://www.perfectsky.net/blog/?p=19
でも、リンクされている画像とかも、当然ながらカウントされちゃうわけだし
ページ内での動きも調べてみたいし、
人気がないページなら、サイトのリニューアル時に削除検討とか、
ビジネスサイトを作るためにWordPressを利用した場合にも、あったら便利。
もちろん、有料サービス使えば、いろんな機能のものがある。
ま、そこまでは、できないにしても、どれくらいアクセスされているかとか、調べられると面白いですよね。
WordPressに組み込んでしまえるなら、 the_title なんてテンプレートタグも使えてしまう
・・・といって、DB読み込みをしなきゃならなくなるので、毎回やるのは大変かしらね・・・
WPと同じデータベースは使いたくない。
使うなら別途用意しておいたほうが安心。テンプレートをいじれれば、表示レイアウトはカスタマイズできるものを作りたい。
もちろん、ログをデータベースに書き込めば、データ抽出やデータ集計が楽なことは百も承知なんだけど
なんか、もっと気軽に(サーバーの制約悩まずに)に解析できないかなと、思ったのがきっかけでファイル処理で行おうとしている。
WordPressのページ機能ってパスワードで保護できるので、解析ページのテンプレートを作成してパスワード保護しておけば、サイト管理者には見やすくなるかな。と。
とりあえず、ログファイルの書き出しは成功しているのだけど、表示する形で、テンプレートを作り、それによって修正する必要も出てくると思うので、まだ、公開はしません。※しても、このサイトで記念発表ぐらいですね。
もともと、wordpressで作成した携帯サイトのアクセス解析がしたいという話が発端。できればどのようにページを見たかの追跡もしたいという希望があった。
ちょっと、この運用サーバーが信頼できなくて、ど~しても、WordPressの外に出たくなくなった。
それに、すでに運用されているサイトのリニューアルだったので、あまり冒険はしたくないのが本音。
今回は、すでにinfoseekのアクセス解析が導入されていたので、優先度の高いページにタグを張り付けることで終わったのだけど、公開されてから、アクセス解析をみたら、面白いほどの数値がでていて、
やっぱり、プラグインが作れたら、便利だな。と、
がんばっている最中です。