evoLeadGate: FAQ and troubleshooting
Frequently asked questions
Does it work with page caching?
Yes. The CSRF token is not part of the HTML: the script requests it from Joomla when the page loads. The form's signed configuration does travel in the HTML, with no expiry, so a cached copy stays valid as long as you do not change Joomla's secret.
What if my subscription expires, or I have no Download ID?
The extension keeps working exactly as before. What changes is that you stop receiving updates, and the License tab of the options shows the matching notice.
Can one form deliver several files?
No. Each form delivers one file. If you need several, zip them into one or create a form per file.
Does it connect to my CRM?
It ships no connectors. Leads stay in your database and you can get them out through the panel (with CSV export), the read-only REST API, the Joomla event onEvoleadgateLeadCreated from your own plugin or, if you have it, evoMCP. Details are in the Reference.
If the same person fills in the form twice, is the lead duplicated?
Yes. Each submission creates a new lead, even when the email already exists. There is no deduplication.
Are download links single-use?
No. A link works as many times as needed until it expires (7 days by default). Each download is logged in the lead detail.
Problems
"Check protection" says "NOT protected"
The server answered something other than 401, 403 or 404 when asked for the test file in images/evoleadgate-privado/, so files could be downloaded without going through the form. The usual cause is that the .htaccess is not applied:
- Nginx does not read
.htaccess, so you need a rule that denies access to/images/evoleadgate-privado/. - In Plesk, the option "Serve static files directly by nginx" skips the
.htaccessforpdf,txt,zipand similar files. Add the rule or turn that option off for the site.
Then click Check protection again. If it says "Could not check", the server could not make the request to itself; the message includes the reason.
The form does not appear on the published site
The form is only drawn if it has an ID and a valid file from the private folder. Open the page in the editor: the element warns you if the ID is missing, if there is no file, or if the file is not in images/evoleadgate-privado/.
Nothing is sent from the editor
That is expected. In the builder preview the form does not submit data. Test it on the published page.
The visitor sees "We could not process your submission. Please wait a moment…"
Anti-spam rejected the submission. The cause can be:
- a filled-in honeypot field (some password managers or autofill tools fill hidden fields);
- a submission before the minimum fill time (3 seconds by default);
- exceeding the per-IP submission limit within the window (5 in 10 minutes by default).
After a rejection the visitor can try again. Adjust the limits on the Anti-spam tab of the options. If every visitor seems to come from the same IP, see the next item.
Every stored IP is the same
The site sits behind a reverse proxy or load balancer and Joomla does not know. Turn on System → Global Configuration → Server → Behind Load Balancer. Until you do, the per-IP limit applies to all visitors at once and the stored IP is the proxy's.
Emails do not arrive
Open the lead in the panel and look at "Email status" (notice / delivery):
sent: Joomla handed the message to the mail server. If it does not arrive, check the spam folder and the sender's reputation.failed: sending failed. Check Global Configuration → Server. With SMTP, port 587 goes with STARTTLS and 465 with SSL/TLS; mixing them up is a frequent cause.skipped(notice only): there were no recipients. Set "Emails de aviso" (notification emails) in the element, or the default notification email in the options.
The lead is saved even when mail fails.
Links in the emails point to another domain
Links are built from the domain of the request. Set $live_site in configuration.php.
Opening the link says "This link has expired"
The "Download link validity (days)" period has passed. The visitor has to fill in the form again, which creates a new lead. To give more room, raise the period in the options; it only affects new leads.
Opening the link says "The file is not available"
The link does not exist, or the file is no longer in images/evoleadgate-privado/ (deleted, moved or renamed). With the file missing, the form also stops capturing new leads: the visitor sees a generic error message.
Old forms fail after changing Joomla's secret
The form's signed configuration is signed with the site secret. If you change it, forms still sitting in a cache return an error until the page is generated again. Clear the cache.
Conversions are not recorded in Google Ads or Meta
The script only calls gtag and fbq if they exist as functions on the page. If a conversion is missing, your site has not loaded them or the visitor did not accept the marketing category. The dataLayer event is always pushed. For Google Ads you also need to fill in "Conversión de Google Ads" (Google Ads conversion) in the format AW-XXXXXXX/label.
Old IP addresses and leads are not deleted
Retention is run by a scheduled task that the package does not create. Create it in System → Scheduled Tasks ("evoLeadGate: data retention") and check that it is enabled and running. With lead retention at 0 (the default), leads are never deleted.