You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复WordPress站点Rich Results Test中的自定义查询参数未定义错误?

解决WordPress Sitelinks搜索框“custom query parameter not defined in target url”错误
  • 检查Schema标记中的SearchAction配置
    这个错误的核心是Sitelinks搜索框对应的SchemaSearchAction里,target URL未正确定义查询参数,或者参数和实际站点搜索参数不匹配。
    打开Rich Results Test的“查看源代码”,找到WebSite类型的Schema片段,确认:

    • target字段必须包含{search_term_string}占位符,且对应实际搜索参数(比如WordPress默认是s,格式类似https://你的站点域名/?s={search_term_string})
    • query-input的name值要和target里的参数逻辑匹配,比如使用默认s参数时,query-input应为"required name=search_term_string"
  • 确认站点实际搜索参数
    在你的WordPress站点搜索框输入任意关键词提交,观察跳转后的URL,比如https://你的站点域名/?s=测试,这里的s就是实际搜索参数。如果是主题自定义的参数(比如q),Schema里的target就要改成https://你的站点域名/?q={search_term_string}。

  • 修正Schema标记

    • 如果是主题自带的Schema,找到主题设置中的SEO/Schema选项,修改搜索参数匹配实际值;或者直接编辑主题的functions.php文件,找到输出Schema的代码段调整参数。
    • 如果主题未正确处理,可手动添加Schema代码:
      用代码片段插件(或直接修改functions.php)添加以下代码,注意替换$search_param为你的实际搜索参数:
      function add_correct_sitelinks_schema() {
        $home_url = get_home_url();
        $search_param = 's'; // 替换为站点实际搜索参数,比如'q'
        ?>
        <script type="application/ld+json">
        {
          "@context": "https://schema.org",
          "@type": "WebSite",
          "url": "<?php echo esc_url($home_url); ?>",
          "potentialAction": {
            "@type": "SearchAction",
            "target": "<?php echo esc_url($home_url); ?>/?<?php echo $search_param; ?>={search_term_string}",
            "query-input": "required name=search_term_string"
          }
        }
        </script>
        <?php
      }
      add_action('wp_head', 'add_correct_sitelinks_schema');
      
  • 验证修复结果
    修改完成后,清除站点缓存和浏览器缓存,再用Rich Results Test重新检测,确认错误消失。

内容的提问来源于stack exchange,提问作者Maksym

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 19:22:43