Labo

[EC-CUBE 2.12.3] 商品RSSに商品画像URLと在庫情報を含める方法

2013年03月31日 / 投稿者名:fukap


外部に商品データを渡す方法として、EC-CUBEには商品RSSというものが用意されています。
通常は、http://あなたのドメイン/rss/product.php などのURLで表示できると思います。
今回はこれに商品画像URLと在庫情報を含めたいと思います。

data/Smarty/templates/default/rss/products.tpl を以下のように修正

<!--{foreach from=$arrProducts item=arrProduct}-->
    <item>
        <title><!--{$arrProduct.name|h|sfMbConvertEncoding:$encode}--></title>
        <link><!--{$smarty.const.HTTP_URL}-->products/detail.php?product_id=<!--{$arrProduct.product_id}--></link>
        <description><![CDATA[
            <div class="hproduct">
                <a href="<!--{$smarty.const.HTTP_URL}-->products/detail.php?product_id=<!--{$arrProduct.product_id}-->" rel="product">
                    <img src="<!--{$arrProduct.main_list_image}-->" alt="<!--{$arrProduct.product_name|h|sfMbConvertEncoding:$encode}-->" class="product-thumb" />
                </a>
                <div class="product-title"><a href="<!--{$smarty.const.HTTP_URL}-->products/detail.php?product_id=<!--{$arrProduct.product_id}-->" rel="product"><!--{$arrProduct.product_name|h|sfMbConvertEncoding:$encode}--></a></div>
                商品コード:<!--{$arrProduct.product_code_max|h|sfMbConvertEncoding:$encode}-->
                <div><!--{$smarty.const.SALE_PRICE_TITLE}-->:
                    <span class="price">
                        <!--{if $arrProduct.price02_min_inctax == $arrProduct.price02_max_inctax}-->
                            <!--{$arrProduct.price02_min_inctax|number_format}-->
                        <!--{else}-->
                            <!--{$arrProduct.price02_min_inctax|number_format}-->~<!--{$arrProduct.price02_max_inctax|number_format}-->
                        <!--{/if}-->円</span>
                </div>
                <div class="description">
                    <!--{$arrProduct.main_list_comment|h|sfMbConvertEncoding:$encode|nl2br}-->
                </div>
            </div>
        ]]></description>
        <pubDate><!--{$arrProduct.update_date|date_format:"%Y-%m-%dT%T+09:00"}--></pubDate>
        <mainImage><!--{$arrProduct.main_image}--></mainImage>
        <mainListImage><!--{$arrProduct.main_list_image}--></mainListImage>
        <stock><!--{if $arrProduct.stock_unlimited_min == 0 && $arrProduct.stock_min == 0}-->在庫なし<!--{else}-->在庫あり<!--{/if}--></stock>
    </item>
<!--{/foreach}-->

下から数えて3~5行目を書き加えた感じです。
在庫に関しては、商品規格を使用する場合は問題なさそうですが、
商品規格を使用する場合だと、今回のコードだと、規格のなかに1つでも在庫切れを起こしたものが含まれていると、
在庫なしと判定されてしまうはずです。商品規格を使う場合は、もう一段のカスタマイズが必要かと思います。

[EC-CUBE 2.12.3] 商品RSSに商品画像URLと在庫情報を含める方法 への1件のコメント

  1. ピンバック: [EC-CUBE 2.12.3] 商品RSSに商品ステータスを含める方法 | NAKWEB × EC-CUBE

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

* Copy This Password *

* Type Or Paste Password Here *

*

コメント欄にコードを挿入したい場合は、[php][/php] を使ってください。