Hero img
Contact Form7からline通知

WordpressのContact Form7の問い合わせをlineで知らせる。

Contact Formで問い合わせがあった場合lineでもお知らせをする


目次

  • 目標
  • Contact Form7
  • Line Notify
  • Line notifyの登録
  • wordpress
  • function.phpを修正する。
  • 後で
  • まとめ

目標

wordpressで問い合わせがあった場合lineに通知させる。

Contact Form7

個人的にwordpressの問い合わせフォームと言ったらContact Form7だと思っています。 Contact Form7を使うことで、問い合わせがあった場合指定のメールアドレス宛にメールを送る事ができます。 しかし、メールがあってもリアルタイムで通知されなかったり、複数人でメールを管理する場合互いがコンタクトを取り合って対応しないといけない問題が生じます。 そこで問い合わせがあった場合、みんなが使用しているlineで問い合わせがあった事を知らせます。

Line Notify

lineで通知を受ける際使う物がLine Notifyです。
これを使うと、何かあった場合、登録したグループやトークルームに通知をすることができます。

Contact-Form-7-notify-line-line-notify

Line notifyの登録

  1. 1.lineログインをする。

Line Notifyからlineでログインをします。

Contact-Form-7-notify-line-line-login
  1. 2.マイページを表示
Contact-Form-7-notify-line-show-mypage
  1. 3.グループを選んでトークンを発行

ここで設定したトークルーム、グループに通知されます。

Contact-Form-7-notify-line-create-token Contact-Form-7-notify-line-create-token2
  1. 4.トークを保存する

トークの画面が表示されるのでこれをコピーして保存してください。
注意書きにもありますが、この画面は一度しか表示されません。

Contact-Form-7-notify-line-token

トークン

トークンは他の人に教えないでください。

  1. 5.登録したトークルームが表示されます。
Contact-Form-7-notify-line-show-room

wordpress

wordpressでテーマのfunction.phpを修正します。
必ず、修正前にバックアップを取ってください。 ここをおろそかにすると最悪、全て真っ白い画面になるので、function.phpを修正する前にバックアップを取ってください。

function.phpを修正する。

ツールからテーマファイルエディターを開いてfunction.phpを修正します。

Contact-Form-7-notify-line-edit-temer

右のfunction.phpを選択して、修正をしていきます。

Contact-Form-7-notify-line-functionphp

function.phpの下に、下のコードをコピペするだけで大丈夫なはずです。

function.php

add_action('wpcf7_before_send_mail', 'send_line_notify');

function send_line_notify($contact_form) {
    $line_token = 'bIEi9GJhqwplfl622otJg8wykm61nl2HuAQNKKsMCS6';//<--ここのトークンを変更する。

    // LINE Notifyに送信するメッセージ
    $line_message = "メールが来ました";

    // wp_remote_postを使用してLINE NotifyにPOSTリクエストを送信
    $response = wp_remote_post('https://notify-api.line.me/api/notify', array(
        'method'    => 'POST',
        'body'      => http_build_query(array('message' => $line_message)),
        'headers'   => array(
            'Authorization' => 'Bearer ' . $line_token,
            'Content-Type' => 'application/x-www-form-urlencoded'
        )
    ));

    // エラーハンドリング
    if (is_wp_error($response)) {
        error_log('LINE Notify Error: ' . $response->get_error_message());
    } else {
        $response_code = wp_remote_retrieve_response_code($response);
        if ($response_code == 200) {
            error_log('LINE Notify Success: Message sent successfully.');
        } else {
            error_log('LINE Notify Error: Unexpected response code: ' . $response_code);
        }
    }
}

Contact-Form-7-notify-line-result

こんな感じでlineで通知が来ます。

後で

後で気づいたのだが、この仕組みのプラグインがあったので、これを使う方が事故が起きないため、良いかもしれない... プラグイン

まとめ

Line notifyを使えば通知があるので、漏れが無く、早く気付けるのでおすすめです。 wordpressのプラグインもあるのでそちらを使った方が便利で良いかもしれない。
2024年6月現在、無料で使えるので、コストもない。IFTTTも連携できるようなので気が向いたら連携してみる。

関連記事

コメント

コメントを書く

質問や、間違いがありましたら、お気軽にどうぞ

※お名前とコメントの内容を入力してください。
※全てこのブログ上に公表されます。
※許可なく管理者によって修正・削除する場合がございます。 詳しくはプライバシーポリシーを参照ください