• Silverlight应用的SEO优化


    译文,来源:http://blogs.msdn.com/waldred/archive/2009/03/23/Search-Engine-Optimization-for-Silverlight-Applications.aspx

    点击下载源码

    简介

    对于你来说创建下一代的富应用,使用有无数的理由。但是有一个缺点就是使用呈现的内容无法被搜索引擎收录。如果你的网站流量依赖于搜索引擎这将是致命的。但是现在有个好消息就是你可以同时拥有:丰富的用户体验与内容可被搜索。

             在进入正题之前,我想再强调一下使一个应用可以被搜索引擎收录意味着什么。在本文中,我将谈到的优化搜索引擎技巧对于差的用户体验同样也是可行的:搜索引擎收录的内容与用户没有使用看到的内容是一样。我强烈反对因为搜索引擎而减低用户体验,但是如果因为没有而用户体验差是可行。

    理论基础

             搜索引擎,在大多数情况下,利用静态分析HTTP响应解析和索引页的内容。这意味着当一个搜索引擎的爬虫来抓取您的Silverlight的应用,它的唯一关心的是其中的内容。

    当浏览器无法初始化Silverlight<OBJECT>标记的插件,它将继续呈现在其内部的内容。但是如果客户端已安装Silverlight,用户会看到的是Silverlight的应用,而不是HTML页面。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml">

      <head>

        <title>Silverlight Application</title>

      </head>

      <body>

        <div id="content">

          <object data="data:application/x-silverlight-2,"

                  type="application/x-silverlight-2">

            <param name="minRuntimeVersion" value="3.0.40305.0" />

            <param name="source" value="ClientBin/MyApp.xap" />

            <div class="down-level">

              <h1>Down level content goes here.</h1>

              <p>Lorem ipsum dolor sit amet...</p>

            </div>

          </object>

        </div>

      </body>

    </html>

    这非常漂亮。你想希望你的Silverlight的应用程序能够被搜索引擎索引吧?这只需把内容放在一个<OBJECT>标签里面。很容易,对不对?

    实践

    理论很简单,实践中需要多一点的工作。我们会使用ASP.NET母版页,以方便深层链接下级内容。

    假设我们正在建设一个简单展示的产品信息网站。网站的主页包含就如明确产品分类列表一样的精选的产品链接。

    图1 - 示例站点结构.

    一个简单的办法是为您的网站建立一个MasterPage和在<OBJECT>标签中添加一个ContentPlaceHolder控件。

    <%@ Master Language="C#" ... %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml">

      <head>

        <title>Silverlight Application</title>

      </head>

      <body>

        <div id="content">

          <object data="data:application/x-silverlight-2,"

                  type="application/x-silverlight-2">

            <param name="minRuntimeVersion" value="3.0.40305.0"/>

            <param name="source" value="ClientBin/MyApp.xap"/>

            <asp:ContentPlaceHolder ID="DownLevelContent" runat="server"/>

          </object>

        </div>

      </body>

    </html>

             然后我们就可以添加下面这些页面:

    ·                 Default.aspx – 这主主页.

    ·                 Products.aspx – 这用来列表产品.

    ·                 ProductDetails.aspx –这用来显示某个产品的详细内容

    ·                 …   如果你还有更多想法可以添加其它更多页面

    最重要的事情需要注意的是我们所有的内容网页上,现在就可以开始,提供这些内容。这样用安装了Silverlight的用户就会看到Silverlight的体验。


    图2 – Master and Content Page Relationship.

    结语

    就添加这一点点内容,就有可能创造一个丰富的Silverlight的应用程序,提供了一个引人注目的用户体验,而且不会牺牲对搜索引擎可见度。

      

  • 相关阅读:
    python中的 upper() 、lower()、capitalize()、title()方法
    python中的strip()函数的用法
    python中的split()函数的用法
    python中的join()函数的用法
    appium 简单的测试例子(1)
    模拟器连接使用
    appuim连接时的一些出现的错误
    android获取包名的几种方法
    python+Appium(1)
    专注基础软件自研,巨杉入选“2020信创产业独角兽100强”
  • 原文地址:https://www.cnblogs.com/linwinfan/p/1429746.html
Copyright © 2020-2023  润新知