【スポンサーリンク】

WordPressカスタムプラグインに日毎のPVを表示する機能を追加した

WordPressカスタムプラグインに日毎のPVを表示する機能を追加した

WordPressプラグインに日毎のPVを表示する機能を追加しました。

\記事が役に立ったらシェアしてね/
【スポンサーリンク】

1. add_menuを追加

自作のカスタムプラグインを使っています。
今回は、そのプラグインに機能を追加します。

まず、新しいサブメニューページを chiilabo_stats_admin_menu関数内のadd_menu_page関数の引数に追加しました。

add_submenu_page(
    'chiilabo-stats',    // 親メニューのスラッグ
    '日別PV',
    '日別PV',
    'edit_posts',
    'daily-pageviews',
    'daily_pageviews_display',
    4
);

daily-pageviewsがページのスラッグ(URLみたいなもの)で、daily_pageviews_displayが表示されたときに実行される関数です。

2. 表示関数を定義する

あとは、daily_pageviews_display関数を定義するだけ。
この関数内でデータベースからデータを取得して表示します。

function daily_pageviews_display() {
    global $wpdb;
    
    $table_name = ACCESSES_TABLE_NAME;
    $query = "
        SELECT DATE(date) as date, SUM(count) as pv
        FROM $table_name
        GROUP BY DATE(date)
        ORDER BY date DESC
    ";

    $results = $wpdb->get_results($query);

    echo '<table>';
    echo '<thead><tr>';
    echo '<th>日付</th>';
    echo '<th>PV</th>';
    echo '</tr></thead>';
    
    echo '<tbody>';
    foreach ( $results as $row ) {
        echo '<tr>';
        echo '<td>' . $row->date . '</td>';
        echo '<td align="right">' . number_format_i18n($row->pv) . '</td>';
        echo '</tr>';
    }
    
    echo '</tbody>';
    echo '</table>';
}

この関数では、CocoonテーマのACCESSES_TABLE_NAMEテーブルから日付ごとのPVを集計し、最新の日付が上になるように取得しています。
あとは、取得したデータをテーブル形式で表示します。

表示関数を定義する

これで新しいサブメニュー「日別PV」をクリックすると、日毎のPVが表示されます。

表示関数を定義する

必要に応じて、表示するデータの期間を限定したり、ページネーションを追加したりするなど、さらに機能を拡張することができます。

こちらもどうぞ。
WordPressカスタムプラグインのタイムアウトを避ける(mixhost)
WordPressカスタムプラグインのタイムアウトを避ける(mixhost)
カスタムプラグインでサイトの統計情報を分析しているのですが、時々タイムアウトで動かなくなってしまうんです。 そこで、cPanelのMultiPHP INIエディタを使って、max_execution_timeの設定を変更してみました。 これで、プラグインが途中で止まらずに済むようになりました。 カスタムプラグインの動作が安定しない カスタムプラグインでサイト統計情報を分析しています。 ところが、最近 そのプラグインの統計ページが動かないときがあります。ページの再読み込みすると...

[WordPress] 投稿月でグループ分けした月別PV集計表を見るためのカスタムプラグインを作った【ChatGPTと】
[WordPress] 投稿月でグループ分けした月別PV集計表を見るためのカスタムプラグインを作った【ChatGPTと】
一ヶ月分のブログ公開がどれぐらいのページビューにつながっているのか、集計する自分用のWordPressプラグインを作成しました。 自分にとっては未経験の分野でしたが、対話型AI「ChatGPT」に相談してみると、使える叩き台を用意してくれました。 WordPressプラグインづくりははじめてでしたが、かなりの時間短縮。無事に完成しました。 アクセス集計プラグイン 一ヶ月分のブログ公開が、どれぐらいの成果になっているのか知りたいことがあります。 これまでは、Google Ana...

QRコード生成APIをGoogleからqrserver.comに変更した
QRコード生成APIをGoogleからqrserver.comに変更した
ついに GoogleAPIsのQRコード生成APIが終了していたので、QR code generator(goqr.me)のAPIに変更しました。 変更前: ' . $url 変更後: ' . urlencode($url) 前提: $url = get_the_permalink(); URLをURLエンコードするのがポイントです。 QRコードが表示されていない? このサイトの記事を印刷すると、その記事のQRコードが印刷されるように設定しています。 ところが、久しぶりに印刷...
QRコードを読み込むと、関連記事を確認できます。

WordPressカスタムプラグインに日毎のPVを表示する機能を追加した
【スポンサーリンク】
タイトルとURLをコピーしました