<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>shopify Archives &#8212; Stampede: the strategic design &amp; technology company</title>
	<atom:link href="https://stampede-design.com/blog/tag/shopify/feed/" rel="self" type="application/rss+xml" />
	<link>https://stampede-design.com/blog/tag/shopify/</link>
	<description>We are creating better worlds though thoughtful design and technology. Connect with us!</description>
	<lastBuildDate>Tue, 07 Apr 2026 09:04:55 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>

<image>
	<url>https://stampede-design.com/wp-content/uploads/2024/02/cropped-Stampede-Favicon-old-32x32.png</url>
	<title>shopify Archives &#8212; Stampede: the strategic design &amp; technology company</title>
	<link>https://stampede-design.com/blog/tag/shopify/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Showing Selected Product Variant Image in Shopify Product Slideshow</title>
		<link>https://stampede-design.com/blog/showing-selected-product-variant-image-in-shopify-product-slideshow/</link>
					<comments>https://stampede-design.com/blog/showing-selected-product-variant-image-in-shopify-product-slideshow/#comments</comments>
		
		<dc:creator><![CDATA[Shaiful Borhan]]></dc:creator>
		<pubDate>Sat, 04 Jul 2015 16:46:08 +0000</pubDate>
				<category><![CDATA[Field Notes]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[front-end development]]></category>
		<category><![CDATA[shopify]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[ui]]></category>
		<guid isPermaLink="false">http://dev.stampedelabs.com/client/v3/wp/?p=6275</guid>

					<description><![CDATA[<p>Believe it or not, some little features on product slideshows would make all the big difference to your sales. Shaiful shows how to customise the slideshow in Shopify.</p>
<p>The post <a href="https://stampede-design.com/blog/showing-selected-product-variant-image-in-shopify-product-slideshow/">Showing Selected Product Variant Image in Shopify Product Slideshow</a> appeared first on <a href="https://stampede-design.com">Stampede: the strategic design &amp; technology company</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="lead" class="lead">Product slideshows are indispensable when it comes to e-commerce websites. One little feature that we usually see on product slideshows is the ability to switch images based on the selection of product options such as colors. It&#8217;s a little feature that makes a difference!</p>
<div class="full"><img decoding="async" class="wp-image-6899 size-full" src="https://stampede-design.com/wp-content/uploads/2015/07/product-slideshow1.gif" alt="product-slideshow" /><p class="capt_block">A staple feature of e-commerce websites.</p></div>
<p>In Shopify, this feature may already comes standard with most of the themes or in an updated version of the current theme you are using, which is great. However in some cases you could be using a heavily customized theme and updating is not going to be a breeze, well, all you need is just a couple of lines of codes and you got yourself an upgraded product slideshow.</p>
<h2>The Code</h2>
<p>Paste the code below into the bottom of either template file product.liquid or snippet file product-form.liquid.</p>
<pre class="brush: jscript; title: ; notranslate">

{% if product.variants.size &gt; 1 %}
&lt;script&gt;
(function($) {
  var variantImages = {},
    thumbnails,
    variant,
    variantImage,
    variantImage_count = 0;
  	//produce mapping between variant image and options
    {% for variant in product.variants %}
       variant = {{ variant | json }};
       if ( typeof variant.featured_image !== 'undefined' &amp;&amp; variant.featured_image !== null ) {
         variantImage =  variant.featured_image.src.split('?')&#x5B;0].replace(/http(s)?:/,'');
         variantImages&#x5B;variantImage] = variantImages&#x5B;variantImage] || {};
         {% for option in product.options %}
           {% assign option_value = variant.options&#x5B;forloop.index0] %}
           {% assign option_key = 'option-' | append: forloop.index0 %}
           if (typeof variantImages&#x5B;variantImage]&#x5B;{{ option_key | json }}] === 'undefined') {
             variantImages&#x5B;variantImage]&#x5B;{{ option_key | json }}] = {{ option_value | json }};
           }
           else {
             var oldValue = variantImages&#x5B;variantImage]&#x5B;{{ option_key | json }}];
             if ( oldValue !== null &amp;&amp; oldValue !== {{ option_value | json }} )  {
               variantImages&#x5B;variantImage]&#x5B;{{ option_key | json }}] = null;
             }
           }
         {% endfor %}
         variantImage_count++;
   	   }
    {% endfor %}

    $(function() {

      if (variantImage_count &gt; 0) {
        $('select.single-option-selector').change(function() {
          var selected_color = $(this).val();
          thumbnails = $('.flex-control-thumbs img').each(function(index, el) {
            var image = $(el).attr('src').split('?')&#x5B;0].replace(/(_thumb\.)|(_small\.)|(_compact\.)|(_medium\.)|(_large\.)|(_grande\.)/,'.');
            if (typeof variantImages&#x5B;image] !== 'undefined') {
              if(selected_color == variantImages&#x5B;image]&#x5B;'option-0']) {
                //only check against the first option &#x5B;'option-0'], which is Color (in my case)
              	$('.flexslider').flexslider(index);
              }
            }
		      });
        });
      }

    });
})(jQuery);
&lt;/script&gt;
{% endif %}

</pre>
<p>The code is a combination of Liquid template tags and JS. It is based on the customization provided by Shopify for <a href="https://docs.shopify.com/manual/configuration/store-customization/page-specific/product-page/make-image-change-variant" target="_blank">enabling customers to select a product variant by clicking its image</a> and modified to work the other way around.</p>
<p>Line 10-30 produces the mapping between variants image and options in a JSON object that is used for comparison against the product thumbnails in the select box event handler function as seen in line 35-46. Line 42 is the actual code that tells the slideshow to jump to a specific slide. As you might have guessed, the code is unique to <a href="http://www.woothemes.com/flexslider/" target="_blank">Flexslider</a> slideshow plugin. You need to determine what slideshow plugin you are using and then figure out how to jump to a specific slide using its API.</p>
<p>I hope you find this guide useful. If you have questions/feedback, let me know in the comments.</p>
<p>Have a nice day!</p>
<p>The post <a href="https://stampede-design.com/blog/showing-selected-product-variant-image-in-shopify-product-slideshow/">Showing Selected Product Variant Image in Shopify Product Slideshow</a> appeared first on <a href="https://stampede-design.com">Stampede: the strategic design &amp; technology company</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://stampede-design.com/blog/showing-selected-product-variant-image-in-shopify-product-slideshow/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Customizing BigCommerce and Shopify</title>
		<link>https://stampede-design.com/blog/experience-customizing-bigcommerce-and-shopify/</link>
					<comments>https://stampede-design.com/blog/experience-customizing-bigcommerce-and-shopify/#comments</comments>
		
		<dc:creator><![CDATA[Shaiful Borhan]]></dc:creator>
		<pubDate>Thu, 27 Jun 2013 21:17:25 +0000</pubDate>
				<category><![CDATA[Field Notes]]></category>
		<category><![CDATA[bigcommerce]]></category>
		<category><![CDATA[customisation]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[front-end development]]></category>
		<category><![CDATA[shopify]]></category>
		<guid isPermaLink="false">https://stampede-design.com/blog/?p=4263</guid>

					<description><![CDATA[<p>With the abundance of Saas (Software as a Service) e-Commerce services, it must be hard to pick one for your business. Here Shaiful helps you to decide between two of his favourite ones.</p>
<p>The post <a href="https://stampede-design.com/blog/experience-customizing-bigcommerce-and-shopify/">Customizing BigCommerce and Shopify</a> appeared first on <a href="https://stampede-design.com">Stampede: the strategic design &amp; technology company</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="lead">BigCommerce and Shopify are probably two of the most well-known SaaS (Software as a Service) e-commerce solutions out there today. The main selling point of these services is they make it quick for sellers to have their stores up and running. Anyway I&#8217;m not going talk about the features they have to offer. To be specific, I&#8217;m going to share my experience working with both platforms from the perspective of template customization.</p>
<div class="full"><img decoding="async" class="alignnone" src="https://stampede-design.com/wp-content/uploads/2018/02/Fotor06272207191.jpg" /></div>
<p>Real quick, both services offer a wide array of base themes to get user started. It&#8217;s also worth mentioning that half of the themes on Shopify are premium themes.</p>
<h2>The Common Traits</h2>
<p>Both platforms use a system where the template HTML files are organized into views such as layout or snippets. They use different naming conventions but the general idea is layouts are the skeleton of the whole page and snippets are the bits of content loaded into the page. For example, a layout file could be for homepage or product category page, while a snippet is another file controlling the product loop that can be called from both layout files. Each platform has its own syntax for invoking these files and user can add new layouts and snippets. This system makes it easy to reuse repetitive codes and keeping your code tidy. Making little modifications like adding an FB Like box or a Mailchimp signup form is a piece of cake.</p>
<p>Both platforms also has a built-in HTLM/CSS code editor with basic key features such as a file browser and list of recently opened file. However, the BigCommerce editor has an extra handy feature which lists all the files dependent to the currently viewed file for quick access.</p>
<p>Now we shall compare them.</p>
<h2>BigCommerce (BC) vs Shopify</h2>
<p>Before we go any further, let me just break the news that Shopify hit a home run with this one. The winning formula is Shopify themes are made to be customized in the first place. Two key features that stood out are Theme Settings extension and Liquid programming language.</p>
<p>Theme Settings extension is fairly interesting. It allows the theme developer to tweak the settings or configuration fields of any themes. As an example, if the shop owner decided he needs to use an alternative logo when the website is viewed on a mobile phone, the theme developer can simply add a new upload field into the settings page in addition to the default logo upload field. The new variable will automatically be accessible in the template and the alternative logo can be output and controlled using CSS.</p>
<p>While BC templates only contain static calls to other template files, Shopify has its own template programming language called <a href="http://docs.shopify.com/themes/liquid-basics/index" target="_blank">Liquid</a>. Liquid comes with basic programming functions such as variables assignments, for-loops, conditional statements as well as a handful of cool helper functions. The code can be used both in HTML and CSS files. Here is a very nice <a href="http://cheat.markdunkley.com/" target="_blank">cheat sheet</a>.</p>
<p>With Liquid, a certain degree of logic can be implemented into the template such as giving different CSS class to elements based on the page currently in view. A little more advanced example is using product tags to put ribbon/sash on products in category pages. In my recent project, I tagged products with <em>bestseller</em> and used the following code to produce a Bestseller sash. While this can be implemented in BC using clever Javacsript tricks, I found that the tags system in BC to be a bit limited.</p>
<pre class="brush: xml; title: ; notranslate">
{% for mytag in product.tags %}
   {% if mytag == 'bestseller' %} 
      &lt;span class=&quot;circle sd-bestseller&quot;&gt;Bestseller&lt;/span&gt;
   {% endif %}
{% endfor %}
</pre>
<div class="full"><img fetchpriority="high" decoding="async" width="655" height="259" src="https://stampede-design.com/wp-content/uploads/2013/06/28-6-2013-12-20-53-AM.jpg" alt="Custom Bestseller product sash. On Sale was built-in." class="size-full wp-image-4268" srcset="https://stampede-design.com/wp-content/uploads/2013/06/28-6-2013-12-20-53-AM.jpg 655w, https://stampede-design.com/wp-content/uploads/2013/06/28-6-2013-12-20-53-AM-300x119.jpg 300w" sizes="(max-width: 655px) 100vw, 655px" /><p class="capt_block">Custom Bestseller product sash. On Sale was built-in.</p></div>
<p>The next thing I love about Shopify is the dedicated manager for Menus or Navigation in the admin panel. Admins can create as many menu groups as they like in addition to the default Main Menu. Then simply use the Liquid for-loop in the appropriate template file to render the menu (also in any way they like). This is how it looks in its simplest form. Of course, with a little bit more code you can also highlight the active menu item.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;ul&gt;
   {% for link in linklists&#x5B;'footermenu1'].links %}
      &lt;li&gt;&lt;a href=&quot;{{ link.url }}&quot;&gt;{{ link.title }}&lt;/a&gt;&lt;/li&gt;
   {% endfor %}
&lt;/ul&gt;
</pre>
<p>Once the menu structures are implemented in the template this way, it will be very easy for store admins to add or remove menu links without having to alter the template file directly.</p>
<p>Another feature that works very well with the menu manager is Smart Collection. A collection is Shopify&#8217;s way of saying category. A smart collection is somewhat a dynamic category where products are automatically assigned based on the rules defined to the category for example, if a product has a specific tag or if it falls between a specific price range. A menu can be made to link to the smart collection which gives a &#8220;product filter&#8221; sense of interaction when it is placed strategically on the page.</p>
<p>The next exciting feature Shopify has to offer is <a href="https://apps.shopify.com" target="_blank">Apps</a> to extend the functionality of your online store. There are hundreds of them but a particular one that has proved to be essential is the meta fields app, which allows the user to define additional generic text fields to products. Outputting these extra text can be done effortlessly using simple template tags. With custom meta fields, designers would have far more design flexibility when customizing the theme.</p>
<h2>BC&#8217;s Redeeming Features</h2>
<p>The one limitation of Shopify that I noticed is the checkout pages are off-limits to HTML modifications. Therefore, you won&#8217;t be able to place any special text or move the layout around. This could be due to the fact that a code mistake can cause the whole checkout process to break. CSS changes is still permitted though. BC on the other hand allows their checkout pages HTML structure to be modified.</p>
<p>One little bonus feature of BC is the template files can be accessed via FTPS or WebDAV. This can be really useful in circumstances where you need to make a directory-wide search or batch search and replace task using your local IDE.</p>
<h2>Final Words</h2>
<p>Working with BC and Shopify have been a great learning experience. But if I had to choose which one I enjoyed more, it has to be Shopify!</p>
<p>The post <a href="https://stampede-design.com/blog/experience-customizing-bigcommerce-and-shopify/">Customizing BigCommerce and Shopify</a> appeared first on <a href="https://stampede-design.com">Stampede: the strategic design &amp; technology company</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://stampede-design.com/blog/experience-customizing-bigcommerce-and-shopify/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
	</channel>
</rss>
