The installation process for our plugins and add-ons is simple and straightforward, and shouldn’t cause you any trouble. Regardless of your previous experiences with WordPress plugins, you aren’t likely to have any problems if you follow these simple steps:
Add new ->
Upload -> and under "Choose File" select the zip file that you downloaded from our TMS Store:
Option 2 (in case the first option doesn’t work) – Unzip the file that you downloaded from our TMS Store. Open your WordPress installation folder to an FTP manager (it could be CyberDuck, FileZilla, Total Commander, or some other), go to wp-content/plugins/, and upload the folder you previously downloaded and unzipped.
Activate the plugin
If you've missed the "Activate" option that comes up when you install the plugin, just go to your WordPress admin panel -> Plugins, find the plugin you just installed, and click “Activate”. Plugin installed!
Optional – enter your purchase code for auto-updates
This is only necessary if you want to receive auto-updates for the plugin. Every purchase on our TMS Store has a unique purchase code: you can check it whenever you need it in the Downloads section. We use this purchase code for auto-update feature authentication.
For wpDataTables and all wpDataTables add-ons, go to your WordPress Admin, open wpDataTables -> Settings -> Activation tab, paste the Item Purchase Code in the corresponding input box, and click on the blue "Activate" button.
For Amelia, go to your WordPress Admin, open Amelia -> Settings -> Activation, paste the Item Purchase Code in the corresponding input box, and click on the blue "Activate" button.
For the Amelia plugin - if you see the following image in Settings/Activation, that means that you have the Lite version of the plugin installed. It needs to be removed, and the full version installed in order for the Activation field to become available:
For the wpDataTables plugin - If the Activation tab is missing in the Settings, this means that you have the Lite version installed. It needs to be deactivated and deleted, and the full version installed in order to activate the license:
Please note: If you purchased the plugin through the Envato marketplace, the activation procedure doesn't require you to enter your purchase code. We have an API for that, so to activate your Envato license leave the Purchase code field blank, and click on "ACTIVATE WITH ENVATO".
If you have any problems when uploading your file into WordPress, please check your server permissions. You'll know there are issues if WordPress displays this message:
Please note that wpDataTables is around 13 MB in size, and Amelia is around 7 MB in size, so if you are not able to upload it through WordPress Plugins page, you will probably need to increase the following:
You should be able to find these values in your php.ini file or on your hosting panel. If you can’t find it yourself please ask your hosting provider to provide it.
Date: November 19th, 2021
Amelia doesn't have any time zone settings, and it relies on WordPress' General settings. Here's how it works:
All times in the back-end of Amelia will be shown exactly how you save them, so (for example) if your employee works from 09:00 - 17:00, or if there's an appointment from 09:00 - 10:00, that's how you will see them in the back-end.
If you enable "Show booking slots in client time zone" in Amelia's General settings, though, that may not be what your customers see, depending on where they're located, and to what your WordPress site has been configured.
If this option in Amelia's General settings is disabled, all times on the front-end will be the same as times in the back-end. So, if your employee's work hours are from 09:00 - 17:00 in UTC+1, with this option disabled, regardless if your customer is in UTC+1, or in UTC+10 - they will still see times from 09:00 - 17:00, so if you have customers in multiple time zones, it's advisable to enable this option in Amelia's General Settings.
Important: In order for Amelia to store correct appointment times in the database (which is almost always in UTC time zone), you need to edit the WordPress' time zone to show the city you're in (or the city in your time zone), like this:
This way, when Daylight Savings Time starts (or ends), the times will be adjusted accordingly and you won't have to worry about them anymore.
If you save your Time Zone in UTC+/- format, you may experience issues with the Daylight Savings Time:
Explanation: When you configure the time zone to be "UTC+1" it will always be UTC+1. So, if we take Belgrade, Serbia as an example - without Daylight Savings Time, it is in UTC+1 time zone, but when Daylight Savings Time starts, Belgrade is in UTC+2. If you leave the time zone to be hard-coded to UTC+1, the times that your customers book on the front-end will not be properly adjusted to what you see in the back-end.
Example with UTC+1 configured: It is mid-summer, and Belgrade is in UTC+2. "Show booking slots in client time zone" is enabled, and a customer from Belgrade opens your website to book an appointment. The working hours of your employee are set from 09:00 - 17:00 (in UTC+1), but the customer sees them as 10:00 - 18:00. This is because the time zone is hard-coded in the back-end, while on the front-end it shows the time in UTC+2. So, a customer books an appointment for 10:00, and shows up at 10:00, while you expect to see them at 09:00.
Please note: If you hard-coded the time zone, and you have booked appointments, once you switch the time zone in WordPress to your city, it will adjust the times in Amelia's appointments to fit the time zone your city is currently in. This happens because (as mentioned above) the times are saved in UTC in the database, and it's adjusted in the plugin programmatically. So, if you have a hard-coded time zone set to UTC+1, and someone booked an appointment for 09:00, that time is saved as 08:00 in the database. When you change the time zone to your city (which is now in UTC+2), the appointment time will be adjusted to the time saved in the database 08:00 + 2:00, so the appointment time will switch to 10:00. The only solution, in this case, is to manually modify the appointment times, but it's the only way to make sure your time zone is properly configured, and that the future appointments will be saved and displayed correctly both for you and your customers on the front-end.
Summary: When you select the city you're in, in WordPress' General Settings, the system automatically calculates the Daylight Savings Time, and shifts the clock accordingly, so if you have any issues with what you see on the front-end vs what you see in the back-end, always check the Time Zone in WordPress
Updated: July 14th, 2023.
Licenses can be upgraded to higher tiers through our store, by clicking on the "Upgrade" button:
A new modal opens up where you can choose available upgrade plans:
Please note that the Lifetime purchases can't be upgraded to Subscription plans, so if you have a Pro Lifetime plan, you cannot upgrade to Developer Subscription. Also, depending on the license you currently have, different options will be offered in the modal.
What you should know about the upgrade:
The price that you will pay for the upgrade will be a pro-rated charge, meaning you won't be paying for the price difference between licenses, since we cannot refund the time spent on the license you currently have.
You bought a Basic Yearly license for Amelia, which costs $69 (roughly $0.19 per day).
After 100 days, you want to upgrade to 3-domain Pro Yearly, which costs $199 (roughly $0.55 per day).
Time remaining on Basic (what going to reduce the upgrade price): $50.35 (265 * 0.19)
Time spent on Basic: $55 (100 * 0.55)
Time remaining on Pro: $145.75 (265 * 0.55)
So, the price is not Pro - Basic (199-69=130), but instead a pro-rated charge, and you are going to be charged around $147.75 - $50.35 = $97.4.
If you're upgrading from a yearly subscription license to a yearly subscription license, it still renews on the same date (1 year after purchase) and your purchase code remains the same. This is basically why the prices are pro-rated.
Please note: Directly upgrading Lifetime licenses purchased after June 1st, 2021 is currently not possible, but you can, of course, acquire a new license and receive a refund for the previous purchase. You would need to purchase a new Lifetime License and reach out to us through a ticket, posting both purchase codes in a PRIVATE ticket, and our support managers will refund the amount of the originally purchased license retroactively.
Please check your receipt for the old purchase and verify that the card number or the PayPal account you used is still the same.
Please note: The prices are subject to change without prior notice and the prices listed above are to be used solely for the explanation of how upgrades work.
The price of our plugins and add-ons depends on where you're purchasing them from.
Prices are subject to change without prior notice.
If you want to buy the plugin through our website, there are three options you can choose from:
Basic - Premium plugin that can be used only for one domain or project. Please note that this license does not include the Packages Feature, WhatsApp Integration, Refunds for Online Payments, and Resources.
Pro - The premium plugin that can be used for 1, 2, or 3 domains.
Developer - The premium plugin that can be used on 5, 10, and 20 domains.
The prices for these licenses are all based on a yearly subscription and all licenses include support and monthly updates the whole time the subscription lasts. All three licenses can be used on an unlimited number of subdomains.
There are also lifetime deals:
Basic Lifetime - Full plugin that can be used only for one domain or project. Please note that this license does not include the Packages Feature, WhatsApp Integration, Refunds for Online Payments, and Resources.
Pro Lifetime - Full plugin that can be used for 1, 2, or 3 domains.
Developer Lifetime - Full plugin that can be used on 5, 10, and 20 domains.
The prices for all lifetime licenses include lifetime support and monthly updates. All three licenses can be used on an unlimited number of subdomains.
You can see the prices for all plans here.
Prices are subject to change without prior notice.
If you are looking at the Envato marketplace, there are two licenses:
Regular - Full plugin with a lifetime license that can be used by you or one client, in a single end product which end users are not charged with - price $299. There is an option to extend the support period up to 12 months upon purchase, and in that case, the price is $409.25.
Extended - Full plugin with a lifetime license that can be used by you or one client, in a single end product which end users can be charged with - price $1495. There is an option to extend the support period up to 12 months upon purchase, and in that case, the price is $2046.25.
The total price includes the item price and a buyer's fee. It includes 6 months of support and ensures you will receive all future updates of the plugin even after the support period expires.
Customer satisfaction and long-term relationship is our primary goal here at TMS. So, even though we are pretty confident in the quality of Amelia, and are pretty sure you won’t ever need a refund, we have established a straightforward customer-friendly refund policy.
If you are experiencing technical difficulties with your copy of Amelia, please feel free to open a ticket on this platform, so our support managers can help. They are able to resolve the problems in almost all cases.
However, if you feel that the product just doesn’t work for you, you can request a refund. As Amelia is a digital non-revokable product, we issue refunds only within 15 days after purchase. In case you decide to use this option, please provide us with feedback as it is vital for us to make Amelia better with each release.
We do not issue refunds when 15 days after the purchase have passed. Please note that it is customers responsibility to understand this upon purchasing products from us.
Please log in to http://store.tms-plugins.com/ and under "My Licenses" click on the Three Dots in the right-hand side of the license you want to submit a refund request for:
If you don't see it, that means that the 15-day money-back guarantee period ended, and as per our refund policies (Amelia Refund Policy, wpDataTables Refund Policy), you're no longer eligible for a refund. After you submit a refund request, you will not receive any confirmation emails, but you will see that the button is grayed out:
That means that the refund request is successfully submitted and that you will receive your refund in 5 - 7 business days.
Date: December 8th, 2021
Through our store, you can see all your purchased licenses, buy new licenses, contact support, access the main websites, official documentation, demos, add-ons, and pricing, change your password, submit refund requests, cancel subscriptions, view your purchase codes, and download the installation files.
Clicking on the "Support" button will open up the ticketing platform where you can submit a new ticket or respond to an existing ticket you may have raised with us.
Amelia opens up a few options:
From here, you can visit our main site, view our official documentation, view and play around with our demos, and view the pricing page.
wpDataTables offers similar options, but since wpDataTables has paid add-ons, they are listed as well:
So, similar to Amelia, you can visit the Main site of the plugin, view the official documentation, access the Add-ons page, and view pricing.
The Profile button, where you see your email address, offers an option to change your password, and log out of the store:
Clicking on "Change Password" opens a new window, where you can change the password you use to log into the store:
Please note: Since you're purchasing our plugins through a reseller (Paddle), you are not able to change the email address associated with the purchase because we cannot modify the email on their end automatically. If you need to change the email address associated with your purchase, please email us at [email protected] from the email address that was used to purchase the plugin, and let us know what the new email address will be associated with the purchase. If you're transferring the ownership to someone else, please make sure to update your billing data through the store (only valid for Subscription-based licenses, described below).
Here you can see all licenses you have purchased. Clicking on the down arrow on the right-hand side expands each license. There are differences between how Lifetime and Subscription licenses are displayed:
The Lifetime license shows the purchase date, the number of domains in use (domains where the license is active), the status of your license, and the purchase code which can be copied by clicking on the copy icon on the right of the field where the purchase code is displayed. This code can be pasted in the plugin's Settings/Activation section, in order to activate the purchase code. After activation, the "Domains in use" will be updated in the store.
Please note: The purchase code activation is only possible through your WordPress website, under the plugin's Settings/Activation tab, not through the store.
The Subscription license shows the date when the license will expire, what the next payment amount will be, the purchase date, domains in use, status, and the purchase code.
Please note: Every subscription-based license is set to renew every year, on the date of purchase, unless you unsubscribe through the store. If you unsubscribe, you will not be charged on the next renewal date, and after that date passes, you will still be able to use the plugin (the version you updated to last before the subscription expired), but you won't be able to receive new updates, and you won't have access to premium support.
Clicking on the "Manage Domains" button shows you the websites (domains and subdomains) on which the purchase code has been activated:
From this screen, you can remotely deactivate the license on any registered domain.
Clicking on this button, you're able to upgrade your license to a higher tier (Basic to Pro, or Developer, or Basic Lifetime, Pro Lifetime, or Developer Lifetime, and so on). For more details about upgrading the license, please take a look at this article.
The Three Dots:
From here, you can:
When you click on "Download Invoice", you will see the same receipt you received in your inbox when you initially purchased the plugin. This action doesn't actually download the invoice (yet), but when it opens a new page, you can print it in PDF by hitting CTRL+P on your keyboard, and then choosing the "Destination" as "Save to PDF":
Update Billing Data allows you to update the payment method that will be used for upcoming renewals of Subscription-based licenses.
Create Support Ticket opens this ticketing platform in a new tab, where you can submit a new ticket.
Cancel Subscription (only available for Subscription-based licenses) allows you to cancel your subscription. Every subscription-based license is set to renew every year, on the date of purchase, unless you unsubscribe through the store. If you unsubscribe, you will not be charged on the next renewal date, and after that date passes, you will still be able to use the plugin (the version you updated to last before the subscription expired), but you won't be able to receive new updates, and you won't have access to premium support.
Request Refund (only available within 15 days from the date of purchase). If you're not satisfied with the plugin, or you have issues our support wasn't able to fix, you can submit a refund request within 15 days from the date of purchase.
Date: November 23, 2021
Think of recurring events as a lecture. For example, you have an event called "Evolution 101" which is a recurring event that recurs every week, on Mondays, from 10:00 - 14:00. Every week, the "Staff" (employee) provides the same lecture, so there'd be no reason why a single customer would want to book the same lecture for X number of weeks (because it is the same lecture every week).
Because of this, every recurring event is considered a separate event, and when a customer books one event, they are not automatically added to all recurring events.
You can create an event that spans between Monday and Friday, or that includes multiple dates (November 23rd, then November 25th, then December 12th, then January 2nd, and so on). Think of this as a course that either offers different content on every date, or it continues from the last date. For example, a multi-day event that happens on November 22nd, November 29th, December 6th, December 13th, and December 20th is a 5-class CSS course. On November 22nd, you'd learn basics, on November 29th, you'd move to another stage, on December 6th - to another stage, and finally, on December 20th, you'd complete the course.
A customer would book this event to register for the CSS course, and they would automatically be assigned to all 5 dates within this one event.
Edited Date: July 14th, 2023
Our products can be purchased through the Envato marketplace, and through our websites:
Please note: Envato licenses are lifetime licenses, but they are limited to 6 months of support. Also, there are no plans (Basic, Pro, and Developer), like in TMS Store Licenses, and all licenses purchased through Envato are equal to the Basic licenses found on our websites.
TMS Store licenses can be yearly subscription-based licenses or Lifetime licenses. For differences in pricing and license details, please refer to our pricing pages:
Basic - Provides you with a purchase code that can be activated on one domain and an unlimited number of subdomains
Pro - Provides you with a purchase code that can be activated on 1 - 3 domains, and an unlimited number of subdomains.
Developer - Provides you with a purchase code that can be activated on multiple domains and subdomains.
Please note: Basic license of the Amelia plugin doesn't include the Packages feature, the Resources feature, Refunds for Online Payments, and WhatsApp integration. For specific license plans, please refer to our pricing pages listed above.
Prices are subject to change without prior notice.
When you purchase our products through our website, you will be redirected to our store, where you will need to generate your password:
You will also receive two e-mails:
Some hosting providers consider these e-mails as SPAM, so if you don't see them in your inbox, please check your SPAM and JUNK folders, and if you still can't see the emails received, please feel free to open a support ticket, and our support managers will gladly help.
The download link in our e-mail expires after 5 downloads, but you are able to download the plugin at any time by logging into our store.
When you obtain the purchase code from our e-mail, or from the store, you can activate it when you install the plugin.
You can read more about plugin installation in our Installation Article
All plugins and add-ons are activated through the Settings tab for that specific plugin:
wpDataTables and wpDataTables Add-ons:
If you purchased the plugin through the Envato marketplace, you don't actually need the purchase code to activate the license. The "Purchase Code" field is reserved for purchases made through our website and needs to stay blank when you're activating with Envato.
So, all you need to do is click on the green "ACTIVATE WITH ENVATO" button, and the plugin will take you to the Envato log-in page (if you're not logged in already), and the license will be activated.
As for purchases made through our website, you need to enter the purchase code in its designated field, and click on the blue "ACTIVATE" button.
If you don't see the Activation tab in Settings, that means that you're running the Lite version of the plugin. It needs to be deactivated/deleted, and the full version installed in order to activate the license.
Please note: Formidable Forms integration for wpDataTables and Gravity Forms Integration for wpDataTables are add-ons that require wpDataTables and the core forms plugins to be installed (Gravity Forms and Formidable Forms). When you're activating these add-ons, please note that the core plugin needs to be activated as well.
This completes the license activation, and if you configured your WordPress website to receive automatic plugin updates, it will always show when a new update is available. If you wish to manually update the plugin, you will need to download the latest version from our store (the download button always acquires the most recent version). If you don't have auto-updates enabled, you can always subscribe to our newsletters, to be informed about plugin updates, new features, promotions, giveaways, or freebies:
Date: November 23, 2021
Please note that we do not have translators in our company, so all translated languages Amelia has have been translated by our customers. If you find any inconsistencies with the translation, please feel free to correct them using POEdit, or Loco Translate, open a ticket and send us the corrected translation, so we can add it to the plugin.
At the moment we have Spanish, German, Dutch, Russian, Romanian, French, Finnish, Italian, Swedish, Brazilian Portuguese, Portuguese, Greek, Arabic, Slovak, Hungarian, Danish, Belgian, Japanese, Polish, Hebrew, and Chinese translation. Approximately 90-95% of the plugin is translated into the languages stated above.
To apply any of these languages, all you need to do is go to WordPress' General settings and set the site language to your language.
Please note that the languages mentioned above work only for certain locales. For example, we have Spanish (Spain) translation, which is saved with es_ES locale, but if you set your site language to be Spanish (Mexico), Amelia will not pick up the translation, since the locale is es_MX.
The solution here would be to either change WordPress' language from Spanish (Mexico) to Spanish (Spain), or access ../wp-content/plugins/ameliabooking/languages/ folder, and to copy the "es_ES" folder. Paste it in the same path (ameliabooking/languages) and rename the folder to "es_MX". Then, access the folder, and rename the two files from "ameliabooking-es_ES.po" and "ameliabooking-es_ES.mo" to "ameliabooking-es_MX.po" and "ameliabooking-es_MX.mo".
Notification templates are not included in the translations mentioned above, so when you access Amelia/Notifications, all templates will be in English. However, if your site is set to German (for example), the de_DE locale will be applied, and Amelia will use the templates you see in Amelia/Notifications, so if you don't translate these, all email notifications will be sent in English.
In cases like this, DO NOT add your language as a secondary language in Amelia. It is the primary language of your website, and Amelia will use it as a primary language.
Since your site is configured to your language in WordPress General Settings (German in this example), you only need to translate the templates you see when you land in Amelia/Notifications. The language drop-down you see in the top right is used only for additional languages (so, if the site is in German, you will add English, Spanish, Dutch, etc) through this menu:
So, if you have issues with emails coming in in English, instead of the language your WordPress site is set to, make sure you haven't added your language as the additional language, and translate the templates you see when you land in Amelia/Notifications.
Updated: February 1st, 2022
PLEASE NOTE: Grammarly resolved the issue that is described below, so please make sure that you're using the latest version of this add-on. If you're using some other grammar tool, and this issue is still present on your end, please check out the article below.
In some cases, Amelia can face an issue with browser extensions that are used for grammar checks (
Grammarly, Language Tool, etc).
Email templates disappear when you switch between them (but they are still available when you refresh the page unless you save them).
If you save a template with a grammar tool enabled, a blank template will be saved, and all your work will be lost.
Make sure to turn the browser extension off for your back-end site, and you'll be able to modify and save the notifications without any issues.
Check out the video below to see how it behaves and what you need to do in order to create and save email templates. We've reached out to Grammarly about this, and their developers did resolve the issue, but we can't guarantee it's been resolved for other grammar checker browser add-ons.
Date: April 19th, 2022
If your customers are showing up for appointments you see as canceled, and if there are instances where appointments are automatically canceled a few minutes after they're booked, please note that it's not caused by any errors or bugs in Amelia.
Amelia can't cancel any appointments on its own. If the appointments were not canceled manually by the client, yourself, another admin, the employee, or any Amelia Managers you may have on your site, the only other option that's left is a link checker.
If you include the %appointment_cancel_url% placeholder in the email, there's a possibility that the link that's sent to your customers is automatically activated by the link checker, and the appointment gets canceled like this.
What link checkers do is they validate each URL that's in the email, and in order to do that they have to visit the URL. Those can be built into the end user's mailing platform, or they could be add-ons for the browser or the email provider (Gmail, Yahoo, Outlook, etc). When they visit the cancelation URL (to check for potential viruses), they cancel the appointment. Unfortunately, there's nothing we can do in this case. The only workaround would be to create a Front-end Customer Panel and explain the procedure in the email, like:
"To cancel your appointment, please log in to your Customer panel, and click on the pencil symbol. There you'll see the "Cancel" option."
Date: November 5th, 2021
At the moment, the plugin has integration with Elementor and Divi builder, but we plan to add a lot more in the future. Adding specific (multiple) employees, categories, services, or locations through shortcodes is not possible (for example [ameliabooking services=1, 2, 3] is not possible).
Amelia's booking forms and panels can be added to pages using:
1. Gutenberg blocks:
On the right-hand side, there's a slider that you can enable "Preselect Booking Parameters" where you would be able to filter the available services, categories, employees, locations, and whether you're going to display only services, or only packages, or all:
2. Elementor widgets:
When you select the form, you'll be able to select booking parameters, just like in the Gutenberg editor:
3. Divi modules:
When you select the form, you'll be able to select booking parameters, like in Gutenberg and Elementor:
4. Shortcodes. Below is the list of shortcodes available in Amelia:
Please note: Service Description will not be displayed in [ameliabooking] form (it is only available in [ameliacatalog] form), nor will you be able to see the Category selection drop-down in this form
Please note: The Amelia Search booking form cannot include filters like Step-by-Step and Catalog booking forms do, so you can't add something like [ameliasearch service=1].
[ameliaevents tag='name']if you want to show just the events that belong to the same tag defined during the creation of events, where “name” will be replaced with the tag name,
Please note: If you're using tags in the shortcode, make sure to copy the single quotes from #2 in the list above because of issues with different keyboard layouts that may not apply the tag if used.
The message, ‘the link you followed has expired,’ is most often received when you’re uploading either a WordPress plugin or theme.
With all standard WordPress installations, there is a server setting that limits the upload of files over a certain size. There is also a setting that prevents scripts from running for too long, causing any script that exceeds the limit to timeout.
This means that when you try to upload a file that’s over the size limit, or the upload takes too long, you’ll get an error message. This is the one that reads “the link you followed has expired”.
To find out the size of the upload limit, you can go to the Media section of the WordPress dashboard, then click ‘Add New’. At the bottom of this page, you will see the text: “Maximum upload file size: …”
The default file size limit is usually pre-configured at 2MB which is quite low, especially for WordPress theme uploads. In the following sections, we’ll show you how to change this to a higher value, as well as set a more reasonable script timeout limit.
So, if the link expired, what do you do? The answer is clear —if the setting is too low, you need to increase the limit. Luckily, this is not too tricky to do, even for a beginner.
There’s more than one way of increasing the limit to avoid ‘the link you followed has expired’ message. Don’t get scared, but they all include adding some code. This isn’t as hard as it sounds —if you can copy and paste, then you have all the necessary skills.
At the same time, we’ll also be increasing the time your site allows a file to execute (in this case, how long it takes to upload a file, theme, or plugin).
We will provide a step by step guide, making this as easy as possible. Follow along and make sure you complete all the steps for the method you are attempting. Try the methods one at a time.
If a method doesn’t work you will need to undo what you did before trying a new method. This is important to make sure your website continues working smoothly.
The functions.php file is a core file for WordPress sites. Do remember that the file is linked to the theme you use. So, if you change your theme later, you’ll need to repeat this method to increase the upload size.
It’s a simple file to edit but if you’re considering a new theme, try a different method. Solve the ‘link you followed has expired’ error with the following steps.
@ini_set( 'upload_max_size' , '100M' ); @ini_set( 'post_max_size', '100M'); @ini_set( 'max_execution_time', '300' );
It might be tempting to make these limits massive but be careful as hackers can use this against you. If the timeout value is really high and they get into your website, they could run all sorts of dangerous, long-running scripts. In other cases, a bug might cause a script to take abnormally long to process, which can slow your site down to a standstill.
It’s also possible to change the .htaccess file to solve your issue.
Here are the steps:
php_value upload_max_filesize 128M php_value post_max_size 128M php_value max_execution_time 300 php_value max_input_time 300
If you can’t find the functions.php or .htaccess files or don’t like to edit them, there’s another method. To solve the issue of “the link you followed has expired”message, you can edit the php.ini file, which contains settings for your server’s implementation of PHP.
Some shared website hosting companies don’t give access to the file, which may be a roadblock for you. If that’s the case for you, it’s best to contact your hosting provider directly.
If you’re sure you have access, you can perform the following steps:
memory_limit upload_max_filesize upload_max_size max_input_time post_max_size max_execution_time
memory_limit = 256M upload_max_filesize = 64M upload_max_size = 64M max_input_time = 1000 post_max_size = 64M max_execution_time = 300
You can always contact your host provider to change these settings. They’ll likely ask for a screenshot of the ‘the link you followed has expired’ message so ensure you take one when it happens. If you didn’t, you can recreate the error to get a screenshot.
You could also choose to send them an email explaining the issue. Request that they increase the limits of the following:
memory_limit upload_max_size post_max_size upload_max_filesize max_execution_time max_input_time
Try again to see if your file will now upload.