Enquiry/Contact Form
Plugin Aim
This plugin is designed to be an easily customisable and extendable method of creating an enquiry form for a rental property website (or any website that allows users to enquire about date periods), or even just a standard contact form.
Features
The plugin is feature packed from the outset, as well as the following list we have also added a large number of hooks and filters so that other plugin developers can easily extend it.
- Choice of Ajax powered or Standard HTML forms (Ajax form degrades to standard form when javascript is disabled or not available).
- Drag and drop functionality to add, remove or reorder fields on the form.
- Easily specify required fields, and change field title/description.
- Can send customisable email to enquirer.
- Can send enquiries to administration email address with customisable subject and message.
- RSS feed of enquiries (can be based on search criteria. e.g. easily build seperate RSS enquiry feeds for each property).
- Web-based enquiry management panel to allow you to view the last 10 enquiries, or search based on enquiry status (New or opened), time of arrival, property or full text search.
- Delete unwanted enquiries easily.
- If the Booking and Availability plugin is installed, you can easily create a pending booking (will check for other bookings that conflict with enquiry dates).
- Enquiries are marked up with hCard and hCalendar microformats for exporting to other calendars and address books (tested with Operator and Tails Firefox plugins)
- Use builtin CSS styles for form, or switch off styles so you can use your own.
- Option to include Javascript libraries on All pages, only Pages containing a form, or remove them from all pages (if you have them included in your theme already)
- Uses Yahoo YUI javascript libraries for Ajaxy goodness.
- Parses form content for various exploits such as Mime encoding, script injection and a whole lot more.
Plugin page for the Enquiry/Contact form plugin
Please see this page and this page for more details on this plugin until I complete the installation and setup instructions.
Installation
First download the most recent version of this plugin by clicking on the Download link on the right hand side of this page.
Unzip the downloaded file and then upload the clearskys directory to the wp-content/plugins directory of your Wordpress installation. If you already have a clearskys directory, then set your upload to overwrite any existing files, as this plugin will have updated a few of our common include files with newer versions.
When you have completed this step you will have a clearskys sub-directory in your plugins directory that contains all of the files (and an includes directory within that).
Setting up your system
The first thing to do after you have uploaded the plugin is to go to the Plugins administration page of your blog and click on the Activate button next the the Enquiries plugin.
After that you need to click on the Options menu and then go to the Enquiries options page. This will create all of the default settings for the plugin.
Including a form on your page or post
To include an Ajax powered form onto a page or post, click on the button to switch your editing to HTML mode and add the following in the place that you want your form to be displayed:
<!-- clearskys#enquiry-formajax -->
If you would rather have a standard HTML form then add the following instead:
<!-- clearskys#enquiry-formstd -->
Specifying a property for the enquiry form
To have the enquiry form register the users enquiry against a specific property, there are 3 tags that are very similar in layout and style as those for the Booking manager and availability plugin.
To specify a specific property number you can use the simplest tag below:
<!-- clearskys#enquiry-property(n) -->
So to have include a standard form on a page, and to have all enquiries sent via that form marked as being for property number 3, I would use the following markup in my page:
<!-- clearskys#enquiry-property(3) -->
<!-- clearskys#enquiry-formstd -->
If I wanted to have a more generic system, I could create a single page to display my property details and enquiry form and pass the property number in using a query attribute. In this case I would use the tag below:
<!-- clearskys#enquiry-propertyfromattr(n) -->
So to display an Ajax powered form and pass the property number in using the query attribute prop I would use the following markup:
<!-- clearskys#enquiry-propertyfromattr(prop) -->
<!-- clearskys#enquiry-formajax -->
The URI to call that page would be in the format:
http://blog.clearskys.net/viewproperty?prop=2
The final option is to pass the property number as an element of the URI.
So if I wanted to use the following URI to specify property number 6, and show a standard form:
http://blog.clearskys.net/viewproperty/6
Then I would include the following markup:
<!-- clearskys#enquiry-propertyfromuri(2) -->
<!-- clearskys#enquiry-formstd -->
The URI number is calculated in the following way:
0 - blog.clearskys.net
1 - viewproperty
2 - 6
Setting up your Feed
more coming soon, but the feed URI works in the same manner as described on this page.
Styling your Form
The styles included with the plugin are all included in the enquiryform.css file found in the clearskys/includes/css directory of the plugin.
These can be used as a basis for generating your own styles.
more details soon…
Support
Please ask any support questions in the forum.