EU Cookie Law Clarification

On May 26th the UK implemented the EU Cookie Directive. Only hours before it became law did the Information Commissioner’s Office (ICO) clarify what website owners were expected to do about cookies!

After many scare stories about getting users to opt-in for almost every type of cookie, and of massive fines for non-compliance, this latest clarification essentially seems to say the following: we can assume “implied consent” for most “non tracking” cookies. That is, if you have a shopping cart or use Google Analytics, etc, you can cover yourself by having appropriate statements in your terms and conditions. This is how Amazon.co.uk appear to have handled the issue.

So, crisis over? Well, I’m not a lawyer, so your mileage may vary!

Writing a web design brief

If you are in the market for a new website, the chances are you’ll be confronted with the task of writing a web design brief. If so, here’s a fairly comprehensive web design brief template (or RFP) that you can use.

But why should you bother with a web design brief? Can’t you just sit down and talk it through with your web developer? Yes, you could, if you already have one. However, the web design brief serves several key purposes:

  1. it helps you choose a web developer
  2. it helps clarify what you want
  3. it provides a benchmark to measure success.

There’s the old truism, ‘fail to plan and you plan to fail’, and your website is really no different. Writing a web brief means you have to give serious consideration to

  • what you want to achieve
  • and how you’re going to achieve it.

So, in the brief you state what it is you want to achieve (increased visitors, increased sales, etc) and you also outline how this will be achieved (more optimised website, improved checkout process, etc). This tells the prospective web designer the what and the how.

When you’re writing the web design brief you should attempt to strip away all the buzz words and ‘domain speak’ in order to reach a zen like clarity with regards to what you want your website to achieve. This clarity will also help your web developer (or prospective developer) get to the kernel of your ambition. Finally, you will also have a benchmark against which to measure success 6 or 12 months down the line.

So, if you’re objective is to increase the number of visitors, then state how many you currently receive and also your desired number (remembering to be realistic). In 6 months’ time, you’ll be able to gauge the success or not of your new design. You should also then be in a position to figure out why this or that has or hasn’t worked.

Its simples really, but the more you invest in the up front stage of your web design project, the greater the return on your investment will be later on – and hopefully the fewer surprises you encounter along the way.

Magento, enable cookies & Google Analytics

I’ve just started work on a search engine optimisation campaign for a new client. They have a Magento shop, that’s been running for just over two years, and they’re obviously looking to improve its performance.

Before I start such a campaign, I first take some time analysing the market, etc, but also looking at the website itself, particularly at the conversion process and conversion rates. Its a simple question really, why send extra visitors to a website if they’re not going to convert into customers once they’re there?

The first step then is to look at the site’s Google Analytics (you are using Google Analytics, right?). What was clear is that nearly a third of the shop’s buyers were being confronted with the Magento default “enable cookies” page when checking out. I found this out by looking at the Ecommerce Product Performance report & using the “Landing Page” Secondary Dimension filter.

Landing Pages Filter, Google AnalyticsThis report shows what page the user was on immediately before they enter the checkout sales funnel. In this instance, an unacceptably large number (ie, greater than none!) were being told that they had to enable cookies in their browser and were then confronted with how to do so (“in Internet Explorer, go to Tools …..”, etc).

The cause of this issue was a poorly configured Magento shop – setting the correct cookie path & cookie domain is all that was required to overcome this issue.

This is a classic example of the need to thoroughly audit any web property before embarking upon a search engine optimisation campaign. There’s no point sending lots more traffic to a website that’s not optimised for conversion. Its also a good example of the worth of a good analytics software – without it we would not have known that so many users were being told to mess with their browser’s cookie settings.

Magento Server 500 Error

Yesterday a Magento shop owner contacted me because his shop was returning a “500 Server Error” page. Their web designer was at a loss to figure out what was going on, so the owner turned to me.

One of the main reasons for this error are file/directory permissions errors, often encountered when installing or upgrading Magento. A quick check revealed that this wasn’t the issue.

Taking a look at the configuration, I noticed that logging was turned on. So I looked at the log files, & exception.log was over 2.5 gb in size. Just turning logging off was enough to remove the server error. So, it seems Magento couldn’t write to the file any longer because of its sheer size.

So there’s something to look out for if you encounter an puzzling 500 error. Quite why the exception file was so big is another question!

If you’re looking for a midlands magento specialist, why not get in touch?

Why I won’t buy HP Ever Again – Period!

Today I had such an exasperating and annoying experience with Hewlett Packard’s UK customer support, that I’ve come to the conclusion that I’ll never buy another HP product again.

The Backstory.

14 months ago I bought an Acer Aspire laptop from what I thought was an authorised online Acer outlet. We’d had some issues with the laptop & the customer service was poor.  I resolved  in future only to buy direct from the manufacturer if possible.

A week ago the hard drive failed & replacing it was uneconomic. So, the search was on for a replacement.

Enter Hewlett Packard

We choose a HP Pavilion DV6 laptop from the official UK HP online store. At £550 it was £150 dearer than the original Acer but I thought that buying it direct from HP would at least mean it was kosher & customer support would be good.

On receiving the laptop everything looked good. Indeed, it worked well. Then I spotted that one of the screen screws was missing. Usually these are covered by a rubber plug, but  both the plugs had been removed and a residue of glue was left in each screw recess.

The only reason to remove these plugs is to access the screws to remove the screen in order to effect a repair. Why would a brand new laptop, sold as new, have these screws missing unless it was a refurbed laptop?

HP Customer (Dis)Service

So, I called HP customer support today. I was routed through to technical support, & there spoke to a chap called Dave. On checking the serial number, he asked how long I’d had the laptop. 2 days I reported. Well, that’s strange he said, since the warranty on this machine was already 60 days old. Nor could he remove the rubber plugs on his Pavilion laptop without a screw driver – so somebody had deliberately removed these on my laptop & then forgotten to replace the screw or the original rubber plugs.

That sounds like this machine has been sold once and returned for repair I said. Could be replied Dave, since he could think of no other reason why the screw plugs had been removed and the warranty was more than 2 days old.

So, HP appears to have sold me a return/refurb as a brand new computer, without all the parts (1 screw and 2 rubber plugs, and a shortened warranty). Doesn’t that constitute a breach of contract & various consumer protection laws?

‘Errr’, said Dave as I was then sent back to the complaints department. Here Cheryl (who refused to give her surname due to ‘Data Protection’ – even tho’ they have my name, address, phone number & email address!) raised my complaint & routed me thro’ to another department to hear my rant.

Now Monica listened as I ranted but said they would only send me a replacement laptop after they had collected the original. So you can’t guarantee I’ll be without a laptop for a time. No sir, that’s our procedure. Not in this instance it isn’t said I. You’ve tried to screw me over & now you expect me to be without my laptop while you get your arse into gear.

Well, you could have a refund, retorted Monica. Anyway, back to customer complaints go I, in an attempt to escalate my complaint. At no point would any member of the HP customer service teams agree to escalate this complaint, nor would they pass me onto a line manager or supervisor. Eventually, after more than an hour on the phone, they agreed to get a manager to call me within 2 hours to discuss my complaint.

Needless to say, the call never came. So we called Cheryl again and eventually were passed onto her team manager Dean. He flatly refused to countenance that HP had done anything incorrect. The warranty was apparently from the date of manufacture – Dave in technical support had got it wrong – and the missing screw and rubber plugs was merely a quality control issue. On neither grounds had HP done anything wrong and were certainly not going to talk about compensation, etc, etc.

Goodbye HP

So, I’m now sending my HP Pavilion DV6 laptop back & I’m never buying HP again. Perhaps I’ll bite the bullet & buy another Mac – at least they know how to do customer service (& at least they’re open about selling refurbed kit)

Update

After asking for a refund, HP managed to send me a replacement laptop! Monica sent an email apologising & told me to just refuse delivery. Once it had returned to base, they would initiate a refund, she wrote. So, I refused delivery of the laptop only for City Link to redeliver it the following day – it was accepted as I was expecting delivery of a Dell laptop that day.

Guess what? On opening the plastic wrapping, I noticed that the seal on the laptop case had been opened, & the box itself had been ripped. It had been ripped in the way that happens when someone is over eager in opening the flaps. Surely HP wouldn’t send me a return or refurbished laptop as a replacement? My suspicion is that they did, but I can’t prove this.

When my new Dell laptop was delivered, it was obvious that this packaging had not been opened before – the seal was intact & the box undamaged, just as you would expect when buying brand new goods. This alone confirms my decision never to buy from Hewlett Packard again.

 

Leicester Joomla Website Design

Today we launched a new website for a longstanding client, Stanhope House Day Nursery, Leicester.

Built using the popular open source Joomla! content management system, the website includes a forum for parents, a front page image gallery and image popups to maximise screen space.

Now their website uses a content management system, nursery staff will now be able to use the website as one of the main communication channels with existing and prospective parents.

Magento – changing the body class by category

Magento updates the body class declaration on almost every page. If you look at the source code, the body class varies according to where you are on the website. This can be very useful if you wish to style different pages.

However, I was asked to produce different body backgrounds depending on the category the user was viewing. By default Magento adds body classes for categories based on the category name. So, you get something like the following for a parent category (caravan-motorhome-lighting):

<body class=” catalog-category-view categorypath-caravan-motorhome-lighting-html category-caravan-motorhome-lighting”>

and the following for a child category (mr16-leds):

<body class=” catalog-category-view categorypath-caravan-motorhome-lighting-mr16-leds-html category-mr16-leds”>

This makes styling a parent category & its child categories very difficult – since the class attributes change every time the user navigates to a child category. What was needed was a way of assigning a single class to a parent category and its children – say, ‘caravan-motorhome-lighting’.

I looked around for a solution but didn’t want to go to the bother of overriding any Mage classes, nor could I figure out how to achieve this using Magento’s layout.xml files. Then I thought about what category parameters or attributes I could add from the Admin ‘Manage Categories’ interface. This is when I lucked on the solution.

Within the Category ‘Custom Design’ is the ability to inherit or override the ‘Parent Category Settings’.  If this is set to ‘No’, you can then apply a ‘Custom Layout Update’ – which is essentially an xml snippet of the kind usually found in Magento’s layout.xml files.

By adding the following:

<reference name=”root”><action method=”addBodyClass”><className>caravan-motorhome-lighting</className></action></reference>

to the parent category, and then making each child category inherit or ‘Use Parent Category Settings’, I get the body class ‘caravan-motorhome-lighting’ added to every category/sub-category page for that category & its children.

magento layout update

Here we have set this parent category not to ‘Use Parent Category Settings’ & have added the layout update.

magento body class layout update

Now we set the sub category to ‘Use Parent Category Settings’, & it therefore gets the same body class attribute as its parent category.

The net result is now that parent and child categories share the same body class & I can then set a common background image for all of them to share. So the parent has this body class declaration:

<body class=” catalog-category-view caravan-motorhome-lighting categorypath-caravan-motorhome-lighting-htmlcaravan-motorhome-lighting”>

while its child categories have the following:

<body class=” catalog-category-view caravan-motorhome-lighting categorypath-caravan-motorhome-lighting-mr16-leds-html category-mr16-leds”>

So that both parent and child categories share a common class attribute of ‘caravan-motorhome-lighting’. Meaning I can style all these categories in the same way, while adding different background images for other categories.

You can see the technique in operation at the Aten Lighting website. If you looking for a Leicestershire magento developer, please get in contact.

Brand Reputation Management – EpiServer Fails

Online brand reputation management can be perilous & the internet is littered with failures and own goals. Here’s a recent example.

Swedish Drupal specialists NodeOne recently ran a banner campaign advertising the benefits of using Drupal over several proprietary CMS offerings. One of those compared, EpiServer, responded with a “cease and desist” letter from their lawyers, claiming that the comparison was misleading and calling on NodeOne to stop their advertising campaign. NodeOne took legal advice & then responded by publishing EpiServer’s letter (& helpfully an English translation).

EpiServer, regardless of the merits or otherwise of NodeOne’s comparison, scored several own goals by resorting to their lawyers. The appear arrogant, bullying and defensive – the perception is that they have something to hide, that NodeOne have touched a nerve. What was once a local Swedish issue is now an international one, thanks to NodeOne releasing English translations of EpiServer’s legal response.

EpiServer are now brand firefighting – they turned a product comparison into a brand defence, which is harder for people to forget. Their head of European Marketing even resorted to defending their position on NodeOne’s website – which smacks of desperation and only served to enhance NodeOne’s position as defender of free speech against an over mighty corporation.

Its a big bad world out there and companies are right to seek to protect their brand, but resorting to lawyers is rarely the best thing to do online, even when legally you may be correct. Online you have few controls over what happens and the story can spiral out of your control very quickly and messily. You have to be subtle in your responses – lawyers are not noted for their subtlety.

Skip Hire Leicester

Leicester skip hire home pageLeicester Skips, which promotes the Leicestershire skip hire service provided by Bakers Waste Services, has just launched.

Designed and developed by Leicester web design company Fresh Web Services, this Joomla! powered website has been designed to conform to existing branding and styles. The website also adheres to a ‘conversion led design’ approach, meaning that it is optimised for conversion – at every stage users are gently encouraged to either make contact or complete an online skip order form.

Stupid css error!

Recently I was working on a Magento 1.5 project, customising a theme. On the front page the client wanted repeating rows of images to link through to the shop’s categories. I did this using Magento’s “widget” links, and then used css to style background images.

Within the css I used “sprites” to control the rollover state of the image. The css I used to style this effect is below.

a#yarns{background: url(../images/main-clickthroughs-wool.jpg)0px 0px no-repeat; min-height: 126px; width:232px; position: relative;}

a#yarns:hover{background: url(../images/main-clickthroughs-wool.jpg) -232px no-repeat; height: 126px;width:232px;color:#333333; }

While testing using Firefox & Chrome, all was well. Wrapping up I switched to testing IE7 & suddenly I had no category images on the home page! If I hovered I would see the hover image, but not the default background image.

After googling I found the problem – there should be a gap or space between the “)” and the next value, “0” in this instance. So the code should read as follows:

a#yarns{background: url(../images/main-clickthroughs-wool.jpg) 0px 0px no-repeat; min-height: 126px; width:232px; position: relative;}

a#yarns:hover{background: url(../images/main-clickthroughs-wool.jpg) -232px no-repeat; height: 126px;width:232px;color:#333333; }

It seems Firefox & Chrome are more tolerant but Internet Explorer isn’t. So, something to note for future reference!