はじめに
オープンソースのメールマガジン・メーリングリスト管理ソフト「PHPList」についてです。
PHPListを使ったメルマガ登録は、登録アドレス送信→確認メール→メール記載のURLをクリック→承認(登録完了)という流れが基本的な仕様となっています。しかし、場合によっては、登録アドレス送信→承認(登録完了)というふうにしたいこともあるかもしれません。(これだと本人確認ができないですが、、)
今回は、そんな場合の方法、いじる場所を忘れないように書いておこうと思います。
Contents
手順
まず、いじっていくファイルですが、
「\public_html\lists\admin」内の「subscribelib2」というファイルです。
このファイルの155行目付近の次のような個所を探してください。
# they do not exist, so add them $query = sprintf('insert into %s (email,entered,uniqid,confirmed, htmlemail,subscribepage,rssfrequency) values("%s",now(),"%s",0,%d,%d,"%s")',
この部分は、「they do not exist, so add them」と書かれているように、送られてきたデータがデータベースに存在しない場合に、それらを追加するという処理のはじめの部分です。メルマガ登録処理のはじめの部分ですかね。
そして、実際の変更は、
values("%s",now(),"%s",0,%d,%d,"%s")',
を
values("%s",now(),"%s",1,%d,%d,"%s")',
に。つまり、「0」を「1」にしてくだい。そうすれば、自動で承認済みになります。
仕組み
では、なぜそうなるか。この「0」は、データベースに挿入される値なのですが、
$query = sprintf('insert into %s (email,entered,uniqid,confirmed,
この最後の「confirmed」に対応しています。つまり、初期設定では、データベースのユーザ情報が入っているテーブルの「confirmed」には、否応なく「0」が入ります。「0」は未承認。データはあるけど登録は完了しておらず、メールは配信されない、という仮登録状態です。これが、確認メールのURLクリックで「1」になり、承認されるということでしょう。
そこで、これをはじめから「1」にしてあげることで、情報が送信されてきた時点で承認済みになるわけですね。
PHPListに関しては、意外と情報が少なく、英語のフォーラムを読み漁っているという苦しい状態ですが、なんとか読み解けていけたらと思います。
参考サイト
- PHPList Forumのこの記事
コメントを残す
コメントを投稿するにはログインしてください。