A modern and flexible contact and form builder module for XOOPS CMS.
xContact is a powerful contact and form management module for XOOPS. It allows administrators to create multiple contact forms, collect submissions, manage requests, and notify responsible users by email.
The module is inspired by the original xcForm module and has been redesigned for current XOOPS versions with improved usability, a visual form builder, submission management, and modern UI support.
- Unlimited contact forms
- Drag & Drop form builder
- Responsive Bootstrap-based templates
- Custom field labels and descriptions
- Required field validation
- Honeypot spam protection
- Email validation
- Success and error messages
- Multiple form types
- Short Text
- Long Text
- Website URL
- Phone Number
- Number
- Date
- Time
- File Upload
- Hidden Field
- Label
- Heading
- Paragraph
- Checkbox Group
- Image Choice
- Dropdown List
- Consent Checkbox (e.g. for GDPR)
- Radio
- Signature
- Create and manage multiple forms
- Visual Drag & Drop form designer
- Submission management
- Submission status tracking
- Email notifications
- Form activation/deactivation
- Permissions management
- Form preview
- Email notification on new submission
- Configurable recipients
- Custom email subjects
- Submission details included in notification
- XOOPS Security Token validation
- XMF Request filtering
- Honeypot anti-spam protection
- Input sanitization
- Group permissions
- Font Awesome support
- Unicode/Emoji icon fallback
- Bootstrap-compatible templates
- Mobile-friendly administration
| Component | Version |
|---|---|
| XOOPS | 2.7.x |
| PHP | 8.2+ |
| Bootstrap Theme | 5+ |
| MySQL / MariaDB | Supported by XOOPS |
- Download the latest release.
- Extract the archive.
- Upload the directory:
/modules/xcontact
- Login as Administrator.
- Open:
Administration → Modules
- Install xContact.
- Configure module preferences.
- Create your first form.
- Backup your database.
- Replace module files.
- Go to:
Administration → Modules
- Update the module.
- Verify preferences and permissions.
- Open:
Modules → xContact → Forms
-
Click Add Form.
-
Enter:
- Name
- Description
- Notification Email
-
Save.
-
Open the Form Builder.
-
Drag fields from the toolbox.
-
Configure:
- Label
- Name
- Placeholder
- Width
- Required option
-
Save.
Insert the generated form block or use the provided template.
The visual form builder supports:
- Reorder fields
- Instant preview
- Field settings panel
- Full Width (12)
- Half Width (6)
- Third Width (4)
- Label
- Internal Name
- Placeholder
- Description
- Default Value
- Required
- Width
- Options (for selectable fields)
Every submission is stored in the database.
Stored information:
- Submission Date
- Form ID
- User IP Address
- Status
- Submitted Data
Status examples:
- New
- Read
When a form is submitted:
- Submission is validated.
- Data is stored.
- Notification email is generated.
- Configured recipient receives the message.
Notification includes:
- Form Name
- Submission Date
- IP Address
- Submitted Values
The module supports multiple icon providers.
Recommended default option.
No external dependencies required.
- PSR-12
- Strict Types
- XMF Components
- XOOPS Coding Guidelines
xcontact/
├── admin/
├── assets/
├── blocks/
├── class/
├── include/
├── language/
├── templates/
├── uploads/
├── index.php
├── xoops_version.php
└── README.md
Contributions are welcome.
- Fork repository.
- Create feature branch.
- Commit changes.
- Submit Pull Request.
Please follow XOOPS coding standards.
- Eren Yumak — Aymak aymak@aymak.net
- Goffy - Webdesign Gabor wedega.com
XOOPS CMS Community and Contributors.
GPL-2.0-or-later
This module is distributed under the GNU General Public License.
Repository:
https://github.com/XoopsModules27x/xcontact
Please use GitHub Issues for bug reports and feature requests.
xContact — Flexible Contact and Form Management for XOOPS CMS