Добавление reCAPTCHA в Plone
2019-05-09
Частичный перевод и компиляция информации из статей:
PloneFormGen имеет встроенную поддержку Re-Captcha. Здесь рассказано как включить её.
PloneFormGen и поля Captcha
- PloneFormGen — аддон, добавляющий в Plone генератор форм с полями, виджетами и валидаторами из Archetypes. Используется при создании простых однородных вебформ для сохранения вводимых данных или форм для отправки электронной почты.
- Archetypes — это подсистема (фреймворк) для создания типов контента в Plone версий 2.x, 3.x и 4.x. Dexterity заменяет её с версии 4.1+ и становится подсистемой по умолчанию в Plone 5. Archetypes остаётся доступной в пятой версии Plone.
- Dexterity — стандратная контент-подсистема для Plone 5 и последующих версий.
- Validator — описывает тип поля из Archetypes. Возвращает “True”, если проверка пройдена, или возвращает строку с описанием ошибки, если проверка провалена.
Когда PFG установлен в Plone через “добавление/удаление продуктов” (видимо через https://example.com/prefs_install_products_form), он будет искать наличие аддона collective.captcha или collective.recaptcha. Если они найдены, то в список доступных полей будет добавлено поле “CAPTCHA”.
Если вы используете collective.recaptcha, то вам будет необходимо добавить свою ключевую пару, полученную в вами созданном бесплатном аккаунте сервиса reCAPTCHA. Добавление ключевой пары происходит в PFG-конфиглете в настройках сайта Plone.
Если вы добавили аддон captcha после установки PFG, то необходимо переустановить PFG (через “добавление/удаление продуктов”) для включения поддержки captcha.
Установка collective.recaptcha
Добавьте нижеследующий код в ваш buildout.cfg для установки двух аддонов collective.recaptcha и Products.PloneformGen:
[buildout]
...
eggs =
Plone
...
collective.recaptcha
Products.PloneFormGen
...
- Стандартно выполните
bin/buildout
и перезапустите ваш экземпляр Plone. - Откройте PortalQuickinstaller или контрольную панель Plone и установите (или переустановите при необходимости) PloneFormGen.
- Откройте PFG-конфиглет в настройках сайта Plone и заполните необходимые поля для ввода полученных из reCAPTCHA публичного и приватного ключа.
Осталось понять как прикрутить проверку CAPTCHA к формам входа на сайт и страницы обратной связи…