なぞなぞ認証プラグイン

このプラグインについて

スパム対策に、なぞなぞの回答を入力させることができます。

なぞなぞ認証プラグイン

  • ログイン済みのユーザーは認証が不要です。

広告

ダウンロード

以下のリンクからプラグインをダウンロードできます。(GitHubに遷移します。)

GitHubの緑ボタン「Code」内にある「Download ZIP」からすべてのプラグインをダウンロードできるので、解凍後に作成されるフォルダの中から riddle フォルダを入手してください。

導入方法

ファイルのアップロード

riddle/ 内の libs/templates/ を、freo設置ディレクトリ内にアスキーモードで上書きアップロードします。

データベースの設定

ブラウザソフトで freo/index.php/riddle/setup にアクセスします。セットアップ画面が表示されるのでセットアップを実行します。

テンプレートの編集

templates/internals/page/default.htmltemplates/internals/regist/default.htmltemplates/internals/view/default.html にある、フォームタグの methodpost が指定されているすべてのデータ登録フォームに、以下の記述を追加します。表示項目やHTMLは、必要に応じて適当に変更してください。

<!--{if !$freo.user.id and !$smarty.session.plugin.riddle.approved}-->
<dt>{$plugin_riddle.question}(スパム対策)</dt>
  <dd><input type="text" name="plugin[riddle][answer]" size="30" value="" /><input type="hidden" name="plugin[riddle][id]" value="{$plugin_riddle.id}" /></dd>
<!--{/if}-->

設定

管理メニューから「プラグイン」→「なぞなぞ認証」を選択すると、なぞなぞの登録ができます。なぞなぞは最低でも1件登録しておく必要があります。

また、なぞなぞを複数登録すると、認証の際はランダムで1件が表示されます。

機能解説

目次

なぞなぞ認証を行うページを追加する

初期状態ではコメントの登録時とユーザー登録時のみなぞなぞ認証が必須になりますが、プラグインを追加した際も認証を必須にすることができます。freoにアクセスすると

  • http://www.example.com/freo/index.php/feed
  • http://www.example.com/freo/index.php/admin
  • http://www.example.com/freo/index.php/view/5

のようなURLになりますが、feedadminview のような値をもとに対象を指定します。(freo本体の設定によっては index.php/ は省略されます。)

対象の指定は、libs/freo/plugins/config.riddle.php の17行目あたりにある

//beginファイルの読み込み設定
define('FREO_PLUGIN_RIDDLE_LOAD_BEGIN', 'page,regist,view');

この部分で行ないます。例えばメッセージ登録プラグインで認証を行ないたい場合、設定を以下のように修正します。

//beginファイルの読み込み設定
define('FREO_PLUGIN_RIDDLE_LOAD_BEGIN', 'page,regist,view,message');

,message を追加しただけですが、これでメッセージ登録ページ http://www.example.com/freo/index.php/message も回答が入力されていないと投稿できなくなります。

あとは、導入方法を参考に、メッセージ登録ページにもなぞなぞ表示欄と回答入力欄を追加してください。(メッセージ登録プラグインの場合は templates/plugins/message/default.html 。)

携帯からのアクセス

携帯からアクセスすると、携帯用の表示になります。

携帯から投稿する際は回答のチェックは行わないので、携帯用のテンプレートを編集する必要はありません。

削除方法

このプラグインは、以下の手順で削除できます。

ファイルの編集

テンプレートに追加したコードを削除します。

データベースの削除

データベースから freo_plugin_riddles を削除します。(削除しなくてもfreoの動作には問題ありません。)

ファイルの削除

以下のファイルを削除します。

  • libs/freo/plugins/begin.riddle.php
  • libs/freo/plugins/config.riddle.php
  • libs/freo/plugins/display.riddle.php
  • libs/freo/plugins/page.riddle.php
  • templates/mobiles/plugins/riddle/ (ディレクトリごと削除)
  • templates/plugins/riddle/ (ディレクトリごと削除)

更新履歴

  • 最新版との差分ファイルを一覧表示できます。
  • 使用しているなぞなぞ認証プラグインのバージョンを入力してください。
  • 更新内容の詳細は、以下の更新履歴を確認してください。
差分調査
使用しているバージョン

2013/04/14 Ver 1.0.2
  • 指定されたデータが見つからない時、404エラーを返すように変更。

バージョンアップは、以下のファイルを最新版付属のものに差し替えてください。

2012/08/10 Ver 1.0.1
  • freo/index.php/riddle にアクセスすると、テンプレート読み込みエラーが表示される不具合を修正。

バージョンアップは、以下のファイルを最新版付属のものに差し替えてください。

2010/09/01 Ver 1.0.0

正式版を公開しました。最終ベータ版から大きな変更はありませんが、プログラム内部のバージョン情報と更新日はすべて変更しています。ですので今後混乱の無いように、拡張子が php のファイルはすべて正式版付属のものに変更することをお勧めします。