WordPressのログイン時に自動的にメールを飛ばす方法です。
これで自分以外の怪しいログインを検知するような使い方ができます。
◆ 安全にfunctions.phpをカスタマイズする方法
functions.phpの修正に不安がある人は以下を参考にしてください。
functions.phpを直接修正するのは不具合時の対処やテーマ更新時に大変ですよね。それでも手間を減らす方法もあり、ここで紹介する方法と以下の記事の内容でそこそこ安全に改造できます。 拡張用のfunctions.phpを新規作成する 最初にカスタマイズ用のコードを記述するためのphpファイルを作成します。配置するディレクトリとファイル名は好みで大丈夫です。とりあえず、ここではfunctions.phpと同じディレクトリにextend-functions.phpとして作成し...
コードを追加する
functions.phpとかに以下のコードを追加します。
// ログイン時に自動的にメール送信
add_filter('wp_login', function ($username, $user) {
wp_mail(
get_option('admin_email'),
'[' . get_option('blogname') . '] Login Notification',
$username . ' logged into the <' . home_url() . '>.'
);
}, 1, 2);
仕組み
wp_mail()でメールが飛ばせます。
引数に指定したget_option('admin_email')は管理者のメールアドレスを取得します。
ちなみに2つ目がメールの件名で3つ目が内容です。ブログ名とユーザー名を指定してます。
なお、そもそもメール機能を無効化してる場合はwp_mail()が機能しません(たぶん)。
WordPress更新時やコメント投稿時にメールが飛んでる人なら動くと思います。
あとがき
この方法だと、スパム扱いされる可能性があるらしいが全然そんなことない。
まぁ、結局はスパム扱いするのは受信側の問題なので、Gmailみたいな最強クライアント使えばOK。
この記事は参考になりましたか?
コメント