在简单的HTML网站上为背景图像添加微数据

时间:2017-08-16 01:53:59

标签: html html-table background-image microdata

我正在尝试使用架构来增强旧的html站点(webstore),并且在启动时遇到一些困难。我们有超过1,500个单独的html产品页面,我想开始添加Schema,所以开始时这是正确的必须。

到目前为止,最大的问题是如何添加产品图像代码,因为我们的网站布局是基于表格的,主要产品图像作为背景元素插入。到目前为止,我发现的大多数研究示例都显示了不同的实现,这可能吗?

这是一个代码示例:

<TR>
   <TD COLSPAN=2><IMG SRC="images/spacer.gif" WIDTH=122 HEIGHT=10 ALT=""></TD>
</TR>
<TR>
  <TD COLSPAN=2><IMG SRC="images/spacer.gif" WIDTH=122 HEIGHT=18 ALT=""></TD>
</TR>
</TABLE>
</td>

<td valign="top">
  <table width="599" border="0" cellpadding="0" cellspacing="0" background="images/LOTR/BKG_Hobbit-Sting-UC2892.jpg" style="background-repeat: no-repeat;">
  <tr>
  <td width="259" valign="top"><span class="style2 "><IMG SRC="images/spacer.gif" alt="" WIDTH=259 HEIGHT=150 border="0"><br></span>
    <table width="238" border="0" align="right" cellpadding="0" cellspacing="0">
      <tr>
        <td colspan="2"><span class="style109 style31">The HOBBIT<br> BILBO'S STING SWORD</span><span class="style117"><br> <span class="style33">UC2892 United Cutlery</span></span></td>
      </tr>

从此代码中,我想通过Schema.org突出显示images/LOTR/BKG_Hobbit-Sting-UC2892.jpg作为产品图片。

我首先尝试将信息添加到<HEAD>部分,但它没有在Google的结构化数据测试工具上正确检查:

<div itemscope itemtype="schema.org/Product">; <meta itemprop="image" content="images/LOTR/BKG_Hobbit-Sting-UC2892.jpg"></meta>

另外,在Bing Markup测试仪中测试给出了结果:

  

我们在此页面上没有看到任何标记。请确保标记已正确实施。

是否可以通过<div>将架构数据添加到head区域?

此外,图片链接应该是完整的网址www.example.com/images/LOTR/BKG_Hobbit-Sting-UC2892.jpg吗?

1 个答案:

答案 0 :(得分:1)

由于您的table标记似乎不易维护,并且(obsoletebackground属性不能用于微数据,因此您的最佳方法是可能是复制内容并使用meta / link元素进行标记。

您可以在headbody中添加此标记,但不能在div中使用head,因此更容易在body中添加body <div itemscope itemtype="http://schema.org/Product"> <link itemprop="image" href="images/LOTR/BKG_Hobbit-Sting-UC2892.jpg" /> </div>

所以在link中,您只需添加以下内容:

meta

如果值是网址,则have to使用a而不是meta。这允许您指定任何类型的URL,绝对或相对(就像在link元素中一样)。

(另请注意,<meta><meta />都没有结束标记,因此它是<meta></meta>=iif( Fields!O1_Parent_Line_Item_ID.Value is "0", "", iif(ISNUMERIC(Fields!O1_Parent_Line_Item_ID.Value), CInt(Fields!O1_Parent_Line_Item_ID.Value), Fields!O1_Parent_Line_Item_ID.Value)) ,而不是{{1}}。)

也就是说,如果您标记现有内容而不重复,Microdata效果最佳。如果您需要复制它,那么might work better就可以使用JSON-LD而不是Microdata。