4月 10

昨日の記事で書いたCounterize IIですが、問題なく動いたので導入してみました。

導入方法は簡単ですね。

1.Counterize IIより、ファイルをダウンロードして解凍

2.日本語化ファイルを有効化
「counterize-ja_UTF.mo」を「counterize-ja.mo」へ名前変更
「counterize-ja_UTF.po」を「counterize-ja.po」へ名前変更

3.フォルダを「/wp-content/plugins/」へアップロード

4.Counterize IIプラグインのプラグインを有効化

5.下記タグを使用中のテンプレートに追加

Total hits: <?php echo counterize_getamount(); ?> Hits and <?php echo counterize_getuniqueamount(); ?> unique IPs.
Today: <?php echo counterize_gethitstoday(); ?> hits and <?php echo counterize_getuniquehitstoday(); ?> unique IPs.

これでデフォルト状態で使えるようになりました。

お好みで↓を編集

デフォルト状態だと昨日のHit数がでませんので出るようにいぢっちゃいましょう(笑)

counterize.phpの編集をします。

232行目の

# Returns amount of hits today.
・・・スキップ・・・
 return $wpdb->get_var($sql);
}

の下に

# Returns amount of hits yesterday.
function counterize_gethitsyesterday()
{
$today = date("Y-m-d");
$yesterday = date("Y-m-d",strtotime("-1 day"));
$sql = "SELECT COUNT(1) FROM ".counterize_logTable()." WHERE timestamp >= '$yesterday' AND timestamp < '$today' ";
$wpdb =& $GLOBALS['wpdb'];
return $wpdb->get_var($sql);
}

を追加

548行目の

# Returns amount of unique hits today
・・・スキップ・・・
 return $wpdb->get_var($sql);
}

の下に

# Returns amount of unique hits yesterday
function counterize_getuniquehitsyesterday()
{
 $today = date("Y-m-d");
 $yesterday = date("Y-m-d",strtotime("-1 day"));
 $sql = "SELECT count(DISTINCT ip) FROM ".counterize_logTable()." WHERE timestamp >= '$yesterday' AND timestamp < '$today' ";
 $wpdb =& $GLOBALS['wpdb'];
 return $wpdb->get_var($sql);
}

を追加

これで昨日のHit数とunique Hit数が出せる準備ができました。

使っているテンプレートに下記のタグを追加すれば表示されます。

Yesterday: <?php echo counterize_gethitsyesterday(); ?> hits and <?php echo counterize_getuniquehitsyesterday(); ?> unique IPs.

実はCounterize IIって管理画面にも今日のHit数とかグラフとか表示させてくれるのですよね。
↑で昨日のHit数とか出るようにしましたが、管理画面にはでないのです・・・。
ってことでサックリと修正しちゃぃますか。

counterize.phpの編集です。

1177~1178行の

<td scope="col" style="width: 15%" align="center"><?php _e("Total hits: ",'counterize'); ?>
・・・スキップ・・・
<td scope="col" style="width: 20%" align="center"><?php _e("Unique hits, the last 7 days: ",'counterize'); ?>

を下記に置き換え

  <td scope="col" style="width: 10%" align="center"><?php _e("Total hits: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 15%" align="center"><?php _e("Hits from unique IPs: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 10%" align="center"><?php _e("Total hits, today: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 15%" align="center"><?php _e("Hits from unique IPs, today: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 10%" align="center"><?php _e("昨日の訪問者: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 15%" align="center"><?php _e("昨日の訪問者(IP別): ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 10%" align="center"><?php _e("Hits, the last 7 days: ",'counterize'); ?>
  </td>
  <td scope="col" style="width: 15%" align="center"><?php _e("Unique hits, the last 7 days: ",'counterize'); ?>

日本語を直接打っているので保存するときの文字コードをUTF-8にしないと文字化けします。

1194行目の

<td align="center"><strong><?php echo counterize_getuniquehitstoday(); ?></strong></td>

の下に

<td align="center"><strong><?php echo counterize_gethitsyesterday(); ?></strong></td>
<td align="center"><strong><?php echo counterize_getuniquehitsyesterday(); ?></strong></td>

を追加

これで管理画面に昨日のHit数が出るようになりました。

最後は・・・ダッシュボードにも出るのです・・・

counterize_dashboard.php を編集します。

10行目の

$todaycount = counterize_gethitstoday();

の下に

$yesterdaycount = counterize_gethitsyesterday();

を追加

12行目の

$todayunique = counterize_getuniquehitstoday();

の下に

$yesterdayunique = counterize_getuniquehitsyesterday();

を追加

15~20行を書きに置き換え

<div class='dashboard-widget' style='width: 300px; height: 150px;'>
・・・スキップ・・・
<?php _e('Currently: ','counterize'); ?><strong><?php echo $online; ?></strong><?php _e(' users online.','counterize'); ?></p>

<div class='dashboard-widget' style='width: 300px; height: 150px;'>
<h3 class='dashboard-widget-title'><?php _e('Counterize II Status'); ?> <a href='edit.php?page=counterizeii/counterize.php'>≫</a></h3>
<div class='dashboard-widget-content' >
<p><?php _e('Total: ','counterize'); ?> <strong><?php echo $count; ?></strong> <?php _e('hits and ','counterize')?> <strong><?php echo $unique; ?></strong> <?php _e(' unique.'); ?><br />
<?php _e('Today: ','counterize'); ?><strong><?php echo $todaycount; ?></strong> <?php _e('hits and ','counterize'); ?><strong><?php echo $todayunique; ?></strong><?php _e(' unique.'); ?><br />
<?php _e('Yesterday: ','counterize'); ?><strong><?php echo $yesterdaycount; ?></strong> <?php _e('hits and ','counterize'); ?><strong><?php echo $yesterdayunique; ?></strong><?php _e(' unique.'); ?><br />
<?php _e('Currently: ','counterize'); ?><strong><?php echo $online; ?></strong><?php _e(' users online.','counterize'); ?></p>

これでダッシュボードにも出るようになりました。

書いた人: kentan

コメント

コメントがすぐに反映されない場合は、管理者の承認待ちとなります。