** counterview.inc.php[#tb355f33]
|RIGHT:100|LEFT:360|c
|~サマリ|counterプラグインでカウントしたすべてのページのカウントを表にする|
|~リビジョン|1.0|
|~対応バージョン|1.4.4|
|~投稿者|[[H2]]|
|~投稿日|&new{2004-12-18 (土) 01:47:06};|

***counterプラグインでカウントしたすべてのページのカウントを表にする[#dd0dcb84]
ページごとのアクセス数を表にしてくれるプラグイン。#counterが書かれているページの各カウント数(total, today, yesterday)をテーブルにしてくれる。
:使い方|
 #counterview
:こんな感じ|
|ページ名|トータル|今日|昨日|
|FrontPage|43|23|7|
|MenuBar|85|43|10|
|自己紹介|23|10|1|

#hr

***ダウンロード [#z6caec05]
- &ref(counterview.inc.php);

***コメント [#y223b564]
-面白いプラグインですね。テーブル表示するページ数の指定と、トータル・今日・昨日それぞれでソートができると便利かも。 -- [[sagen]] &new{2004-12-21 (火) 15:36:26};
-数字を右寄せをしたいのですが、可能ですか? --  &new{2005-01-12 (水) 23:12:05};
--小出しですいません。以下の部分のstyle=\"text-align:right;\"を加えればOKです。-- [[baniko]] &new{2005-01-28 (金) 11:49:00};
             if(strcmp($ext, COUNTER_EXT)==0) {
                $pageName = decode($fileName);
                if(eregi('^:.*',$pageName)) continue;
                $counter = plugin_counterview_get_count($pageName);
                if($counter['total']==0) continue;
                $r_page = rawurlencode($pageName);
                $ret .= "<tr>";
                $ret .= "<td class=\"style_td\"><a href=\"$script?$r_page\">$pageName</a></td>";
                $ret .= "<td class=\"style_td\" style=\"text-align:right;\">{$counter['total']}</td>";
                $ret .= "<td class=\"style_td\" style=\"text-align:right;\">{$counter['today']}</td>";
                $ret .= "<td class=\"style_td\" style=\"text-align:right;\">{$counter['yesterday']}</td>";
                $ret .= "</tr>\n";
            }

-特定カテゴリ以下のページのみとか、そんな感じでページ指定ができると便利かも。 --  &new{2005-01-18 (火) 19:24:09};
-閲覧できない設定のページに関しては、カウントを表示しないようにしたいのですが、'':''で始まるページのみ表示しないようにすることは可能なんでしょうか? --  &new{2005-01-20 (木) 12:34:19};
--とりあえず、'':''で始まるものを表示しないようにしてみました。また、WikiName等だけで、実体のないページ(total counter==0)のものも非表示にしてみました。(自分の好み) &ref(counterview.inc.php.2);-- [[baniko]] &new{2005-01-28 (金) 11:26:00};
--このようにすると、$non_list を反映するようになりますよ :) -- [[teanan]] &new{2005-01-28 (金) 12:19:29};
 16行目
   function plugin_counterview_convert() {
     global $script;
 +   global $non_list;
 
 45行目
                $pageName = decode($fileName);
 -              if(eregi('^:.+),$pageName) continue;
 +              if(preg_match("/$non_list/",$pageName)) continue;
                $counter = plugin_counterview_get_count($pageName);
--ありがとうございます。無事、指定ページの除外ができました。 --  &new{2005-01-28 (金) 15:03:34};
-おお、いつの間にかVer.2 が出てる! 嬉しいです ☆ -- [[H2]] &new{2005-02-05 (土) 18:27:59};
-カウンタが更新されないと、古い日付のカウンタも今日・昨日に表示されています。こんな感じのコードを足して使っています。 -- [[PHP初心者]] &new{2005-02-24 (木) 19:31:59};
--もっとスマートなコードがあれば教えてください。
 68行目
       static $default;
 +    $today = date('Ymd');
 111行目
       fclose($fp);
 +    // 日付比較
 +    // カウンタ日付をyyyy/mm/ddからyyyymmddに置換
 +    $cdate = ereg_replace("/", "", $counters[$page]['date']);
 +    if($today - 1 == $cdate)
 +    {
 +       // 日付が昨日
 +        $counters[$page]['yesterday'] = $counters[$page]['today'];
 +        $counters[$page]['today'] = 0;
 +    }
 +    else if($today - 1 > $cdate)
 +    {
 +        // 日付が昨日より前
 +        $counters[$page]['yesterday'] = 0;
 +        $counters[$page]['today'] = 0;
 +    }
-表示させないページをパラメーターで渡すようにするともっと使い易そうですが(例えば 「日記」を表示しない等)、自分はプログラムがちゃんと書けないので提案しかできません…; -- [[ton]] &new{2005-04-08 (金) 09:03:06};
- ソート対応パッチ http://www.revulo.com/blog/20060503.html#p02 --  &new{2006-05-04 (木) 02:20:32};
- [[PHP初心者]]さんの日付比較のパッチですが、月の最初の日(1日)だけ表示がおかしくなります。&br;以下のように修正してみました。 -- [[matsuda]] &new{2006-06-01 (木) 11:12:12};
 // 日付比較
 $today = strtotime(date('Y-m-d'));
 $cdate = strtotime(str_replace('/', '-', $counters[$page]['date']));
 if ($cdate + 2 * 24 * 60 * 60 <= $today) {
     // 日付が昨日より前
     $counters[$page]['yesterday'] = 0;
     $counters[$page]['today'] = 0;
 }
 else if ($cdate + 24 * 60 * 60 <= $today) {
     // 日付が昨日
     $counters[$page]['yesterday'] = $counters[$page]['today'];
     $counters[$page]['today'] = 0;
 }
- この間も俊太郎の詩をお  http://www.stlouisbusinesslist.com/business/5021837.htm?info=viagra viagra   8-)   -- [[viagra]] &new{2010-03-08 (月) 12:18:28};

#comment
//#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.044 sec.

OSDN