【问题标题】:Making SEO friendly forms制作 SEO 友好的表单
【发布时间】:2012-08-22 17:30:53
【问题描述】:

我想知道是否可以在不使用 JS 或搜索引擎友好的方式下更改表单提交数据的方式

我有两个独立的非常基本的表格。第一个包含一个下拉菜单,允许您选择一个主题。另一个用途完全相同,它只允许您在文本框中输入主题(并使用自动完成功能),而不是从长列表中选择它。

目前两种表单都以 GET 方法提交数据,因此对于相同选择的基本提交将导致以下 URL:

http://example.com/subject/?text=XXXXXX

(我正在使用 .htaccess 将 /subject 重写为实际的 php 脚本...)

我想要做的实际上是让 URL 看起来像这样:

http://example.com/subject/XXXXXX

目前我的 .htaccess 将毫无问题地识别这两个 URL,我只是想知道是否有一种方法可以使用没有 JS 或任何 SE 友好方法的第二种方法使表单提交

【问题讨论】:

  • 为什么搜索引擎要填写你的表格?
  • 我不希望他们填写表格 :D 我主要希望他们识别列表中的可用选项

标签: javascript jquery forms html seo


【解决方案1】:

您可以列出所有 url 的选项,如果 js 被禁用 (SE),您会显示此列表(并隐藏表单)。如果启用了 js,则显示表单。

您可以在css中隐藏表单并使用js将其设置为可见。或者使用js生成整个表单。

【讨论】:

  • 哇,我不知道我是怎么错过的!谢谢你提醒我:)
【解决方案2】:

要发送表单,所有 http 客户端(浏览器和 SE,虽然我不知道 SE 是否填写和发送表单)都将构建名称=值对。您可以通过触摸表单的 action 属性来更改它(并且可能在发送之前删除变量),但这当然需要 Javascript。

没有 JS,您无法更改它,因为这正是表单必须发送的方式。

如果你想索引一个搜索引擎友好的 URL,我认为你最好的选择是使用 .htaccess 指令重定向,但这只能在你收到参数化的 URL 之后发生。

【讨论】:

    【解决方案3】:

    搜索引擎蜘蛛不会提交表单。您必须将列表中您想要的项目放在蜘蛛可以找到它们的页面中的其他位置 - 例如在组合框上方的段落中。您可以将它们放在元描述或关键字标签中,但前提是它们实际上很重要 - 如果 Google 决定您试图对页面进行过多优化,它将惩罚您的排名。

    【讨论】:

      【解决方案4】:

      根据我的经验,最优化的解决方案是添加一个固定URL格式的小解析器脚本,并进行302重定向到新链接。

      换句话说,假设表单提交了以下链接:

      http://example.com/subject/?text=XXXXXX
      

      PHP 脚本将接收链接,将部分:?text=XXXXXX 替换为 XXXXXX,并将用户重定向到新页面。

      此解决方案将为我们节省 .htaccess 的复杂性,并让我们在未来维护表单时更加灵活。

      【讨论】:

        猜你喜欢
        • 2015-03-09
        • 1970-01-01
        • 1970-01-01
        • 2020-04-12
        • 2011-08-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多