Google Analyticsで時間毎のアクセス数を見る。

先日、弊社管理サイトのサーバーを変更することになり、移転タイミングを決めるため、なるべく訪問者数を少ない時間を調べることになりました。
たしか、Google Analyticsでは標準で、時間別のアクセス数をグラフで見られたはず、と思っていたのですが、無いです。バージョンアップの際に消えたらしいです。しかも結構昔に。

単純にユーザーサマリーで「時間別」を選ぶと↓のようになります。

20160515ga00

今回は「何時のアクセスが1番少ないか?」を知りたいので、これでは用を為しません。
(CSVを落として、集計すればわかりますが、もっと手っ取り早く知りたい。)
そこで、時間別の数字を見るには、カスタムレポートを使います。20160515ga01
上部メニューから「カスタム」のリンク→「新しいカスタムレポート」のボタンを押す。

20160515ga02
各項目を埋めていきます。
・タイトル … 任意です。適当に分かりやすい名前を。
・レポートタブ名前 … 任意です。ここも分かりやすい名前を。
・指標グループ … 「ページ別訪問数」を選択。
・ディメンションの詳細 … 「時」を選択。
・ビュー … 複数のビューを設定している場合には、目的の物を選択。

「保存」を押して、実際にレポートを見てみましょう。

20160515ga03無事0時~24時の時間毎の訪問者数が「ぱっと見で」わかるようになりました。
例では、午前4時が最も少なくなる時間帯で、何かやるに箱の前後が好都合、と言うことになります。

何らかの理由で、閲覧者の多いサイトを一時的にでも止めなくてはならない時や、逆にアクセスが多い時を狙って新規コンテンツをアップするなどの判断に使える基本的なデータになります。


コンタクトフォーム7のエラー(警告)を取る

みんな大好きcontact form 7。WordPressにお手軽にフォームを設置でき、カスタマイズも自在な人気プラグインです。私も長いことお世話になってます。
バージョン4.4に上げたあたりから、警告がダッシュボードに出るようになりました。
blog_cf7_01

設定は何も変えてないのに出た場合は、このまま利用してもちゃんとメールは届きます。
暫く放置してましたが、やはり気になるので、きちんと対処してみました。blog_cf7_02

今回の例では、エラーが2個ありました。というか書いてありました。blog_cf7_03

実際の設定画面を開いてみると、赤字の警告が該当項目の下に書いてあります。
それぞれ対処しましょう。
blog_cf7_04

題名の方はカンタンな話で、フォームからの送信時に題名が入ってないと、題名無しのメールになってしまうので、警告が出ます。ここは、題名が空欄の場合でも何らかの文字が入るように、分かりやすく「件名:」と入れてみました。

送信元のエラーですが、例としてあげたWordPressはドメインsample.com/test/と言うフォルダに構築しているため、ドメインが違うと認識されたようです。(もしかしたら違う理由かもしれませんが、それしか心当たりが無いので。)サブドメインを使っていても同じエラーが出るようです。
このような同じドメインのはずなのにエラーが出る場合はタグを使わず、
直接test@sample.comのように、アドレスを書き込んでください。blog_cf7_05

[]を取るのを忘れずに。構文エラーで怒られます。blog_cf7_06

この状態で保存をすると、エラーが無くなり警告も表示されなくなりました。スッキリです。
用法として正しいメールを送るように警告しているので、送信に支障が無くても折を見て対処した方が良いでしょう。


WordPressのダッシュボードからDBを操作する。[adminer]

WordPressのデータベースを操作する仕事があって、ちょくちょくDB内のデータを確認する必要があったのですが、通常だと、サーバーにphpmyadminを入れて使うことが多いと思います。あらかじめ用意してあるレンタルサーバーもいいですね。しかし、プラグインを使ってWordPressのダッシュボード内で完結させることもできます。
プラグイン[adminer]の導入
adminer01

例によって、ダッシュボードのプラグイン→新規追加より、adminerを検索し、導入します。

adminer02

無事に導入できると、メニューのツール内に「adminer」が追加されます。

イルカがかわいい。
開くと、DBへのログイン画面になります。日本語化済みで助かります。表示は別タブでも同一タブでもお好みで。
ログイン後は、phpmyadminに似た画面が出てきます。
adminer04
データの確認だけで無く、インポート、エクスポートやテーブルの作成、SQLコマンドの実行など、一通りのDB操作はできるようになっています。
ただし!DBの扱いは一歩間違えると、WordPressの再起不能を招きますので、くれぐれも慎重に操作してください。
adminer自体は、単体でphpmyadmin代わりに動くプログラムもあります。(そっちがメインかも?)phpファイル1つで動作するので、何らかの事情で、phpmyadminが導入できないサーバーなどで役に立ちますね。

Windows10におけるイメージバックアップ

これまで、必要なファイルのコピーを取ることでバックアップを済ませてきましたが、Windowsが起動しないなど、何かあった時のために、windowsの機能を使い現状回復用のイメージバックアップを作ってみました。リカバリディスクに近いものです。使用中の環境を丸ごと保存します。Windows10の場合のやり方を書いておきます。

スタート→設定 から設定ウィンドウを開きます。win10_backup01
更新とセキュリティ↑をクリック

win10_backup02

左メニューの「バックアップ」をクリックし、[バックアップと復元]に移動(Windows7)をクリック → バックアップと復元ウィンドウが開きます。

win10_backup03

左メニューから「システムイメージの作成」をクリック
→別途システムイメージの作成 ウィンドウが開きます。

win10_backup11

選択肢としてハードディスク以外に、DVDドライブやネットワーク上のNASなども選べます。
ここでは一番手軽で早い、ハードディスクを選びました。(あらかじめ、外付けハードディスクを接続しておきました。)
DVDでもディスクは作成できますが、システムの状態によってはかなりの枚数が必要になります。5000円程度でバックアップ用のハードディスクを買った方が作成も早く手間もかからずお薦めです。

win10_backup04

さらに、復旧時に使う修復ディスクを作っておきます。起動できないときのためです。
(バックアップが終わると、作るか聞かれます。)
バックアップと復元ウィンドウから、システム修復ディスクの作成 をクリックし、
システム修復ディスクの作成ウィンドウが開きます。

空のDVDをDVDドライブに入れておき、ディスクの作成ボタンを押します。win10_backup06

PCが起動しないような倍は、このディスクを使って起動し、先ほど外付けハードディスク上に作ったシステムイメージからコンピューターの復元を行います。

通常メーカーのリカバリや、Windows10の回復では、OSの初期状態には比較的簡単に戻せるものの、その後に追加したソフトウェアは個別にインストールする必要があります。
特にofficeやらadobeやらライセンス認証に絡んだソフトは時間も掛かり大変面倒です。
また、Windows7、8などからアップグレードしたWindows10環境となると、旧Windowsを導入することから始めなくてはなりませんので、これもまた面倒です。
現状回復可能なイメージファイルを作っておくと、トラブル時に最短で復旧できますので、皆さん時々作っておきましょう。

だいたい、バックアップしていない人のハードディスクからクラッシュしていくものです。


Windows10におけるスタートアップ登録はどこ?

Windows起動時に特定のソフトを自動で起動するには、昔からスタートアップフォルダにショートカットを放り込むと決まっています。このフォルダにはWindows7までは、スタートボタンから直接アクセスできましたが、Windows8から例のスタートメニュー大改造でどこへやら、と言った状態です。久しぶりに使おうとして、場所を探してしまったので、メモとして残します。

Windows10のスタートアップフォルダは、以下の場所になります。ログオンユーザー毎の場所と、全ユーザー共通の場所が用意されています。(windows7以降共通です。)

ユーザー毎に設定
C:\Users\[ユーザー名]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

全てのユーザーに適用
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

ユーザー名が分かっていれば、上記の[ユーザー名]を適切なユーザー名で書き換えたものを、エクスプローラのアドレスに直接ペーストすればアクセスできます。

win10_startup01

ただし、AppData以降が隠しフォルダになっているので、
マイコンピュータ→C:と順にたどっていく場合は、隠しファイルを表示する設定を有効にする必要があります。
フォルダを開き、「メニュー」の「表示」から、「隠しファイル」のチェックを確認して下さい。win10_startup02

 

あとは、起動したいプログラムのショートカットや、プログラム本体なりを入れてください。動作のチェックに再起動して確認をします。

別の方法。
マウスでちまちま開くよりもキー操作でぱぱっと入力できる人は
Win+R→shell:startup→enter で一発です。

win10_startup03

 

ログイン中のユーザーのスタートアップフォルダが開けます。
ユーザー別のスタートアップフォルダが一発で開きます。


CRONジョブのを使って一定時間毎にphpを動かす( コアサーバーの例)

f157251c72cafb1542af36151665e17b_s
一定時間おきにサーバー上のプログラムを動かすCRONジョブ。便利です。
某案件で、一日一回海外の為替レートを見て、ショップの売価に反映させるPHPを動かす必要があって使っています。この案件ではコアサーバーを利用していますが、たいした知識も無くCRONジョブを使おうとして、設定にはまったので、反省と備忘録を兼ねて記事にしておきます。
設定画面
そのものずばり、管理画面のメニューに「CRONジョブ」があります。
 cron01
設定画面を見るとなんとなく、時間とプログラムの場所を書いておけばいいのだなと思いますね。そしてページの下には記述例もありましたので、参考にして処理を書き、該当PHPファイルまでのフルパスと、動かしたい時間(毎朝9時)を書いて設定しました。
こんな感じでした。
間違った記述例
しかし、いつまでたっても動きません。
時間を書き換えてみたり、PHPの内容を確認してみたり、やたらと沢山設定してみたりと、
数日ムダにしてはじめて気がつきます。「たぶん根本的に間違っている。
そこで改めて説明文をよく見てみます。
・上段にCRONジョブの例
・下段にシェルスクリプトの例
が記述してあります。
ここでようやく気がつきます。
CRONジョブはシェルスクリプトを書いて、そのスクリプトを指定時間に動かすサービスである、と。と言うことは「PHPを動かす処理を書いたシェルスクリプト」を書いてサーバーにアップしなくてはなりません。
UNIX使いの方や、サーバー屋さんには当たり前なんでしょうけど、全然分かっていませんでした…。
そもそも説明に

「 「分 時 日 月 曜日」で指定した時間に「/virtual/car/~」で指定したシェルスクリプト(/bin/sh)を実行します。」と書いてあります。よく読まないとダメです。


結局正解はこうなります。
1.シェルスクリプトrate.shを書く
動かしたいPHPをサーバーのフルパスで書いておきます。
#!/bin/sh
#PHP
/usr/local/bin/php /virtual/ユーザーID/public_html/www.aaaa.com/rate.php
exit
2.rate.shをサーバーに置く
 FTPでアップ。
 3.CRONジョブ設定画面でrate.shを動かす時間を指定する。
rate.shをフルパスで記述します。
1日1回毎朝9時だと図のようになります。
cron03
 4.指定時間まで待つ。
動けば、完了です。
これでめでたく動くようになりました。
同じバリュードメイン系サービスのxreaやvalue serverもほぼ同じようです。
上手く活用することで、一定時間おきの処理などをサーバーサイドの時間設定で動かすことが出来ますね。
そして何事も説明はよく読みましょう。

Kindle本を読める端末について

先日、弊社で電子書籍を発売しました!

★バスケットボールスピリッツ6号★
バスケットボールスピリッツKindle版6号

Kindle版ですので、アマゾン限定発売です。
発売にあたり誤解が多かったのが、Kindle端末を持っていないと読めないのでは?と言う声でしたが、Kindle本は「専用端末を持っていなくても」読めます。
必要なのは、アマゾンのアカウントだけです。
無料の書籍もマンガや雑誌を含め多数有りますので、この機会に是非
アカウントだけでも作ってみることをオススメします。

Kindle本は、確か最初の頃はリーダー端末を買うしかなかったはずなんですが、いつの間にか、あらゆる環境で読めるようになっていました。試しに手持ちのKindleアプリが用意されている端末すべてに入れてみました。↓こうなります。

kindlebook02
後ろ、PC、手前左から、iPad mini / Xperia Z ultra / Xperia Z3 /Kindle Fire HD

今後、電子書籍の読み方、のようなコンテンツを作るかもしれないので、現状のKindleアプリの守備範囲を調べてみました。
(2015年11月15日現在の情報です。)

先に簡単に利用までの流れを説明しますと、
利用開始までには、
1.アマゾンでアカウントを作る。
2.アプリをインストールして、アカウントを登録する。
3.Amazonのサイトかアプリから書籍を購入。
4.読む!
と言った手続き、設定が必要になります。

★はじめにアマゾンのアカウント

どの端末で読むにしても、アマゾンのアカウントは必須です。
こちらから作っておきます。もちろん無料です。
www.amazon.co.jp/login2
引き続き、電子書籍を購入するのですが、とりあえず試してみたいだけなら、
無料本を購入(と言うのも変な表現ですが、)しておきましょう。
買った本は、下記で紹介する、各リーダー(Kindleアプリ)で読むことが出来ます。

★パソコンで読む

kindlebook06
○大画面で快適読書。
×最近のPCは横長ワイドが基本なので縦長のコンテンツは読みにくいかもしれない。
パソコンソフトKindle for PC を使えば、Windows PC上でKindle書籍が読めます!
PCの大画面で読めることは最大のメリットです。
下記リンクからダウンロードしてインストールするだけ。後は、先ほど作ったアカウントでログインします。
Mac版やブラウザ版もあります。ブラウザ版ならインストールも不要です。
kindle for PC
http://www.amazon.co.jp/gp/feature.html/?ie=UTF8&docId=3078592246
kindle for Mac
http://www.amazon.co.jp/gp/feature.html?docId=3077089416
Kindle cloud reader
https://read.amazon.co.jp/

★Androidで読む

kindlebook04
○アプリ内で購入まで出来、専用端末と大差ない操作感。
×端末によってばらつきが大きいので、液晶の品質によっては読みにくいかも。
Android系のスマホ&タブレットでそれぞれ無料のKindleアプリが出ています。
アマゾンのアカウントでログインすれば、いつでも電子書籍が読めます。
もちろん画面の大きなタブレットの方が読みやすいですが、テキスト主体の書籍なら、
スマホでも本によっては十分実用的です。最近は画面も大きいですしね。
Androidではアプリ内で書籍の購入もできるので、さらにお手軽です。
雑誌は片面ずつ、拡大して読むスタイルになります。
Google Play
https://play.google.com/store/apps/details?id=com.amazon.kindle&hl=ja

★iOS(iPhone,iPad)で読む

kindlebook05
○美しいレティナディスプレイで読書
×書籍の購入はブラウザから
iPhone&iPadでももちろんアプリが出ていますので、Android同様読めます。
Androidと違ってアプリ内でストア機能は使えません。書籍はsafariなどのブラウザを通して購入することになります。
ちょっと不便です。こちらもタブレットのiPadの方が読みやすいですが、retinaディスプレイもあって、iphoneも実用的ですね。iphone6 plusなどは大きさと重さのバランスが良く、電子書籍に向いていると思います。
apple app store
https://itunes.apple.com/jp/app/kindle-ben-dian-zi-shu-ji/id302584613?mt=8

★書籍を買う

kindlebook03

アプリの準備ができたら、とりあえず、無料本でも何でもいいので、買ってみましょう。
カードでの支払設定が済んでいると、クリックひとつで購入になりますので、気をつけて下さい。
購入時にどの端末にダウンロードするかを選べますが、後から別の端末でダウンロードもできるので、大丈夫です。

★どれがいいのか。

個人的には上記に上げた全ての端末に加えkindle fire HDも使っていますが、単純に画面が大きいほど読みやすいです。(当たり前です。)
ただ画面が大きいと、端末が重く手が疲れるという別の問題が出てきます。じゃあPCがいいのかというと、書籍はやはり板状のものを手にとって眺める方が見やすいのです。
どれも一長一短有るので、使い勝手は実際に使って頂くしか有りませんが、あえてお薦めするなら、7~8インチ以上のタブレット端末です。

弊社で発売したような固定レイアウト型の雑誌なら、高解像度カラーのタブレット端末がやはり読みやすいです。コンパクトな7インチ(NEXUS7クラス)、8インチ(iPad miniクラス)サイズでも十分実用的でしょう。5インチクラスのスマホだと、拡大すれば問題なく読めますが、雑誌のように眺める読み方にはやや不向きです。(個人的に出たばかりのiPad Proで見るとどうなるか、興味あります。見開きでいけるのか?)

また、Kindle各アプリは複数端末で読んだ箇所を同期できます。日中スマホで読んだ書籍の続きを夜に自宅のタブレットで読むと言うこともできますので、複数台あっても便利に使えます。

とりあえず、アカウントは無料ですので、手持ちの端末にKindleアプリを入れて頂き、無料本を楽しんでみてください。
そしてバスケットに興味があれば、弊社発行のバスケットボールスピリッツを是非ご購読ください。書籍の方もアマゾンで買えます。

★Kindle無料本
http://www.amazon.co.jp/s/ref=amb_link_68378709_10?ie=UTF8&field-price=0-0&rh=i%3Adigital-text%2Cn%3A2250738051&pf_rd_m=AN1VRQENFRJN5&pf_rd_s=merchandised-search-1&pf_rd_r=1XM4W40TRS423965C3DG&pf_rd_t=101&pf_rd_p=205067909&pf_rd_i=2275256051

★バスケットボールスピリッツ
https://www.amazon.co.jp/s/ref=sr_nr_i_2?rh=k%3A%E3%83%90%E3%82%B9%E3%82%B1%E3%83%83%E3%83%88%E3%83%9C%E3%83%BC%E3%83%AB%E3%82%B9%E3%83%94%E3%83%AA%E3%83%83%E3%83%84%2Ci%3Adigital-text&keywords=%E3%83%90%E3%82%B9%E3%82%B1%E3%83%83%E3%83%88%E3%83%9C%E3%83%BC%E3%83%AB%E3%82%B9%E3%83%94%E3%83%AA%E3%83%83%E3%83%84&ie=UTF8&qid=1447583383

そして…12月には最新7号がでます!(なにげに告知)


見せるページと見せないページを会員権限で簡単に分けるプラグイン

この記事は1年以上前に投稿されました。
公開時の情報を元に記述してありますので、最新版に対しては内容が陳腐化している可能性があります。ご注意ください。
先日、会員制サイトをWordpressで構築しました。
その際、コンテンツの閲覧を会員の権限によって分ける必要があったので、いろんなプラグインを試しましたが、最終的に採用したものをご紹介します。
類似のプラグインは多々あるのですが、日本語で設定できること、クライアント側でも簡単に設定できることを重視して今回は、 WordPress Access Controlを導入しました。
20151015_002
 導入は、プラグインページ→新規登録で入れられます。
日本語化ファイルは検索したところ複数あったのですが、一番新しそうな、こちらで配布されているものを利用させていただきました。
(リンク先があれば、この記事いらない気がしますが。)
導入後、プラグインを有効にすると、設定→Members Onlyから、サイト全体の設定ができるのですが、今回は使いませんでした。
各投稿ページの右上に公開範囲を決める選択肢が現れます。
20151015_001
ここで、ユーザーの権限に合わせて見せる範囲を決めていきます。
追加された権限などにも対応します。
20151015_003
 投稿時に、「このページを誰に見せるか」をチェック一つで選べるので、クライアント側での作業も簡単です。
非表示のページは、メニューからも消え、対象外の人には、ページの存在自体がわからなくなります。逆に、非会員のみに見せるページを作ることも可能です。(入会のご案内など)
また、この設定は投稿だけでなく、固定ページでも有効です。
これにWordpressのユーザー管理を組み合わせると、シンプルな会員制サイトのできあがりです。コンテンツ閲覧型のサイトならこれで十分機能します。

WordPressの高速化(初級編 EWWW Image Optimizer)

サイトの高速化に取り組む仕事があったついでに、自分たちのブログがどんな状況か、
googlepage speed Insightsを見てみたところ、

speed001

0/100

驚異の0点。はじめて見ました。ひどい。

現状、このブログは素のWordPressttwenty fiftyの組合せで、きわめてプレーンな状態です。しかし、google様には問題だらけと言うことで、多くの指摘をうけました。

中でも、一番の心当たりとして、画像の最適化があります。メンバー皆が好きなように画像を貼りまくった記事をアップしていることから、かなり影響がありそうです。しかし、画像の最適化のために結構な枚数の画像をFTPでダウンロードしてから、処理の後、再度アップするのはかなり面倒です。

そこで今回はお手軽にプラグインを導入します。

ewww01

導入したのは、EWWW Image Optimizerです。プラグインページから新規追加でカンタンに導入できます。導入後はサイドメニューのメディアからBulk Optimizeを開き、「Start optimizing」を押すだけです。画像の数によっては、かなり時間が掛かりますので、そこだけは覚悟して押して下さい。

bulkoptimize

最適化が終わって、PageSpeed Insightsに再チャレンジ。

speed002

とりあえず、一気に25までスコアアップしました!(元が悪いと上げるのもカンタンです。)
そこそこ画像がたまっている環境ですと、いっぺんに処理できて楽です。オススメです。

他にも記事にしようかと、色々試したのですが、致命的では無くとも細々とトラブルが起きました。
特にキャッシュ系は環境を選びます。素の状態で、ほぼ問題なかったのは上記プラグインのみでした。

今回は検証のみだったので、お手軽なものを使いましたが、プラグインに頼らず、キャッシュや、DBの最適化などに取り組み、地道に改善してみたいと思います。

つづく。


WordPressでプラグインVisualizerを使ってキレイなグラフを掲載してみる。

先日、Wordpressで構築したブログにグラフを手軽に載せられないか、お客様よりご相談を受け、いろいろ方法を調べてみました。グラフを載せる方法としては、エクセルでグラフを作って、画像ファイルにして貼り付けるか、プラグインで対応するかの、いずれかになります。以下プラグインでグラフを記事中に挿入する方法を紹介します。

1.プラグインVisualizer: Charts and Graphsを導入する。
特に難しいところはありません。プラグインの新規追加よりVisualizer: Charts and Graphsを導入しましょう。
2015graph001
もちろん有効化します。
2015graph002

2.グラフを作る。
導入したプラグインは、サイドメニューの「メディア」の中に項目が作れています。ちょっと面食らいましたが、画像と同じ扱いと言うことらしいです。Visualizer Libraryを選びます。
メディアから選ぶ
Add Newを押してグラフの新規作成に入ります。いろいろ種類がありますが、例として円グラフのパイチャートを選択します。
パイチャートを選択
設定画面になります。
パイチャートデータ読み込み
ここで、データを読み込みます。データはPC上でもネット上でもいいのですが、CSVファイルで用意する必要があります。今回は例として以下のデータを用意しました。

種類,匹
犬,10346000
猫,9959000

1行目に項目と単位、2行目以下からデータをカンマ区切りで記入し、○○.csvの名前で保存します。トラブルを防ぐため保存はエンコードをUTF8のBOM無しにしておきます。From Computerボタンを押して、CSVファイルを選ぶと、読み込まれて画面上のグラフに反映されます。

2015graph007

数値は自動で%に変換されますので、計算は不要です。楽ですね。
NEXTで次に進み、グラフの体裁を整えます。タイトルをつけたり、色を変えたり、3D表示したり、見た目を調整して、「Create Chart」を押し完了です。

2015graph008

3.記事に貼り付ける。
再び、Visualizer Libraryのトップに戻ると作成したグラフが表示されています。必要に応じてグラフを作り、このページで管理することになります。作成したグラフの下に、貼り付け用のショートコードがありますので、コードを記事に貼り付けて完了です。

ショートコード

↓こんな感じになります。↓
[visualizer id=”1335″]

英語プラグインと言うことで、取っつきにくいところもあるのですが、比較的簡単な方ではないでしょうか?
1回限りの単発での掲載であるなら、エクセルで作ったグラフのキャプチャ画像を取り掲載することをおすすめしますが、定期的にグラフを掲載するようでしたら、上記プラグインでの作業をお薦めします。

ちなみに、私は猫派です。

参照
インプレス 日本の家庭でのペット飼育の現状とは?