Skip to main content

Avoid bad HTML

As you may know, you can easily put HTML tags in your editor fields, such as the caption field, or the message field on the home page, or even in the head-tags variable, etc. I always encourage my clients to feel free to use some minimal formatting they may want to include in these fields, because doing so is relatively easy and really shouldn't require hiring a professional to do so. I always tell them also, to be careful with the HTML they put in those fields, and DO hire a professional if they find the need to add more complex HTML - for example, beyond just bolding words, or emphasizing phrases, etc. However, I keep coming across stores where merchant-edited HTML nearly bring the store to its knees. Yes, that actually can be done! Why? Because web pages - therefore Yahoo Store pages - are made up of HTML tags, so if you throw a wrench in there, expect things to break....

Adding simple formatting is harmless. You can easily bold words, change the appearance of fonts, etc. It becomes a problem when the merchant believes that throwing a bunch of random HTML code in a variable will somehow come out correct - and if it seems visually Ok, then they assume they did it right. Here is a partial list of problems I see often:

Unclosed Tags
This is probably the most common mistake I see. They start bolding something with a < b > tag, and forget to close it. In this case, it will just end up bolding most everything on the page starting at the opening < b > tag. But, things can get worse. If you include a tag that actually affects layout, for example an opening < div > tag or < table > tag, that stray tag can potentially break your page's layout completely. And, taking it a step further, if you open a < style > or < script > tag, but don't close them, the page may stop rendering completely (i.e. come up blank.)

Closed tags without opening
This is sort of the opposite of the previous mistake. When you throw in a closing tag without first opening it, you will most likely completely break the layout of your page(s).

Mismatched tags
This is a combination of the previous two. Sometimes people throw in opening tags and closing tags at random, and in random order. If each of your opening tags have closing counterparts but in the wrong order, chances are most modern browsers will figure out what to do, but why make the browser's work miserable? Follow this easy rule of thumb: if you open a tag, such as < b >, when you are done with it, close it. That's really it.

Including main document tags such as < html >, < head > , or < body >
These are not only not necessary because the Yahoo Store templates already put these in the code, they can also break the pages, break JavaScript code, and in extreme cases these extra tags may even cause the search engines to mis-read your pages and not index them correctly.

So if you wanted to write a post-it note for yourself with the most important rules of adding html to your caption fields, write these:

  • If you open an HTML tag, always close it, and in reverse order.
  • Never use these tags in your store editor fields: < head >, < /head >, < body >, < /body >, < html > and < / html >

Comments

Popular posts from this blog

What to expect when your redesign goes live

At Y-Times we roll out new designs, redesigns and other major upgrades to Yahoo stores on a fairly regular basis. Some of the main questions our clients ask are how to prepare for a roll-out and what to expect in terms of SEO and conversions when the changes go live? For any functional Yahoo store how well the site ranks and how well it converts are probably the two most important metrics. Since pretty much ANY change you make to any page can potentially alter either or both of these metrics, merchants may understandably feel nervous about far reaching alterations to their sites. However, when those functionality and design changes and additions are done right, there is really very little to fear. First off, what does it mean for a design or redesign to be "done right?" From the technical stand point, search engines look at the underlying structure of your site (the HTML, and increasingly also the CSS and JavaScript code) to try to extract information and meaning from i

CPR for a Yahoo Store on Google's Supplemental Index

Recently a client of mine came to me and said that most of his store pages disappeared from Google, and he did not do anything to make this happen. I was a bit skeptical, so I went to Google, did a search on his store, and sure enough, there were only two pages indexed, his home page and his site map (ind.html) page. The rest were in the supplemental results, which means that Google thought the rest of the pages were not much different than these two pages. When I looked at the supplemental results, the little excerpts under each link were exactly the same, and I also noticed that what Google showed under each result was actually text from the ALT tags of the header image. I looked at some of these pages in my client's store, and they were actually different. This was a bit puzzling, but then I thought perhaps Google saw that the header and left navigation was the same throughout the site (which is pretty normal), but that the text that made each page different was too far down ins

Auto-update Copyright Year

This is one of those minor, recurring questions I'm always asked (each year): to update the copyright year in sites. Whether this is the "right thing" to do or not I don't know, but here is how you can make it automatic: First, go to the Variables page (these instructions are for Yahoo! Stores), and do a search for the word "copyright" or the year that's currently displayed next to your copyright message. If you can't find it there, chances are you have a custom template and the copyright message might be coming from some place else. In that case, you'll have to track it down, but because custom templates can be set up in any which way, unfortunately you'll be on your own. Assuming you found it, replace the year with this JavaScript code: <script>document.write(new Date().getFullYear())</script> Hit Update and you should be all set!