Fillable Forms
Accessible WordPress plugin for fillable forms - print, PDF, email
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/odgy8/wp-fillable-forms/archive/refs/heads/main.zipFillable Forms - WordPress Plugin
A free, accessible WordPress plugin for creating fillable forms that users can complete online, print, download as PDF, and email. Built specifically for charities and organizations serving people with health conditions and disabilities.
✨ Features
For Administrators
- Easy Form Builder: Intuitive drag-and-drop interface for creating custom forms
- Multiple Field Types:
- Text (single-line)
- Textarea (multi-line)
- Select (dropdown)
- Radio buttons (single choice)
- Checkboxes (multiple choice)
- Date picker (mobile-friendly)
- Simple Integration: Use shortcodes to embed forms anywhere on your site
- No Database Storage: Privacy-first approach - no user data stored on server
For Users
- Accessible Design: WCAG 2.1 AA compliant with full keyboard navigation and screen reader support
- Mobile-Friendly: Fully responsive design that works on all devices
- Download as PDF: Generate PDFs client-side for offline use
- Email Forms: Send completed forms via email client
- Print Support: Browser-based printing with optimized print styles
- Auto-Save: Automatic saving to browser local storage
- Privacy-First: All data stays in the user's browser
🚀 Installation
Method 1: Manual Installation (Recommended)
-
Download the latest release or clone this repository:
git clone https://github.com/odgy8/wp-fillable-forms.git -
Upload the
wp-fillable-formsfolder to your WordPress plugins directory:/wp-content/plugins/ -
Log in to your WordPress admin panel
-
Navigate to Plugins → Installed Plugins
-
Find Fillable Forms and click Activate
Method 2: WordPress Admin Upload
- Download the plugin as a ZIP file
- Go to Plugins → Add New → Upload Plugin
- Choose the ZIP file and click Install Now
- Click Activate Plugin
📖 Usage
Creating Your First Form
-
In WordPress admin, go to Fillable Forms → Add New Form
-
Enter a form title (e.g., "Health Assessment Form")
-
Add fields by clicking the field type buttons:
- Text: For short answers (name, email, etc.)
- Textarea: For longer responses (medical history, notes)
- Select: For dropdown menus with predefined options
- Radio: For single-choice questions
- Checkbox: For multiple-choice questions
- Date: For date selection with mobile-friendly picker
-
Configure each field:
- Enter a clear, descriptive label
- For select, radio, and checkbox fields, add custom options
- Drag fields to reorder them
-
Click Save Form
-
Copy the generated shortcode (e.g.,
[fillable_form id="123"])
Displaying a Form on Your Site
Using the Classic Editor
- Edit the page or post where you want the form
- Paste the shortcode directly into the content
- Publish or update
Using Gutenberg (Block Editor)
- Edit your page or post
- Add a Shortcode block
- Paste your shortcode:
[fillable_form id="123"] - Publish or update
Using Elementor (or other page builders)
- Edit your page with the page builder
- Add a Shortcode widget
- Paste your shortcode
- Update the page
User Experience
When users visit your form, they can:
- Fill Out: Complete all form fields
- Auto-Save: Data automatically saves to their browser
- Clear: Reset all fields with confirmation
- Download PDF: Generate a PDF of the completed form
- Email: Send the form via their email client
- Print: Use browser print for physical copies
🎯 Use Cases
- Healthcare Forms: Patient intake forms, health assessments, symptom trackers
- Charity Applications: Support request forms, volunteer applications
- Accessibility Services: Needs assessment forms, accommodation requests
- General Purpose: Any form where users need to fill out, save, and share data offline
🔒 Privacy & Security
- No Server-Side Storage: Form responses are NOT saved to your WordPress database
- Client-Side Only: All data stays in the user's browser (local storage)
- GDPR Friendly: No personal data collected or stored by the plugin
- Privacy Notice: Clear messaging to users about data handling
- Open Source: Fully auditable code
🛠️ Technical Details
Requirements
- WordPress 5.0 or higher
- PHP 7.2 or higher
- Modern web browser with JavaScript enabled
External Libraries (Loaded from CDN)
- Flatpickr (v4.6.13): Mobile-friendly date picker
- jsPDF (v2.5.1): Client-side PDF generation
Browser Support
- Chrome/Edge (latest)
- Firefox (latest)
- Safari (latest)
- Mobile browsers (iOS Safari, Chrome Mobile)
File Structure
wp-fillable-forms/
├── fillable-forms.php # Main plugin file
├── includes/
│ ├── admin-list.php # Admin forms list
│ ├── form-builder.php # Form builder interface
│ └── form-display.php # Frontend form display
├── assets/
│ ├── css/
│ │ ├── admin.css # Admin styles
│ │ └── frontend.css # Frontend styles
│ └── js/
│ ├── admin.js # Form builder JS
│ └── frontend.js # Form interaction & PDF generation
├── README.md
└── .gitignore
🎨 Customization
Styling
The plugin uses CSS classes you can target for custom styling:
/* Main container */
.fillable-form-container { }
/* Form fields */
.fillable-form-field { }
.fillable-form-input { }
.fillable-form-textarea { }
.fillable-form-select { }
/* Buttons */
.fillable-form-btn { }
.fillable-form-btn-primary { }
.fillable-form-btn-secondary { }
Add custom CSS in Appearance → Customize → Additional CSS
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Development Setup
- Clone the repository
- Make your changes
- Test thoroughly with WordPress locally
- Submit a PR with a clear description
Reporting Issues
Found a bug? Please open an issue with:
- WordPress version
- PHP version
- Browser and version
- Steps to reproduce
- Expected vs actual behavior
📄 License
This project is licensed under the GPL v2 or later - see the LICENSE file for details.
👏 Credits
Developed for Astriid - Supporting people with long-term and serious health conditions.
Built with accessibility and user privacy as top priorities.
💬 Support
- Issues: GitHub Issues
- Documentation: This README
🗺️ Roadmap
Future enhancements under consideration:
- Form submission storage (optional)
- Email notifications to admins
- Conditional logic for fields
- Multi-page forms
- Form templates library
- Custom email templates
- Export form responses (if storage added)
Made with ❤️ for accessibility and privacy