Contact form plugin for CakePHP
This plugin gives you a basic contact form that sends the contact info to you by email, and also stores it in the database in case the email gets lost.
After sending and storing the contact info it redirects to a thanks page on which you can put a Google Analytics tracker if you wish to follow AdWords conversion goals.
plugins folder type
git clone git://github.com/msadouni/cakephp-contact-plugin.git contact
In your root folder type
git submodule add git://github.com/msadouni/cakephp-contact-plugin.git plugins/contact` git submodule init git submodule update
Download the archive from github and extract it in
- Import the sql in
plugins/contact/config/sql/contact.sqlin your database
config/bootstrap.phpor a config file, specify the email you wish to receive the contacts on : Configure::write('Contact.email', 'firstname.lastname@example.org');
- To get the included french translation, add
config/bootstrap.phpor a config file.
- The contact form is by default located at
You can add a custom routes to your
config/routes.phpfile if you wish :
Router::connect('/contact', array( 'plugin' => 'contact', 'controller' => 'contacts', 'action' => 'add')); Router::connect('/contact/thanks', array( 'plugin' => 'contact', 'controller' => 'contacts', 'action' => 'thanks'));
Basic views and css are provided. You can override them by creating custom views for the form and thanks pages in
views/plugins/contact/contacts/thanks.ctp. The thanks view is only suitable for development, you'll have to create your own for production use.
The form view contains the string used by error messages so they can be extracted with
cake i18n tool. Feel free to fork the code, translate it in your language and make a pull request or contact me so I can include it in the plugin.
- Add an admin section to view and search the contacts, and remove the ones you don't want to keep