Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2006-10-18 16:35:54

tdn
Member
Registered: 2006-02-16
Posts: 58

How do I add custom field to the comments-form and the check its value

Hi

I would like to add a custom field to the comments form like:
Answer to life the universe and everything: <input type="text" name="answer" />

And then I would like the comment only to be accepted if this field has the value 42.

How do I do this?

The reason why I want this is to avoid computer generated comments. It is often enough to ask a really simple question where you state the answer on the page. It’ll keep most untargeted spammers away.

Actually it would be enough to just do a
Write "foo" in this box: <input type="text" name="turing" />

And then check if the field is foo. The spambots does not understand human language well.

Offline

#2 2006-10-18 21:35:41

els
Moderator
From: The Netherlands
Registered: 2004-06-06
Posts: 7,458

Re: How do I add custom field to the comments-form and the check its value

I don’t know how to do that, but wouldn’t the asy_captcha plugin help you?

Offline

#3 2006-10-18 22:12:52

Sencer
Archived Developer
From: cgn, de
Registered: 2004-03-23
Posts: 1,803
Website

Re: How do I add custom field to the comments-form and the check its value

Textbook has instructions on how to write anti-spam plugins:
http://textbook.textpattern.net/wiki/index.php?title=Combat_Comment_Spam#Writing.2FPorting_an_Anti-Spam_Plugin

Though you should first get yourselft familiar with writing plugins in general (again Textbook has info and links to tutorials). asy_captcha adds an input field and does checks on it, reloading the form with an error-message etc.; it shows al the things you can do, but might be a little complex for starters.

What you want to do can be achieved relatively simpy, take a look at a documented example I wrote in December when we published the anti-spam plugin-API. I think it’s pretty similar to what you want to do. Edit the php code as necessary. The updted plugin templates and compiler are available in the subversion repository:
http://svn.textpattern.com/development/4.0-plugin-template/

We could use more people writing anti-spam plugins, so if anybody feels inspired… ;)

# asy_spamexample v0.1
# A simple Anti-Spam-plugin example to show 4.0.3 features.
# Sencer Yurdaguel
# http://www.sencer.de
# ......................................................................
# This is a plugin for Textpattern - http://textpattern.com/
# To install: textpattern > admin > plugins
# Paste the following text into the 'Install plugin' box:
# ......................................................................
YTo5OntzOjQ6Im5hbWUiO3M6MTU6ImFzeV9zcGFtZXhhbXBsZSI7czo3OiJ2ZXJzaW9uIjtz
OjM6IjAuMSI7czo2OiJhdXRob3IiO3M6MTY6IlNlbmNlciBZdXJkYWd1ZWwiO3M6MTA6ImF1
dGhvcl91cmkiO3M6MjA6Imh0dHA6Ly93d3cuc2VuY2VyLmRlIjtzOjExOiJkZXNjcmlwdGlv
biI7czo1NzoiQSBzaW1wbGUgQW50aS1TcGFtLXBsdWdpbiBleGFtcGxlIHRvIHNob3cgNC4w
LjMgZmVhdHVyZXMuIjtzOjQ6InR5cGUiO2k6MDtzOjQ6ImhlbHAiO3M6NDM0OiIKCTxwPlRo
aXMgaXMgbWFpbmx5IHRvIGdldCB5b3Ugc3RhcnRlZC4gRm9yIGZ1cnRoZXIgaW5mb3JtYXRp
b24gbWFrZSBzdXJlIHRvIGNoZWNrIHRoZSBXZWJsb2cgYW5kIHRoZSBUZXh0Ym9vayB3aWtp
IHBlcmlvZGljYWxseS4gPGEgaHJlZj0iaHR0cDovL3RleHRwYXR0ZXJuLm5ldC93aWtpL2lu
ZGV4LnBocD90aXRsZT1Db21iYXRfQ29tbWVudF9TcGFtIj5UZXh0Ym9vazogQ29tYmF0X0Nv
bW1lbnRfU3BhbTwvYT4gYW5kIDxhIGhyZWY9Imh0dHA6Ly90ZXh0cGF0dGVybi5jb20vd2Vi
bG9nIj5odHRwOi8vdGV4dHBhdHRlcm4uY29tL3dlYmxvZzwvYT4uPC9wPgoKCTxwPlRoaXMg
cGx1Z2luIHdpbGwgYWRkIGEgcXVlc3Rpb24gdG8gdGhlIGZvcm0sIGFuZCBjaGVjayB3aGV0
aGVyIHRoZSBhbnN3ZXIgaXMgY29ycmVjdCBiZWZvcmUgc2F2aW5nLjwvcD4KCgoKICI7czo0
OiJjb2RlIjtzOjI5NzA6IgovLyBUaGlzIGxldCdzIHVzIGFkZCBzdHVmZiB0byB0aGUgZm9y
bS4gQnV0IHdlIGFsd2F5cyBsZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhpcwovLyB3aGVuIGhl
IHBsYWNlcyBvdXIgdGFnIGluIGhpcyBmb3JtIGhpbXNlbGYuIFNlZSBiZWxvdyBob3cuLi4K
cmVnaXN0ZXJfY2FsbGJhY2soJ2FzeV9leGFtcGxlcXVlc3Rpb25fYXNrJywnY29tbWVudC5m
b3JtJyk7CgovLyBUaGlzIGZ1bmN0aW9uIGdldHMgY2FsbGVkIHdoZW4gVHhwIGlzIGFib3V0
IHRvIHNhdmUuCnJlZ2lzdGVyX2NhbGxiYWNrKCdhc3lfZXhhbXBsZXF1ZXN0aW9uX2NoZWNr
JywnY29tbWVudC5zYXZlJyk7CgpmdW5jdGlvbiBhc3lfZXhhbXBsZXF1ZXN0aW9uX2Fzaygk
YXR0cykKewoJc3RhdGljICRhbHJlYWR5X2NhbGxlZCA9IGZhbHNlOwoKCS8vIFRoaXMgZnVu
Y3Rpb24gaXMgZHVhbC11c2UuIENhbiBiZSB1c2VkIGFzIGNhbGxiYWNrLCBvciBhcyBhIHRh
Zy4KCS8vIEJ1dCB5b3UgY2FuIG1ha2Ugc2VwZXJhdGUgZnVuY3Rpb25zIGlmIHlvdSB3aXNo
LiBPciBpZiBhbGwgeW91IGFkZCBpcyBoaWRkZW4KCS8vIGlucHV0IG9yIGphdmFzY3JpcHQs
IG5vIHRhZ3MgYXJlIG5lY2Vzc2FyeSwgYW5kIHlvdSBjYW4gYXV0by1hZGQuCglleHRyYWN0
KGxBdHRzKGFycmF5KAoJCSdzaXplJwkJPT4gJzEwJywKCQkndGFiJwkJPT4gJycsCgkJJ2Ns
YXNzJwkJPT4gX19GVU5DVElPTl9fLAoJKSwkYXR0cykpOwoKCSRteXN0dWZmID0gJyc7CgoJ
Ly8gV2Ugb25seSByZXR1cm4gYSB2YWx1ZSB0aGUgZmlyc3QgdGltZS4gVGhlIGZvcm0gaXMg
YWx3YXlzIHBhcnNlZCwgYmVmb3JlIHRoZSBhdXRvLWFkZCwKCS8vIHNvIGlmIHRoZSB1c2Vy
IGNhbGxlZCB0aGlzIGZ1bmN0aW9uIG1hbnVhbGx5IHZpYSBhIHRhZyBoZSB3aWxsIGFsd2F5
cyBvdmVycmlkZSB0aGUgYXV0by1hZGRpdGlvbi4KCWlmICghJGFscmVhZHlfY2FsbGVkKQoJ
ewoJCSRhbHJlYWR5X2NhbGxlZCA9IHRydWU7CgkJaWYgKCBpc3NldCgkYXR0cykgJiYgaXNf
YXJyYXkoJGF0dHMpICkKCQl7CgkJCS8vIFRoaXMgaXMgYSBjYWxsIGZyb20gYSB0YWcsIHNv
IHdlIG9ubHkgb3V0cHV0IHRoZSBodG1sLXRhZwoJCQkvLyBDaGVjayBmSW5wdXQoKSBpbiB0
ZXh0cGF0dGVybi9saWIvdHhwbGliX2Zvcm1zLnBocCBvbiBsaW5lIDcwCgkJCSRteXN0dWZm
ID0gZklucHV0KCd0ZXh0JywnYXN5X215ZXhhbXBsZWlucHV0JyxwcygnYXN5X215ZXhhbXBs
ZWlucHV0JyksJGNsYXNzLCcnLCcnLCRzaXplLCR0YWIsJ2FzeV9teWV4YW1wbGVpbnB1dCcp
OwoJCX0gZWxzZSB7IC8vIFRoaXMgaXMgdGhlIGNhbGxiYWNrLWFkZGl0aW9uIHRvIHRoZSBm
b3JtLCBzbyB3ZSBhbHNvIGFkZCBhIGxhYmVsIGFuZCBzb21lIGluZm8KCQkJLy8gQmVjYXVz
ZSB3ZSBpbnNlcnQgcmlnaHQgYWZ0ZXIgdGhlIHRleHRhcmVhLCB3ZSBzdGFydCB3aXRoIGEg
PGJyPgoJCQkkbXlzdHVmZiA9ICc8YnIgLz48bGFiZWwgZm9yPSJhc3lfbXlleGFtcGxlaW5w
dXQiPldoYXQgaXMgdGhyZWUgdGltZXMgMjA/PC9sYWJlbD4nCgkJCS5mSW5wdXQoJ3RleHQn
LCdhc3lfbXlleGFtcGxlaW5wdXQnLHBzKCdhc3lfbXlleGFtcGxlaW5wdXQnKSwkY2xhc3Ms
JycsJycsJHNpemUsJHRhYiwnYXN5X215ZXhhbXBsZWlucHV0Jyk7CgkJfQoJfQoJcmV0dXJu
ICRteXN0dWZmOwp9CgpmdW5jdGlvbiBhc3lfZXhhbXBsZXF1ZXN0aW9uX2NoZWNrKCkKewoJ
Ly8gSWYgeW91IHdhbnRlZCB0byBjaGVjayB0aGUgcmVndWxhciBjb21tZW50LWZvcm0gdmFy
aWFibGVzLCB3ZSB3ZSB3b3VsZCB1c2U6CgkvLyBleHRyYWN0KGdldENvbW1lbnQoKSk7Cgkv
LyBCdXQgaW5zdGVhZCB3ZSBvbmx5IGNhcmUgYWJvdXQgb3VyIG93biBmb3JtLWVsZW1lbnQu
CgkkYW5zd2VyID0gdHJpbShwcygnYXN5X215ZXhhbXBsZWlucHV0JykpOwoKCS8vIFdlIGdl
dCB0aGUgZXZhbHVhdG9yIGluc3RhbmNlLiBZb3UgYWx3YXlzIG5lZWQgdGhpcy4KCSRldmFs
dWF0b3IgPSYgZ2V0X2NvbW1lbnRfZXZhbHVhdG9yKCk7CgoJLy8gSWYgd2Ugd2FudGVkIHRv
IGZvcmNlIGEgcmVsb2FkIHVudGlsIHNvbWUgYW5zd2VyIGlzIGdpdmVuLCB3ZSB3b3VsZCBk
byB0aGlzOgoJLy9pZiAoISRhbnN3ZXIpCSRldmFsdWF0b3IgLT4gYWRkX2VzdGltYXRlKFJF
TE9BRCwgMSwgJ1BsZWFzZSBhbnN3ZXIgdGhlIHF1ZXN0aW9uLicpCgkvLyBlbHNlCgoJLy8g
V2UgbWF5IGNvdWxkIGRlY2lkZSB0byBzZW5kIHRoZSBjb21tZW50IGluIHRoZSBtb2RlcmF0
aW9uIHF1ZXVlOgoJLy8gJGV2YWx1YXRvciAtPiBhZGRfZXN0aW1hdGUoTU9ERVJBVEUsIDAu
NiwgJ2FzeV9leGFtcGxlcXVlc3Rpb24gYW5zd2VyZWQgY29ycmVjdGx5Jyk7CgoJLy8gSG93
ZXZlciB3ZSB3YW50IHRvIG1hcmsgd3JvbmcgYW5zd2VycyBhcyBzcGFtCglpZiAoISAoKCRh
bnN3ZXIgPT0gJzYwJykgfHwgKCRhbnN3ZXIgPT0gJ3NpeHR5JykpKQoJCSRldmFsdWF0b3Ig
LT4gYWRkX2VzdGltYXRlKFNQQU0sIDAuNzUsICdhc3lfZXhhbXBsZXF1ZXN0aW9uIGFuc3dl
cmVkIGluY29ycmVjdGx5Jyk7CgllbHNlCgkJJGV2YWx1YXRvciAtPiBhZGRfZXN0aW1hdGUo
VklTSUJMRSwgMC43NSwgJ2FzeV9leGFtcGxlcXVlc3Rpb24gYW5zd2VyZWQgY29ycmVjdGx5
Jyk7CgoJLy8gVGhhdCB3YXMgaXQuIEhvcGVmdWxseSBwcmV0dHkgZWFzeS4gTW9yZSBjb21w
bGV4IGV4YW1wbGVzIGFuZCBwbHVnaW5zIHdpbGwgZm9sbG93CgkvLyBJZiB5b3Ugd2FudCB0
byBoYXZlIGR5bmFtaWMgYW5kIHNlY3JldCB2YWx1ZXMsIHlvdSBjYW4gcXVlcnkgdGhlIGRi
IGZvciB0aGUgc2VjcmV0CgkvLyBwYXJ0IG9mIHRoZSBub25jZSBhbmQgdXNlIHRoYXQgdG8g
Z2VuZXJhdGUgYW55IGR5bmFtaWMga2V5cy4gSXQgd2lsbCBiZSB0aGUgc2FtZSBmb3IKCS8v
IHByZXZpZXcgYW5kIHN1Ym1pdCAob3RoZXJ3aXNlIGl0IHdvdWxkbid0IHBhc3MgdGhlIG5v
bmNlLWNoZWNrLi4uKQp9CiI7czozOiJtZDUiO3M6MzI6ImM4ZTlmYTc5YThiNGRmMDMwNTA2
ZDk3N2YxNzMxNjMwIjt9

Offline

#4 2010-12-07 02:53:41

laptophobo
Member
Registered: 2010-03-01
Posts: 216
Website

Re: How do I add custom field to the comments-form and the check its value

I’m wondering how I can simply remove one of the fields in my Comments box. Currently the default is: Name, Email, Website, and Comments. I’d like to remove the “website” field.

Thanks much!


Living the Location-Independent Life: www.NuNomad.com

Offline

#5 2010-12-07 19:06:28

uli
Moderator
From: Cologne
Registered: 2006-08-15
Posts: 4,315

Re: How do I add custom field to the comments-form and the check its value

Should be the comment_web_input tag.


In bad weather I never leave home without wet_plugout, smd_where_used and adi_form_links

Offline

#6 2010-12-07 19:24:50

els
Moderator
From: The Netherlands
Registered: 2004-06-06
Posts: 7,458

Re: How do I add custom field to the comments-form and the check its value

@laptophobo,

Can you please start a new topic for new questions, instead of posting in old ones? The topic title isn’t even related to your problem, so your question has less chance to be noticed.

Offline

Board footer

Powered by FluxBB