Secure and accessible PHP contact form for WORDPRESS

October 25, 2006 | Published in: Wordpress & plugins | Tags: , , , , 0

This post has now been replaced by an updated version which you can find here.


Wordpress Contact formsCreated by Mike Cherim and I, this is a wordpress plugin that lets you have your own accessible, usable, spam-proof, secure, contact form on your wordpress blog!

I haven’t seen many contact form plugins for wordpress, but this is certainly one of the best, I can say that now. We hope you enjoy using this plugin, and that it saves you from lots of horrid spam.

Read more for more information, installation instructions, and of course, the download link!

Secure and accessible PHP contact form v.2.0WP

By Mike Cherim ( http://green-beast.com/ ) and Mike Jolley ( http://www.blue-anvil.com )

Index

What is it?

Well, this could well be the best, most accessible, spam proof contact form available, and its now a wordpress plugin!


Based on the PHP contact forms by Mike Cherim, Mike and I have developed a fully configurable, spam-proof, wordpress contact form plugin.

By adding a simple tag to a wordpress page you can have a fully featured contact form, great if you don’t want your email address harvested by spam bots!

This plugin lets you add a contact form to a wordpress page or a template, and after configuration, works a treat. It is fully customisable with CSS, and even has a few themes contained to get you started.

Documentation & the readme file is included in the zip, and the help file will show in your wordpress control panel too.

Mike Cherim also has a page dedicated to this plugin, find it here.

To see this plugin in action, take a look at my contact page.

Also remember, we have a multi-user version available (for use, for example, if you have multiple departments each wanting seperate messages) for a small fee, contact us for more information.

Features

The PHP form itself, its accessibility and usability features can be found on its official page here, but here are some plugin specific features and some highlights.

  • Easy to use form Overview page, with config information, and spam count.
  • Great security measures implemented, to prevent spam and high-jacking.
  • Form designed with accessibility and usability in mind.
  • Standards compliant code and form, with XHTML and HTML strict support.
  • Simple setup, with helpful prompts and extensive documentation.
  • Configuration built into the wordpress interface, no need to edit any code manually.
  • Easy to style, either using your own CSS files, are in-built editor, or a pre-made theme for the most popular wordpress themes.

Files In the zip

The following files are provided with the download:

  • /wp-gbcf_readme.txt — Instructions and installation information
  • /wp-gbcf/index.php — Prevents snoops looking at the files…
  • /wp-gbcf/wp-gbcf_focus.js — Javascript Form field focus for Internet Explorer
  • /wp-gbcf/wp-gbcf_form.php — Main plugin file
  • /wp-gbcf/wp-gbcf_help.php — Documentation library
  • /wp-gbcf/wp-gbcf_themes/ — Themes are inside this folder, you can add your own here if you want.
  • /wp-gbcf/wp-gbcf_themes/wp-gbcf_images/ — Theme file’s images

Plugin History

  • 7th April 2007v.2.0WP B20070407 – From Mike C : I made several small modifications in the wp-gbcf_form.php to even further enhance security. I also modified the mail header to extract the character set from the blog settings instead of hard-coding it. It was hard-coded utf-8, and on most blogs will remain as such, but now that can be modified if the webmaster has selected another charset for their blog. The documentation file, wp-gbcf_help.php, was also updated.
  • 29th March 2007 – v.2.0WP B20070329 – In the wp-gbcf_form.php file the blockquote’s cite attribute in the success result was changed, the “Referrer Mismatch” error was modified, the random exploit distribution codes were changed, and mail function detection was added to help users determine if they can use the form.
  • 3rd March 2007 – v.2.0WP B20070303 – The ordering of the negotiations was modified in the wp-gbcf_form.php file for even greater email security. A line in the wp-gbcf_help.php file was also changed. Say thanks to Mike C Again :)
  • 13th Feb 2007 – v.2.0WP B20070213 – A modification was made to the wp-gbcf_form.php file to update the header injection exploit error message. The on-board documentation file, wp-gbcf_help.php, was also edited (it needed it) — hopefully it’s 100% typo-free (though that’s doubtful). All index.php files were modified. Recommendation: Swap out the wp-gbcf_form.php, wp-gbcf_help.php, and all folder index.php files. Say thanks to Mike C :)
  • 4th Feb 2007 – v.2.0WP B20070204 – Mulitple modifications and improvements made to the wp-gbcf_form.php file to plug a potential header inject exploit hole, enhance database and form performance, and allow content to be added to top of form (with instructions to add content at bottom in FAQ). Configuration was re-ordered (moved CC option control to section 5). Updated the Overview page. The on-board documentation file, wp-gbcf_help.php, was also updated and now includes instructions on make a contact page template. Multiple style sheets were added for non-specific themes. Affects first 3481 downloads. Recommendation: Swap out the wp-gbcf_form.php and wp-gbcf_help.php files.
  • 20th Jan 2007 – v.2.0WP 20070121 -
    1. Minor tweaks made to the wp-gbcf_form.php to negotiate IP
      addresses differently, changed character set to UTF-8 to allow more
      characters in emails, fixed a typo, and changed the “from” to the sender to
      allow use with host that require SMTP authentication. Recommendation: Swap out the wp-gbcf_form.php file.
  • 5st Nov 2006 – V2.0WP B20061105 -
    1. Minor tweaks made to the wp-gbcf_form.php file to make it look nicer in the source and play nicer with other WP plugins because not all terminate with a newline as they should.
    2. Also made one tweak to mitigate the possibility of an “open relay attack” being carried out.
    3. Recommendation: Swap out the wp-gbcf_form.php file.
  • 1st Nov 2006 – V2.0WP B20061101 -
    1. Fixed the referrer issue once and for all.
    2. Fixed browser “auto-fill” issue.
    3. Added ” Offer carbon copy option” as a Config option (yes is default).
    4. Updated and corrected Documentation page (Config and FAQs).
    5. Added note next to CC tabindex field.
    6. Updated Overview page to show new Gen Config options.
    7. Make a new CC email to strip some of the data-collected and address the
      form submitter more personally.
    8. Added second mail() function to handle CC mail.
    9. Updated build number.
    10. Fixed $_post issue to avoid form submitting itself occasionally.
    11. Minor optimisations.
  • 26th October 2006 – V2.0WP B20061026 – Fixed small bug with concerning referring url and form location.
  • 25th October 2006 – V2.0WP – Plugin Released, no known errors or bugs.

So, what are you waiting for? Download it now!

| Index |

Get it now!

Download Contact form - version 2.0wp - April 07

Downloaded a total of 17543 times

| Index |


Installation Instructions

Installation is fast and easy. The following steps will guide get you started:

  1. Unpack the *.zip file and extract the /wp-gbcf/ folder and this file.
  2. Using an FTP program, upload the /wp-gbcf/ folder to your WordPress plugins
    directory (Example: /wp-content/plugins).
  3. In the sub-directory, /wp-gbcf_themes/, using FTP or your server admin panel,
    change the permission of the CSS theme files to 666, but you’ll only do this
    if you’ll want to edit them.
  4. Open your WordPress Admin panel and go to the Plugins page (link on the
    top menu). Locate the “Secure and Accessible PHP Contact Form” plugin and
    click on the “Activate” link.
  5. Once activated, go to the “Contact Form” page (link on the top menu) and
    select the “Configuration” link on the sub-menu. If you need help, go to
    the select the “Documentation” link on the sub-menu. You won’t be able to
    enter the URL yet, though.
  6. Once configured as much as you can, go to the “Write” page (link on the
    top menu) and click the “Write Page” link on the sub-menu. If using a
    default page template give it a name like “Contact Us” for example.
  7. Now go back to the “Configuration” page and add the URL of your newly-created
    form page. “Save” your changes.
  8. Now go to “Manage” (link on the top menu) and click on “Edit Pages”
    (link on the sub-menu). Then locate your contact page an click on the “Edit”
    link to the right of it.
  9. In the textarea, add this: <!--gb_contact_form--> and “Save” the page.
  10. That’s it, you’re done. The form will be on the new page you created and
    should be ready for use and a link to the page will be on your web log’s
    Pages’ navigation menu.
  11. Test your new form. Select the “Documentation” link on the sub-menu if you
    encounter problems.
  12. To style your form, select the “Styling” link on the sub-menu. There you
    may select one of the ready-made themes (designed for specific popular
    WordPress themes), use no theme, or create your own.

| Index |

Plugin Supported Themes

If you use some of the more popular href=”http://wordpress.org/extend/themes/”>WordPress Themes, contact
form themes have been provided to get you up-and-running faster than ever.

The following WordPress themes have been provided for (use these links to
get info or download them):

Default by Michael Heilemann
The default WordPress theme based on the famous Kubrick. Included with WordPress.
Classic by Dave Shea
The original WordPress theme that graced versions 1.2.x and prior. Also included
Beast-Blog by Mike Cherim
Beast-Blog Info |
Beast-Blog Demo | href=”http://green-beast.com/logger_dl.php”>Download Beast-Blog.
Almost Spring by Becca Wei
Almost Spring
Info
| href=”http://themes.beccary.com/index.php?wptheme=Almost+Spring”>Almost
Spring Demo | href=”http://beccary.weblogs.us/almost-spring.zip”>Download Almost
Spring.
Blix by Sebastian
Schmieg
Blix
Info
| Blix Demo | href=”http://www.kingcosmonaut.de/blix/download/Blix-0.9.1.zip”>Download
Blix.
Connections by Patricia
Muller
Connections Info |
Connections Demo | href=”http://www.vanillamist.com/blog/files/connections.zip”>Download
Connections.
Green Marinee by Ian Main
Green Marinee Info | href=”http://e-lusion.com/greenmarinee/”>Green Marinee Demo | href=”http://e-lusion.com/greenmarinee/greenmarinee-1.0.1.zip”>Download
Green Marinee.
Ocadia by Becca Wei
Ocadia Info |
Ocadia Demo | href=”http://beccary.weblogs.us/ocadia.zip”>Download Ocadia.
Pool by Borja
Fernandez
Pool Info |
Pool Demo | href=”http://www.lamateporunyogur.net/misc/pool-v107.zip”>Download
Pool.
SeaBeast by Mike Cherim
SeaBeast Info | href=”http://green-beast.com/seabeast/”>SeaBeast Demo | href=”http://green-beast.com/seabeast/download/”>Download SeaBeast. />
Note: This theme has an included contact form but it
can be disabled in its href=”http://green-beast.com/seabeast/?page_id=44″>configuration and
deleted and this one used instead for great security and flexibility. Also
note this theme’s special href=”http://green-beast.com/seabeast/?page_id=16″>terms and conditions
for use.

| Index |

Licence

Secure and Accessible PHP Contact Form v.2.0WP © Copyright 2006-current. All rights reserved.
Mike Cherim and Mike Jolley

You are free to use this application but may not redistribute it without written permission.
Use of this application will be at your own risk. No guarantees or warranties are made directly or implied.
The creators cannot and will not be liable or held accountable for damages, direct or consequential.

| Index |

Support our sweat, blood and tears

I know, that sounds gross, but we really did put ALOT of effort in to this plugin to make it the best. If you like this plugin, or it has benefited you, please make a donation via paypal! Any amounts are welcome, we will split it between us (Cherim & Jolley). Your support is much appreciated.

Send a donation

*This link will take you to green-beast.com where you can use Mike’s paypal button to send a donation

| Index |

Found this post useful? Why not buy me a coffee!

Related Entries

Sorry, the comment form is closed at this time.

The comments are closed.

About this site

Blue Anvil is the online web design journal & portfolio of , a web designer from Norfolk, England. Read More »
ThemeSlice
  • Featured work - More

    • Beefjack
    • Integrity
    • theotaku.com
  • Latest Tweet - More

    • New blog post: MiniCard 1.1.7 Update http://blue-anvil.com/archives/minicard-1-1-7-update/
  • Out of the blue - More

    • MiniCard 1.1.7 Update

      I have just uploaded 1.1.7 of MiniCard here and to the WordPress theme directory. This updates includes:

      • New networks; xing, gowalla, yelp, foursquare, mobileme, google buzz
      • A way to change link text and define multiple links of the same network
      • A way to define your own custom links + icons
      • Improved admin panel

      Hope you like it, and don’t forget you can show your support by purchasing the premium pack from here.

    • Switched: From Shared to VPS

      It’s been about two weeks now since I made the transition from a shared reseller hosting account to a VPS (Virtual Private Server) account – impressions so far, excellent performance but fiddly to configure.

      The reason I wanted to change from shared hosting was the fact the server was always being hacked (even though ALL my scripts were secure), there was frequent downtime, support blamed me for problems every time, and it was slow as hell.

      Those used to a shared hosting environment would probably not know where to start when faced with configuring a VPS. Luckily, a lot of it was pre-configured when I received my account – certainly some of the major security holes were patched. I was not satisfied with those however. As a victim of hacking in the past (previous host swears it was not there fault, something I don’t believe) I took extra care to secure it as a much I could – configuring brute force detection, the firewall, installing mod security (excellent rules for that here: http://www.atomicorp.com/wiki/index.php/Atomic_ModSecurity_Rules) and going though multiple guides (like this one: http://www.webhostingtalk.com/showthread.php?t=468168) with a fine-tooth comb.

      The result? My pages are loading at least 6 times faster, I have had no down time (or at least have not noticed any), and I feel in control and happy. No longer am I at the mercy of shared hosts :)

      If your interested, I chose ServInt as my provider as they offered a great deal, as well as being a managed service (so I’m not on my own if I screw things up). I was tempted by the bells and whistles of Media Temple, but felt the ServInt service was better value.

    • Download Monitor 3.2.2 Maintenance Release

      Download Monitor has received some more love and has been updated. Here’s the change log from the new version:

      • Small bugfix in uploader.php – cat ID
      • Changed stats graph calculation – thanks lggemini
      • Changes to headers in download.php to avoid caching
      • File Browser fixes – $root was clashing with something….
      • exclude_cat works in all sections of download_page now
      • Removed hardcoding of /uploads/
      • Added action to download.php – should be able to use it to stop a download if you want – maybe limiting downloads per day or something? Whatever you want…
      • Made it so if you post new file on ‘edit’ screen, the post date is updated.
      • Fixed the ‘blank meta’ section which blanks out custom field values when nothing is set.
      • Moved ‘allow_url_fopen’ check.
      • Someone said downloads don’t work with spaces in the name. They do! Wasting my time sonny…
      • All work and no play make jolley a dull boy
      • Had to rename capabilities so they work. Apologies if you have to set this up again! Cheers to Mark Dingemanse.
      • {category_ID} custom format tag added. Useful if you want to send someone to its category on the DL page I guess. Also added {category_other} so when no category is set “other” is shown – this is because the download page can show an ‘other’ section if you want it to.
      • You can now manually edit the post date on the edit download screen.

      If you have edited capabilities for download monitor user permissions, you’ll have to again sorry! This is because I named them too long. Also, you should check your forced downloads still work because there was a logic error meaning they may not have been forced after-all…

      Enjoy.

    • Mahousive update to Download Monitor (3.2)

      Today I completed the update for the Wordpress Download Monitor Plugin – many tweaks, fixes, and features added. There were no changes to the database structure so people upgrading should be fine. Here is the list from the change log:

      • {user} tag added for custom formats
      • ‘autop’ option fix
      • Download page buttons applied with CSS so they are easier to customise/translate.
      • Fix for pagination bug after editing a download
      • Category output fix on edit downloads screen
      • Category urls on download page use ID rather than name to prevent errors when cats have the same names.
      • exclude_cat added to download_page shortcode
      • Localised ‘hits’ ‘date’ ‘title’ on download page
      • Option to disable the download logging
      • Read file ‘chunked’ some people found large files were corrupted so this should help (fingers crossed)
      • Added show_tags option to download page – displays x amount of tags on the download page.
      • File Browser root setting and download.php logic/mime types modified thanks to Jim Isaacs (jidd.jimisaacs.com)
      • Interface Improvements
      • Bulk edit categories, custom fields, tags, member only downloads
      • Added roles for download monitor admin – should be able to use with a role manager plugin if you want anyone other than admin to access the admin section e.g. http://wordpress.org/extend/plugins/capsman/
      • Change redirect after add
      • Edit Cat names/parents
      • Dedicated tags and thumbnails fields (they still use meta table though)

      And yes, those category link bugs are fixed at long last, and you can edit category names finally. Phew!