Posted: December 16, 2011 in Web
Did you set a special price to expire on a certain date in Magento, but it didn’t automatically remove itself? Here’s the fix.
The problem
After much research, I can only assume this special price issue not working properly is a bug in Magento. The only accepted solution was to visit the admin page System > Configuration and Reindex the Data for Product Prices. Fine, but I can’t tell my client to log into his admin every morning and clear his indices.
Create cron jobs
Instead, I created some cron jobs to clear the indices and cache storage every night at midnight.
Reindex all Magento indices
Create one cron using the following command:
php /home/path/to/magento/shell/indexer.php reindexall
Clear all cache
To clear all Magento cache, we will need to create a script file that deletes everything in /var/cache/.
- Create a file called clearcache.sh in the directory one level above public_html (so it’s not publicly accessible)
- Put the following lines into that file:
#!/bin/bash rm -rf /home/path/to/magento/public_html/var/cache/* - Edit the path to your Magento installation and /var/cache/ directory as necessary.
- Create the cron job using the following command:
bash -s < /home/path/to/clearcache.sh
Tags: magento, web development
Leave a comment
Did this article help you? Do you have a different opinion? Feel free to leave a comment or ask questions.