如何从垃圾邮件机器人保护表格


Answers:


15

我遇到了同样的问题,我通过从magento-hackaton安装此扩展程序解决了它:https : //github.com/magento-hackathon/HoneySpam

此Magento扩展程序将一个用JavaScript隐藏的字段添加到“客户注册”和“产品评论”表单中,该表单看起来像Wordpress评论表单的URL字段。如果填写此字段并发送表单,则会出现错误消息,并且不会保存任何内容。

还检查这种形式是否传输太快,人类通常花费几秒钟或更长时间。

您可以在Magento Admin后端中启用和禁用这些功能,或设置发送此表格所需的时间。

新增:对所有输入字段进行正则表达式检查,以确定垃圾邮件级别的宽松索引。这根本不是最准确的方法,但是它可以防止低端垃圾邮件(“宽带垃圾邮件”)。您还可以在后端启用/禁用此功能,并设置最大垃圾邮件索引信任级别。

这是我将其添加到表单中的方式:

在表单.phtml文件中,我添加了以下行:

<?php echo $this->getBlockHtml('contacts.form.fields.before') ?>

这将添加在app / design / frontend / base / default / layout / honeyspam.xml中声明的额外字段:

<default>
    <update handle="honeypot"/>
    <reference name="footer_newsletter">
        <block type="core/text_list" name="contacts.form.fields.before" as="form_fields_before" translate="label">
            <block type="hackathon_honeyspam/honeypot" name="honeyspam.honeypot"
                   template="hackathon/honeyspam/honeypot.phtml"/>
        </block>
    </reference>
</default>

<contacts_index_index>
    <update handle="honeypot"/>
    <reference name="contactForm">
        <block type="core/text_list" name="contacts.form.fields.before" as="form_fields_before" translate="label">
            <block type="hackathon_honeyspam/honeypot" name="honeyspam.honeypot"
                   template="hackathon/honeyspam/honeypot.phtml"/>
        </block>
    </reference>
</contacts_index_index>

这是一个自定义表单,我可以说本身扩展仅用于magentomade形式良好
帕特里克·克努森

不是,这不是自定义表单,它会向所需的表单添加一个额外的字段,因此您可以将此扩展名用于所需的任何表单。您只需要在其中包含js文件即可。
lloiacono

4
我批准此扩展。我用它,它创造了奇迹。它不会为您提供100%的免费垃圾邮件,但是它以最少的努力就做得很好。
马里乌斯

我的表格在我的产品页面上,如何在其中包含js文件?其view.phtml文件。
Patrick Knudsen

获得@Marius批准。现在您必须安装扩展程序。
Qaisar Satti

0

为时事通讯添加的代码不正确。我有一半正确的代码,问题仍然在于,使用document.observe代码一次只能隐藏一种形式。我们有2个新闻信箱和标准的审阅/联系表,但无效。

不过,这是默认的magento安装页脚时事通讯的正确部分。

    <default>
    <update handle="honeypot"/>
    <reference name="footer.newsletter">
        <block type="core/text_list" name="newsletter.form.fields.before" as="form_fields_before" translate="label">
            <block type="hackathon_honeyspam/honeypot" name="honeyspam.honeypot"
                   template="hackathon/honeyspam/honeypot.phtml"/>
        </block>
    </reference>
</default>

有人完整的解决方案吗?


我只是让她感到困惑,是否应该在app / design / frontend / default / mytheme / layout中的newsletter.xml中添加以上代码?我如何看到已正确安装?
hln
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.