LinkLens Labs Docs
LinkLens Pro Contact Forms
Lightweight contact forms for modern WordPress sites — fast AJAX submissions, built-in spam protection, always-on submission logging, and a simple admin inbox with status workflow.
llcf- classes). Advanced behavior can be extended via theme snippets or WP filters.
The plugin stays lean by design.
Overview
LinkLens Pro Contact Forms is designed to do one job well:
- Provide a clean, fast contact form
- Reliably log every submission
- Deliver messages via email when licensed
- Give admins a simple inbox with status tracking
No builders, no field overload, and no third-party dependencies.
Requirements
- WordPress 6.0+
- PHP 7.4+
- Email sending via
wp_mail()(works with WP Mail SMTP, Postmark, SendGrid, etc.)
WooCommerce is not required.
Installation
- Upload the plugin ZIP via Plugins → Add New
- Activate LinkLens Pro Contact Forms
- (Optional) Activate your license in the admin dashboard
- Add the form shortcode to any page
That’s it.
Adding a Contact Form
Insert the shortcode anywhere in a page, post, or block:
[llcf]
This outputs a fully styled contact form with Name, Email, Message, spam protection, and AJAX submission.
Shortcode Options
| Attribute | Description |
|---|---|
to |
Email address(es) to receive messages (comma-separated). Defaults to admin email. |
subject |
Default email subject |
subject_toggle |
Show optional subject field toggle (1 to enable) |
button |
Custom submit button text |
title |
Optional card title above the form |
success |
Custom success message |
Example:
[llcf title="Contact Us" to="support@yoursite.com" subject_toggle="1" button="Send" success="Thanks — we’ll reply soon."]
Spam Protection
Spam prevention is built in and always enabled:
Honeypot Field
An invisible field that bots typically fill out. Human users never see it.
Time Trap
Prevents instant submissions (bots submitting in under a few seconds).
No CAPTCHAs. No third-party services. No tracking scripts.
Submission Logging
Every valid submission is logged to the database before any email is sent.
Stored data includes:
- Date & time
- Name
- Subject
- Message
- IP address
- User agent
- Mail sent status
This ensures messages are never lost, even if email delivery fails (or email is disabled).
Admin Submissions Inbox
Access submissions via:
WordPress Admin → LL Contact Forms → Submissions
Features
- View recent submissions (latest 200)
- See email delivery status (Sent / Not Sent)
- Mark messages as Open / Answered / Closed
- Delete submissions when no longer needed
This provides a simple workflow without turning WordPress into a helpdesk system.
Email Delivery
Email is sent using WordPress’s native wp_mail() function.
Headers
- Proper From address using your site domain
Reply-Toset to the sender’s email
SMTP Support
Works with popular SMTP plugins including WP Mail SMTP, FluentSMTP, Postmark, SendGrid, and Amazon SES.
License Activation
Email delivery is license-gated, but logging always works.
Where to activate
WordPress Admin → LL Contact Forms → License
License behavior
| Status | Result |
|---|---|
| License active | Email + logging enabled |
| License inactive | Logging only (email disabled) |
This allows safe use on staging or development sites.
Database Table
The plugin creates a single table:
wp_llcf_submissions
- Created automatically on activation
- Verified at runtime
- No scheduled jobs or background processes
Styling & Customization
The plugin includes minimal default styling that works with most themes. Markup uses stable class names prefixed with llcf-.
Recommended places to add custom CSS:
- Appearance → Customize → Additional CSS
- Your child theme stylesheet
- A small “Code Snippets” style plugin
CSS recipes
Make the card full width (remove max width)
.llcf-card{
max-width:none;
}
Make the submit button full width
.llcf-actions{ justify-content:flex-start; }
.llcf-submit{ width:100%; justify-content:center; }
Fix invisible submit button (theme override)
.llcf-card .llcf-actions .llcf-submit{
background: #111827;
color: #ffffff;
border: 0;
opacity: 1;
visibility: visible;
}
Force Message field to full width (theme override)
/* Force Message field to full width */
.llcf-card .llcf-field .llcf-label{
width:100%;
max-width:100%;
display:block;
}
.llcf-card textarea[name="message"]{
width:100%;
max-width:100%;
box-sizing:border-box;
}
Change button color (match your brand)
.llcf-submit{
background: #0b5fff; /* your brand */
box-shadow: 0 10px 24px rgba(11,95,255,.18);
}
Reduce spacing for tighter layouts
.llcf-card{ padding:14px; }
.llcf-field{ margin:0 0 10px; }
.llcf-form input,.llcf-form textarea{ padding:10px 10px; }
Dark mode-friendly card
.llcf-card{
background: rgba(17,24,39,.92);
border-color: rgba(255,255,255,.10);
}
.llcf-label span{ color: rgba(255,255,255,.85); }
.llcf-form input,.llcf-form textarea{
background: rgba(255,255,255,.06);
border-color: rgba(255,255,255,.12);
color: rgba(255,255,255,.92);
}
Tip: If your theme styles overwrite the form fields, increase specificity by prefixing with body or your page container class.
Extending Behavior (functions.php)
This plugin is intentionally lean and does not provide a large hook API (yet). However, you can still customize common behavior safely using: shortcode attributes, theme CSS, and standard WordPress mail filters.
Change the From name/email globally
If you want all outgoing mail to use a specific From name/email (recommended for deliverability), you can use:
// Add to child theme functions.php or a snippets plugin
add_filter('wp_mail_from', function($from){
return 'no-reply@yourdomain.com';
});
add_filter('wp_mail_from_name', function($name){
return 'Your Site Name';
});
Override the default styling (advanced)
If you prefer to style everything yourself, you can disable plugin CSS by dequeuing the style handle:
// Add to child theme functions.php
add_action('wp_enqueue_scripts', function(){
wp_dequeue_style('llcf-lean');
}, 100);
Note: The plugin registers/enqueues llcf-lean (CSS) and llcf-lean (JS). Dequeuing is for advanced users.
Performance
Designed to be extremely lightweight:
- No external libraries
- No admin page builders
- No front-end frameworks
- Minimal inline CSS & JS
- Single database query per submission
Safe for high-traffic sites.
Security
- Nonce verification on submissions
- Sanitization and validation of all fields
- Honeypot and timing checks
- Capability checks on admin actions
Troubleshooting
Submissions are logged but email says “Not sent”
This usually means either (1) your license is not active, or (2) your site mail/SMTP isn’t configured correctly. Logging always occurs first, so messages are safe even if email fails.
Form submits but nothing happens
Check for caching/minification conflicts, and confirm your site can reach admin-ajax.php.
Also test with other plugins temporarily disabled to identify conflicts.
Spam still getting through
Honeypot + time trap stops a lot of bot noise. For heavier spam pressure, consider adding server-side rate limiting, a firewall rule, or an SMTP provider with stronger filtering.
Translation Support
The plugin is translation-ready and uses the text domain:
ll-pro-contact-forms
Frequently Asked Questions
Will submissions still be saved if email fails?
Yes. Submissions are logged first, email is attempted second.
Can I use multiple forms on one site?
Yes. Each shortcode instance can have its own recipient and subject.
Does this replace a helpdesk or ticket system?
No. This is intentionally simpler — a clean contact form with logging.
Can I add more fields?
No by design. This plugin focuses on a clean, consistent contact experience.
Support
Documentation covers standard usage. For license or technical issues, contact LinkLens Labs support.
Final Notes
LinkLens Pro Contact Forms is built for developers, site owners, and agencies who want predictable behavior, clean output, reliable logging, and no unnecessary features.
It does exactly what a contact form should — and nothing it shouldn’t.