Skip to main content

Posts

Yahoo! Cross-sell bug

In a recent release, Yahoo! made it possible to show cross-sells right on the product pages. Coupled with their auto-suggest feature (where products are automatically recommended based on past shopping history) this is a great conversion feature. There is, however, a minor bug in the way these on-page cross-sells are implemented. Here is the scoop: As you may know, you can add the yahoo-generated cross-sells to your item pages by inserting <div id="ys_relatedItems"></div> anywhere in your pages' text or template. The bug occurs - in Internet Explorer only - if this ys_relatedItems div is the last child of its parent. In that case, and again, only in Internet Explorer, no cross-sell items will show up on the page. In layman's terms, this means that if you have a closing tag after <div id="ys_relatedItems</div>, then this bug will cause your cross-sells not to show. So, for example, if you have a table and inside it the last element is your ys_...

Choosing your image type is now possible

With a recent feature release, Yahoo! Store finally gave us the option to choose the format in which images are generated on the template-based store editor pages. Previously, unless you displayed an image unaltered (meaning in its original size, and without manipulating it with the RENDER or FUSE operator), the Yahoo! Store editor converted images into GIFs no matter what. What is wrong with that? Well, the GIF format, while small in file size, is best for graphics or clip art, and not for photographic images. The reason lies with the fact that GIF can only display up to 256 colors. With the new release, we can now choose among GIF, JPEG, or PNG. JPEG is generally better for photos, but JPEG uses what is called a "lossy" compression - meaning that in order to reduce file size, the image is compressed by merging like pixels thereby reducing the image quality to varying degrees. PNG is a relatively new format and is generally far superior to both GIF and JPEG. PNG uses "l...

Checkout Manager Problem and temporary solution

If you are using checkout manager, I'm sure you are aware of today's service interruption at Yahoo! Store. Basically, stores that are using the new Checkout Manager have a major capacity issue where customers either have long waits during checkout, or experience timeouts, error messages or other interruptions. While Yahoo's engineers have been working all day to fix the problem, here is a quick temporary solution you can probably apply to your store, if your store is affected: Log into your Store Manager Click on "Checkout Manager" Click on "Disable Checkout Manager". Read the warning and disable it anyway. Back in the "Store Manager", click "Publish" under "Order Settings". Go to the store editor, hit "Variables", click "Update" and publish the store. At this point, your store's checkout will be reverted to the "old" checkout, which still works fine. A couple of notes: If you...

How to create clean and efficient CSS

In a typical workday, I deal with dozens of yahoo stores and very often I have to tweak, fix, or change CSS used by these stores. While some stores have very clean and easy to follow style sheets or CSS definitions, the vast majority of stores I've seen seem to include complete hack jobs, style sheets put together completely haphazardly, or as an afterthought. While working in such a store, the idea came to me to turn my gripes into a post. So the following is my list of dos and don'ts of good CSS or style design. 1. Externalize your style sheets. This means to save your style sheets into one or more css files, and link to them using the <link rel="stylesheet" type="text/css" href="/lib/yourstoreid/yourstyle.css"> notation, or in Editor V3.0, you can use the LINK operator. 2. Combine your style sheets into as few files as possible. Nothing worse than trying to wade through 6, 8, 10 or more different style sheets to find the color of a l...

Speed up the Yahoo! Store editor

In my previous post I wrote about how you can reduce the time it takes to publish your Yahoo! Store; and how that trick does nothing for speeding up the editor itself. To make the editor more responsive, the ONCE operator is not the answer. What you need to do - besides of course optimizing your RTML code to make it more efficient - is to identify and turn off slow pieces of your RTML - but do it only in the editor. As I mentioned in the previous post about speeding up store publishing , one of the most expensive or slowest pieces of RTML code you can have is a site-wide navigation bar, and especially cascading navigation bars, that not only reference the home page and its contents, but all of their contents as well. It is easy enough to turn off any piece of RTML code by using the WHEN operator. You can, for example, create a custom yes-no variable called "in-editor", and then take your existing site navigation and stuff it inside a WHEN @in-editor operator. This will do the...

Faster Yahoo! Store publish

Recently I did a complete redesign in a store. As part of the redesign, I added a hierarchical, DHTML menu navigation bar to the site. In a typical setup, such a navigation bar works like this: use WITH-OBJECT :index to reference the home page, then cycle through the contents field, create a menu label for each page you find there, and for any such page, create a sub-menu if the page also has contents. If you didn't know until now, whenever you reference another object in RTML, such as using WITH-OBJECT or FOR-EACH-OBJECT, such a reference causes a disk lookup on the server. This is what we call an "expensive" operator; it is expensive in terms of processing power and time, so a navigation bar in general, and a hierarchical navigation bar in particular is an "expensive" template. In the store I was working in, they had over 4,000 pages, and of course, each of those pages had the navigation bar on them. So not surprisingly, the time it took to publish this site w...

Using PHP with Yahoo Store

I seem to get this question a lot: can you use PHP with the Yahoo Store catalog? The short answer is unfortunately now. With store-tags you can access the catalog, any item and any property of any item from within an HTML page (running on Yahoo's server), but the same is not true for PHP scripts. Store tags are special tags you can embed inside any HTML page of a yahoo store, and those special tags are then replaced by the server with some referenced property of some item in the store catalog. Although store tags were meant to be used in web hosting Yahoo Stores, they actually do work in the Yahoo Store editor as well! You can easily try it out, pick a store tag (see here for store-tag info: http://help.yahoo.com/help/us/store/tags/ ) and put it in any text field in the editor. While it would be a powerful feature of Yahoo Store to be able to use store-tags in PHP, because currently it is not supported, you are still have to rely on RTML and templates if you want to have more con...