对于Google购物Feed,我需要向Google提供一些产品变量。
案例: 有3个唯一的产品标识符:
<!-- Unique Product Identifiers-->
<g:brand>{manufacturer}</g:brand>
<g:gtin>{upc}</g:gtin>
<g:mpn>{sku}</g:mpn>
一种方式来说明它是真还是假:
<g:identifier_exists>TRUE</g:identifier_exists>
g:identifier_exists应该为3个标识符中的1个填充(非空/空)。如果所有3都为空,则标识符应为FALSE。像这样:
<g:identifier_exists>FALSE</g:identifier_exists>
这可以用XML吗?
编辑: 有人提到XLST所以我尝试了以下内容:
<item>
!-- Basic Product Information -->
<g:id>{sku}</g:id>
<title>{name,[substr],[70],[...]}</title>
<description>{description,[html_entity_decode],[strip_tags]}</description>
{G:GOOGLE_PRODUCT_CATEGORY}
{G:PRODUCT_TYPE,[10]}
<link>{url parent}</link>
{G:IMAGE_LINK}
<g:condition>new</g:condition>
<!-- Availability & Price -->
<g:availability>{is_in_stock?[in stock]:[out of stock]:[available for order]}</g:availability>
<g:price>{normal_price,[USD],[0]}USD</g:price>
{G:SALE_PRICE,[USD],[0]}
<!-- Unique Product Identifiers-->
<xsl:choose>
<xsl:when test=" g:brand != ''' ">
<g:identifier_exists>TRUE</g:identifier_exists>
</xsl:when>
<xsl:when test=" g:gtin != ''' ">
<g:identifier_exists>TRUE</g:identifier_exists>
</xsl:when>
<xsl:when test=" g:mpn != ''' ">
<g:identifier_exists>TRUE</g:identifier_exists>
</xsl:when>
<xsl:otherwise>
<g:identifier_exists>FALSE</g:identifier_exists>
</xsl:otherwise>
</xsl:choose>
<!-- Apparel Products -->
<g:gender>{gender}</g:gender>
<g:age_group>{age_group}</g:age_group>
<g:color>{color}</g:color>
<g:size>{size}</g:size>
<!-- Product Variants -->
{G:ITEM_GROUP_ID}
<g:material>{material}</g:material>
<g:pattern>{pattern}</g:pattern>
<!-- Shipping -->
<g:shipping_weight>{weight,[float],[2]}kg</g:shipping_weight>
<!-- AdWords attributes -->
<g:adwords_grouping>{adwords_grouping}</g:adwords_grouping>
<g:adwords_labels>{adwords_labels}</g:adwords_labels>
</item>
答案 0 :(得分:0)
我会间接回答这个问题,因为我对你的环境了解不多。 这可能甚至不符合您的要求。首先我基于此的一些背景信息:
关于XML所支持的格式的说明,有两个,RSS和ATOM。 https://support.google.com/merchants/answer/160567?hl=en&ref_topic=3163841
这是我们的目标,例如我们选择RSS格式的XML文件作为我们在该链接中指定的表单中所需的“提要”。现在要做到这一点,我们需要从源代码执行XSLT转换,无论是指定的RSS指定格式。
然后,此XSLT文件可以检测到您需要的内容(您可以从那里开始)。 XSLT是“程序”的一部分,XML是源代码部分。注意:从我提供的链接和示例源中的链接/信息中,“1 of 3”似乎是“2 of 3”。关于XSL条件等还有一些其他问题,例如Conditional test around xsl:apply-templates搜索一下。
这是一个简单的工作流程示例:
XML输入==&gt;使用XSLT进行处理==&gt;生成XML提要
在这里,我们可以利用StackOverflow的强大功能!以下是您可能从一些XML和XSLT开始的问题:How can I use XSLT to create an RSS 2.0 feed from an XML file?
将“模板”与匹配视为每个元素的一部分。
以下是我在上面链接的页面输出的RSS XML文档示例示例:http://commondatastorage.googleapis.com/newfeedspec/example_feed_xml_rss.xml.zip
以下是有人想要使用RSS创建新形式的XML的链接:XSLT Transformation of Google product feed xml