Downgrade Less CSS to v1.2 to fix problems with 2.0.7
Did you know you are #54 for ecommerce leeds on Google?
This is only one of several keywords we have detected driving traffic, and potentially revenue, to your web-site.
A bit of informative spam there. To be honest we didn’t know this. We have not really gone into geo targetted SEO. Some of our biggest clients are from the south of England and we have quite a few big cilents from the Americas.
That said, if you are looking for e-commerce specialists who are in Leeds then get in touch with Edmonds Commerce. We are without a doubt world class Ecommerce specialist based in Leeds.
We do a lot of work with Magento these days but being PHP development specialists we are happy to help with oscommerce, prestashop, open cart or any other PHP based system you would like us to look at.
Just get in touch today. If you are based in Leeds feel free to swing by!
1. Ensure Caching is Enabled
It may sound obvious, but if you do not have caching enabled then the performance of your Magento store is going to suffer massively.
Generally whilst developing, caching will need to be at least partially disabled to ensure that changes are reflected. Unfortunately some times when a site goes live, enabling caching is a forgotten step.
2. Upgrade your Magento
More recent versions of Magento offer much better performance than earlier versions. If you are running a Magento version older than 1.4 then you should definitely look to upgrade as soon as possible as there are vast improvements to be made in terms of performance.
3. Disable or Improve Bad Extensions
Some custom modules or forum inspired template hacks can be functionally fine but absolutely terrible in terms of performance. Fancy a best sellers list? Lets calculate the top ten products on every single page load and display the results in the right hand column!
4. Use Block Caching
In order to deal with the above scenario, it is fairly easy to use block caching – something built into Magento as standard – to cache the html output of a block and serve from the cache rather than doing lots of heavy processing on an unnecessarily regular basis.
5. Move Hosts
Some times you just have to accept that your hardware or hosting is no up to scratch. A well optimised LAMP stack can out perform an unoptimised standard stack by a surprising degree. Combine that with some choice extensions such as opcode caching etc and the performance difference can be really quite significant – and without any hardware upgrades. If you are running a VPS or dedicated server then it is possible to optimise the stack yourselves, or hire an agency like us to help you with this. Alternatively you can try to move hosts to a more specialist Magento hosting company that will provide this service as standard.
After a bunch of digging around trying to find out how to get my internal SD card reader working in Ubuntu 10.10 I have found this solution:
Looking at dmesg, the error I was getting was this:
mmc0: ADMA error mmc0: error -5 whilst initialising SD card
I found the solution here:
cd /etc/modprobe.d sudo vim sdcardread.conf
[ctrl]+[i] to put vim into insert mode
Now you need to paste this line into the file and save:
options sdhci debug_quirks=0x40
then hit [esc] to exit insert mode, then type
to save the file and quit.
now you need to run these commands
sudo rmmod sdhci_pci sudo rmmod sdhci sudo modprobe sdhci sudo modprobe sdhci_pci
Then if you re insert your SD card and view dmesg, you should no longer see the error message
Looking for a fast and easy text entry system for Android?
I have recently been introduced to Swype as an alternative keyboard for Android. The system involves drawing a line between the letters you want to type as opposed to tapping each letter individually.
This is surprisingly intuitive and the speed possible is massively increased in comparison to the standard keyboard.
Currently freely available as a beta though you wouldn’t know, feels perfectly ready for usage to me.
Check it out for yourself at https://beta.swype.com/android/get/
sudo apt-get install xournal
Good way to get your take-home pay from your hourly, weekly or annual salary figures
Back then the speed of Magento was one of its main drawbacks. Since that time, the code has improved a lot and things have generally got a lot better but one thing that has become clear over the years is that Magento really does require a well optimised hosting platform to perform the best. Conversely, hosting Magento on a badly configured or none optimised hosting stack will have a really detrimental effect on the performance of the store.
If you are using shared hosting then you are a bit stuck. Magento optimised shared hosting is available and there are some good companies out there that we would be happy to recommend for you. If your current store is not performing well though and you are on shared hosting then the likelihood is that the only solution is to either upgrade to some kind of dedicated or virtual private server, commonly shortened to VPS.
A VPS or VDS as they are some times called is what is known as a virtual machine. It is a full instance of an operating system (Linux) running on hardware that is actually running multiple virtual machines from one real server. In some respects this is like shared hosting, however the difference is that on a VPS you have a fully dedicated, private and customisable operating system that can be configured and optimised as required.
Of course if you have a real dedicated server then you have the same benefits of a VPS and also enjoy dedicated hardware.
Either way, as soon as you have a dedicated operating system you are free to configure your database, web server and PHP however you wish. Generally though this is too technical for most people. This is where we come in.
We are happy to provide for you a full VPS or dedicated server Magento optimisation service. Our Magento hosting optimisation service will ensure you are getting the best out of your current hosting package. It means that you are not required to move hosts if you are generally happy them, but you can be assured that you are running on a highly optimised Magento stack.
If that sounds interesting and you would like to discuss this in more detail, simply get in touch today
The for command
The for command is extremely useful for working with a group of files, it can be used with a glob (e.g. “*.jpg”), the output of a command (e.g. grep) or an internal command such as expr. Two examples :-
Combining with imagemagic’s convert command to convert a directory’s png files to jpegs :-
for f in *.png; do echo convert "$f" `basename "$f" .png` .jpg; done
Combining with expr to run a command 8 times :-
for i in `seq 1 8` do echo "hello world $i of 8"; done
cd tricks (and pushd/popd)
One of the most used commands in the unix world, a lot of people don’t know that it actually remembers the last place you were!
ls (should be in / now)
ls (now in /usr)
Takes you to the directory you just changed from – in this case /
Take this to the next level and you get pushd and popd. These two commands maintain a directory “stack” – pushd puts a directory onto the top of the stack and popd pulls it back off the top.
ls (in /)
ls (in /usr)
ls (in /usr/share)
ls (in /)
Also not extremely well known, cd with no arguments takes you to your home directory, the same way cd ~ does
There are so many places that get called on startup of a terminal, that it can be a bit difficult to decide where to put things to be run every time.
There are three types of shells – login, interactive and non-interactive, each calling different startup files.
To borrow from a linuxquestions answer here, an explanation of the differences in where the startup goes :-
On login (subject to the -noprofile option):
if /etc/profile exists, source it.
if ~/.bash_profile exists, source it,
else if ~/.bash_login exists, source it,
else if ~/.profile exists, source it.
if ~/.bash_logout exists, source it.
Non-login interactive shells:
On startup (subject to the -norc and -rcfile options):
if ~/.bashrc exists, source it.
if the environment variable ENV is non-null, expand
it and source the file it names, as if the command
if [ "$ENV" ]; then . $ENV; fi
had been executed, but do not use PATH to search
for the pathname. When not started in Posix mode, bash
looks for BASH_ENV before ENV.
Note that often scp will break if you output anything in certain startup scripts, do check that you can still scp.
Also, if you’re in a gui environment there are other useful startup files, for instance .gnomerc
It is possible to alias a long command to a shorter name as follows :-
alias martyn='su - martyn'
as an example.
type alias on it’s own to see the list of aliases installed on your system (you might be surprised that there are any, and you may use some of them already!).
These can be stored in your startup file (see above to decide which) by using the append to file redirector as follows
echo "alias martyn='su - martyn'" ~/.bashrc
There’s a little-known trick to using the plesk admin user password to access the mysql database that works on many a plesk machine.
Effectively the plesk admin password is stored in /etc/psa/.psa.shadow – in plain text.
This means that the following commands for instance work very well as root :
- mysql -uadmin -p`cat /etc/psa/.psa.shadow`
- mytop -uadmin -p`cat /etc/psa/.psa.shadow` -d[databasename]
- mysqldump –user=admin –password=`cat /etc/psa/.psa.shadow` [databasename] /dev/null
Enjoy automating mysql stuff on your plesk servers!