Opencart theme development, in it’s current state is flawed in my opinion. Opencart is a great platform for any type of ecommerce store, having a plethora of features for users and a low entry point for developers. As a result, Opencart has plenty of themes available for download, just take a look on Themeforest. Occassionally, to test out various things out I’ll install such themes locally. More often than not the theme will break the store completely, or render parts of the site completely broken.
9 times out of 10 the issue will be down to the theme developer not sticking to basic Opencart theming guides – they’re very basic to say the least. The main point to note is that Opencart, like other ecommerce platforms, uses a fallback technique on the “default” theme. So, for example, if Opencart doesn’t find a template for a category listing page, it will fallback to the template from the default theme. If the latter is not adhered to, and it isn’t – look at some of the so called “premium” themes out there, it makes upgrading very, very painful. There are theme developers out there that are copying over a files for the sake of it, when no changes are made. If your theme literally only has changed the color/layout of the footer, apart from the default stylesheet folder, image folder and header template you only need the footer.tpl in your theme folder.
Continue reading Opencart Theme Development – My Opinion
If you were looking for an honest Just Search SEO Review …
.. apologies. If you were looking for an honest and impartial Just Search SEO review, this post has now been disabled due to pressure from Just Search, they clearly don’t want honest and truthful seo reviews. Just Search deemed my experience with them as something they don’t want on the Internet – which would be pretty boring place if everyone agreed and no one had an opinion. All the facts contained within the original post were verifiable and based upon upon actual events of my personal experience with Just Search and the SEO they performed (or are still performing) on a small website inherited by myself, for which I perform additional web development. The findings are also all backed up via industry standard tools such as Seomoz’s Opensite explorer and Google Analytics.
Continue reading Just Search SEO Review
CodeIgniter’s validation library is amazing out of the box and will save any developer an absolute ton of time. However, as CodeIgniter is an MVC framework it’s validation library does encourage data validation directly in controllers – which of course for the “MVC Nazis” out there is against strict MVC principals. So, data validation should strictly happen at the model layer, not in the controller. Moving data validation to the model has a few benefits – it allows your application to follow to coveted “Fat Model, Skinny Controller” pattern and allows you to validate other data types (not just posted data). Again, you can technically keep things neat by saving your validation rules to a config file and keeping validation in the controller, but that still breaks the MVC principals.
Continue reading Validate Data within A Model using CodeIgniter and MY_Model
There are a plethora of reasons to use a good base model (also called CRUD Model, MY-Model) for all your CRUD operations in a CodeIgniter (or any) application. Amongst many, a base model will boostrap all models it extends, keep your application as “DRY” as possible and speed up general development. Codeigniter has a pretty neat active record implementation, but you do tend to repeat a lot of the boring database stuff when writing models. In my opinion, you’d be insane not to use a good base model. There are many out there, but I use the amazing base model from Jamie Rumblelow (it deserves and SEO Link before you ask!).
Continue reading Why Codeigniter Base Models Rock
It’s been fairly common news for a while now that the age old Yell.com offer web design services, or “Yellsites” as some have coined it. There’s been a lot written about this fact, with some people citing lots of reasons why Yell websites are evil. There also a fairly in depth post that goes on to actually explain why the author dislikes yell.com websites over here. Additionally, there is also a big pool of annoyed people over at the infamous reviewcentre.
Personally, I think their sites will never set the world on fire, but at the end of the day Yell are tapping into a certain and very specific niche where the majority of their clients are very small businesses. It’s truly a case of you get what you pay for (even if a Yell.com website will cost you more overtime, which is what I assume is key Yell’s business model). For me, it’s great really, as seem to have lots of clients who currently have a Yell site, realise their site isn’t performing for them and want to move on – in I (or any other web person) step. Yell are clearly going down the bulk route with their sites being mass produced and based upon templates – at the end of the day they aren’t charging bespoke prices (in the short term anyway). I say fair play to them if they want to go down that route. This post isn’t in any way intended to knock Yell.com websites in the least. Although I’m not a fan of their apparent sales patter I keep hearing about where Yellsites say they have a special partnership with Google” or the “Did you know Yell.com is the most searched UK website” – for the record, both of those statements are frankly lies and total rubbish.
Continue reading Yell Websites and Template Recycling – A Review
Lately, spam from Indian website and SEO companies has been pretty bad for me. I’m not sure what has happened, but over the last 3-4 months it’s increased ten fold – the BBC article on India becoming the World’s leading spammers really doesn’t surprise one bit. I do get spam occasionally from other countries, but India is by far the worst offender for me. I don;t have anything all against other companies trying to grow, but Indian SEO companies are doing this the wrong way. So, just for their record to all the (now human) spammers sitting in India – “I don’t want your link building or seo services and certainly won’t be taking anyone seriously who initiates contact from a gmail account”.
I’ve tried a lot with Indian spammers. Submitting their MX records to various sites in the hope of getting their mail server blacklisted, replying tell them to “feck off”, reporting them to their hosts and even ignoring the said messages. Yes, ignoring the message doesn’t work nowadays as I’ll still get a follow up email asking me “I will revert all my web development to India”. Any emails I do reply to they never acknowledge or (I guess) respect. Nothing works!
Continue reading SEO Spam From India
I’ve come across an endless list of IE6 hacks and apparent fixes for the one browser that still causes many issues. This on is my favourite:
<!--[if IE 6]>
<meta http-equiv="refresh" content="0; url=http://www.microsoft.com/windows/internet-explorer/default.aspx" />
/* <![CDATA[ */ window.top.location = 'http://www.microsoft.com/windows/internet-explorer/default.aspx'; /* ]]> */
Drastic, yet very epic and takes seconds to implement. Solves all your IE6 problems 🙂
After reading an article about OOCSS (Object Oriented CSS) I was left a little numb and confused to be honest. I’d advise you read the full article before reading what follows.
The idea is fairly simple – write your CSS using a “bottom up” approach, as opposed to a “top down” approach, treating your elements as “objects”, using mainly classes, as opposed to IDs. The idea of this is to make classes more reusable and to encourage a greater css granularity architecture. The overall theory behind OOCSS is something I don’t dispute in the least, if anything it’s simply good practice when writing a CSS file.
For me, the whole article borders on the pedantic to the outright pretentious.
Firstly, I’m not a fan of the name. “OOCSS” implies a link to OOP (Object Orientated Programming), which it is not. I can see why they’ve named it OOCSS as I guess multiple classes could be similar to inheritance, an element on your page as an “object”, classes imply reusability etc. As a web developer, who uses OOP I was instantly put on the defensive, thinking “OOP for CSS, wtf”. I understand the name is simply a paradigm, but it sends out all the wrong signals for me personally.
Apologies if this article turns into a bit of a rant…..
Continue reading Object Oriented CSS (OOCSS) – My View
To date this year, I have inherited several Magento stores to perform web updates on. I thought I’d write a small post on my experience and thoughts in using the system and how that system translates to real world, non technical clients.
As a bit of background, I’m by no means a fully fledged Magento developer in the least. After a few hours of experimenting I managed to get a template based upon my design, up and running.
It’s common knowledge that Magento is touted as the best thing since sliced bread – you constantly see companies selling the (what I call), “Magento experience”. Sales based pitches such as “you’ll never need to upgrade again”, “Magento can do everything out of the box” and “Magento will infinitely scale with your business” are very common from web companies. The latter does not apply to all businesses in my experience. To illustrate, I’ll use the example of a client who came to me in despair at their current web company and Magento based website – I won’t be using any real names.
Continue reading Magento as an ECommerce Platform – A Case Study
By default, when installing CodeIgniter (CI), all the important files i.e. all files withing the application and systems folders are installed within the main web directory, that is visible to anyone. This is fine to an extent because all folders have a htaccess file that denys all incoming requests. The CodeIgniter developers did this intentionally to make things easy for people trying the framework out.
However, a much more secure method is to store the application and systems folders within the server webroot. This location is not directly accessible and helps with all around application security. Personally, I feel a lot safer knowing core files are not directly accessible. The latter is doubly as important when using a well known PHP framework, as anyone has a starting point to figure out your folder structure, simply by downloading the framework.
Here is how a typical CodeIgniter install looks on a production server:
Continue reading How to Install CodeIgniter Within the Web Root