Phpblock stats()

提供: GeeklogJpWiki

[3]管理方法 > 管理者が導入後すぐ試せる簡単カスタマイズ > PHPブロックでブロックをカスタマイズする > アクセスカウンタPHPブロック

  • 開発者 yoh-yoh
  • ダウンロード:日本語版標準パッケージ(20061121版)に組み込み済み

目次

アクセスカウンタPHPブロック phpblock_stats()

ブロックにアクセスカウンタを表示します。

利用方法

  1. 管理者ログインしてブロック管理画面を表示します。
  2. ブロックを新規作成します。
  3. ブロックのモードを「PHPブロック」にします。
  4. 「関数」のフォームに、phpblock_statsを指定します。
アクセスカウンタPHPブロック

インストール方法

この機能は日本語版標準パッケージ(20061121版)で組み込み済みですが、それ以前のバージョンの場合には、以下のように/system/custom/phpblock_stats.phpを/system/lib-custom.phpに組み込みます。

/system/lib-custom.php

以下の行を追加してプログラムを組み込みます。

// アクセスカウンタ表示PHPブロック関数を組み込む
require_once( 'custom/phpblock_stats.php' );

/system/custom/phpblock_stats.php

<?php

function phpblock_stats() {
	// グローバル変数
        global $_CONF, $_TABLES, $LANG10;

	// インクルード
	require_once($_CONF['path_system'] . 'lib-admin.php');

	// 生成するHTML
	$disp .= '<div style="text-align:center">';
	$disp .= COM_NumberFormat(DB_getItem($_TABLES['vars'], 'value', "name = 'totalhits'"));
	$disp .= '</div>';
	// HTMLを戻す
	return $disp;
}

?>

トップページがアクセスされたときだけカウントしたい

Geeklog-1.4.1の場合,lib-common.phpを改造する必要があります。1,245行目くらいに

DB_change( $_TABLES['vars'], 'value', 'value + 1', 'name', 'totalhits', '', true );

という行があるので,これを

if ( COM_onFrontpage() ) {
    DB_change( $_TABLES['vars'], 'value', 'value + 1', 'name', 'totalhits', '', true );
}

に変更します。Geeklog-1.4.0の場合は,代わりに

if ( !COM_isFrontpage() ) {
    DB_change( $_TABLES['vars'], 'value', 'value + 1', 'name', 'totalhits', '', true );
}

とします。

個人用ツール