CAPTCHA をノードの詳細画面のコメントフォームでも動作させる方法


こんにちは。最近ブログをサボり気味で同僚からのプレッシャーを感じる大野です。
今回は小ネタですが、CAPTCHA モジュールがノード詳細ページのコメントフォームでは作動しないことを解決する方法について解説します。
CAPTCHA モジュールは、CAPTCHA を効かせたいフォームをフォームIDで指定することができるようになっていて、これを CAPTCHA ポイントと言います。CAPTCHA ポイントの管理画面ではコメントフォーム用の comment-form
のIDが予め用意されているのですが、これは単独のコメントフォームにしか適用されません。
ノードの詳細ページで表示されるフォームIDが書かれているソースコードを見ると comment-form
となっているので、一見動作しそうに見えるのですが、実は内部的な処理の都合で加工されていて、本当のIDは comment-node-form
となります。
ノードの詳細画面に設置するコメントフォームに CAPTCHA を効かせたい場合は、CAPTCHA ポイントの設定で comment-node-form
のIDを追加しましょう。