【WordPress】フリマ(マッチング)サイトを作る ユーザー同士をどうやって結びつけるかを考える(メアド収集Bot対策)

公開日: 更新日: フリマ(マッチング)サイト作り
CMSのアイキャッチ画像




フリマ(マッチング)サイトを作るにあたって考えなければならないこと。
それは、どこでユーザー同士(情報提供者と情報閲覧者)を結びつけるかということです。

手法は主に2通りあると思います。そして今回は後者の方法を取りたいと考えます。

掲示板のように返信形式を取る

 掲示板形式にすれば、設置しておくだけで、サイト上でどんどんやりとりしてもらえると思われます。テキスト数も増えるので、活気が出てくればSEO的にも有利になるし、どんなやりとりがあるのかを他のユーザーも見ることができるので便利だと思います。 

 しかし、フリマサイトでない掲示板サイトなどではスパムコメントの嵐になって閉鎖してしまうところがあったりするところを見ると、自由に書き込めるという環境はあまり有効ではないと思います。これを防止する方法としては、会員制にしてしまうのが一番ですが、それではいちいちコメントするのにユーザー登録が必要となり敷居が一気に高くなってしまう。

メールで直接やりとりさせる

 情報を提供する環境だけ整えて、あとは必要とするユーザー同士に委ねるというのが一番手間がかからなくていいと思います。長く運営しているフリマサイトなどはこの方法がほとんどです。
 要するに、フリマであれば、あげたい人(売りたい人)の情報を掲載させて、あとはそれを見て「欲しい」と思った人が直接メールで連絡を取り、やりとりして完結してもらうという方法。投稿には掲載期限を設けておいて、日数経過したら非表示にするようにしていけばサイトメンテナンスも最小限で済む。

そして何よりメールアドレスのみを登録してもらえば済むため、個人情報を預からなくても運営できるので、個人情報を預かるにあたってのセキュリティが最小限で済む。

ただこの方法にも問題があって、解決しておかないと実装は不可能だと思うのでこんな方法を取ってみました。

そもそもプラグインがない

 情報提供だけさせるということであれば、掲示板系のプラグインは使わずにフロントページから直接記事を書いたり編集したりできるようにすればいい。そういったプラグインはいろいろあるのですが、そこから見た人にメールで情報提供者に発信できるようなものはありませんでした。これは仕方ないのでHTMLでmailto:のタグ使って表記するしかないですね。

もともと情報提供するユーザーは情報の正しさとスパム対策を行うためユーザー登録必須にしてメールアドレスを必須にする予定ですから、そこから情報を引っ張り出せばいい。

それを踏まえて、投稿したユーザーのメールアドレス宛にメールを送るため、メーラーを起動してあて先を投稿ユーザーのアドレスにするには、

<a href=”mailto:“>投稿者にメールで問い合わせる</a>
【注意】コードをコピーして使用する前に必ずお読みください

この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

使用については自己責任でお願いします

コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

その場合には以下の方法で修正を行ってみてください

  1. コードの中に全角の記号が入っていませんか?
  2. 半角にすることで解消できます
  3. コードの中に全角の空白(スペース)がありませんか?
  4. 半角にすることで解決できます
  5. 上のようなことがないのに更新できない
  6. 特に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。

コードを転載する場合には

ご自身のサイトで当ページのコードを転載される場合には必ず当ページへのリンクを入れていただきますようお願いいたします

と文末に記述すればメールをさせる仕組みはできます。
中に投稿者のメールアドレスを引き出すPHPを使っているので、EXEC-PHPなどのプラグインが必要になりますが、新規導入するだけなので問題ないでしょう。

メール収集Bot対策

 上記のコードでメールを送るという動作は実装することができました。問題は悪意を持った人が行うメールアドレスの収集を行うことに対する策を講じる必要があります。このサイトを通じてメールアドレスが収集され、スパムメールに悩まされることがないようにはしたおきたいと思います。

このメールアドレス収集BOTの仕組みは、
mailto:タグの後の文字列を収集する
というもので、タグの中にmailto:タグを表示しないようにしたり、アドレス(@前後の文字列)を収集されなければセキュリティとしては最低限のことを実装できるので、「WP Mailto Links」というプラグインを使って対策するといいと思います。

英語のプラグインで日本語ファイルもありませんでしたのでそのまま使うことになりますが、余分な設定をしなくても有効化するだけで上記の対策をしてくれるので便利です。

実際に投稿を表示して、ソースを見てみましたが、確かにmailto:の部分はJavaスクリプトで別処理されているし、メールアドレスも暗号化されていました。通常はメールアドレスへのリンクをフォーカスしするとリンク先が画面の隅に表示されるのですが、それもつぶされて表示しなくなっていました。導入するだけでこの効果、さすがはwordpressプラグインです。

他にもメールアドレス収集Bot対策用プラグインはいろいろありましたし、言語ファイルの存在するものもありましたが、対策できれば特に後から設定を触ることもないので「WP Mailto Links」で事足りると思います。


掲示板やその他コミュニケーションツールをサイトに実装することがあると思いますが、こうしたBot対策ぐらいはしておきたいですね。

いつでもご相談・サイトカスタマイズの依頼を受け付けています

Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

※一度もココナラを使ったことがない方はココナラへの無料登録が必要です。こちらから登録後、上のリンクをクリックする、またはココナラトップページから「ひまあーと」を検索してお問い合わせください。


【スポンサーリンク】