0

我正在开发一个基于 BETHEME 的网站,它包括松饼内容生成器和视觉作曲家。视觉作曲家是我建立网站的方式。

在主页上,我在可视作曲家文本字段中包含了一个旋转滑块。我使用的简码如下:

[rev_slider alias="Home_page"]

问题是,当我在 WordPress 搜索中搜索任何内容时,结果会显示一段 javascript 代码作为主页结果(因为它是页面的内容)。

var htmlDiv = document.getElementById("rs-plugin-settings-inline-css"); var htmlDivCss=""; if(htmlDiv) { htmlDiv.innerHTML = htmlDiv.innerHTML + htmlDivCss; }else{ var htmlDiv = document.createElement("div"); htmlDiv.innerHTML = "" + htmlDivCss + ""; document.getElementsByTagName("head")[0].appendChild(htmlDiv.childNodes[0]); […]

经过一番研究,我才发现它被革命滑块使用。如何使此脚本显示在我的搜索结果中?

4

2 回答 2

2

这似乎是 Revolution Slider 的一个错误(不太确定)但是这就是我修复它的方式。编辑您的functions.php并添加以下内容:

add_post_type_support( 'page', 'excerpt' );

此代码修改默认的 WordPress 内容类型“页面”以添加对摘录的支持。

完成此操作后,编辑在搜索结果中显示 Javascript 代码的页面,并将内容添加到该页面的“摘录”字段并保存。再次搜索,您会发现代码已不复存在。

于 2018-09-21T16:13:15.023 回答
0

一种可能的解决方案是从搜索结果中删除短代码。

一种方法是将以下代码添加到主题的 functions.php 文件中。

function remove_shortcodes_from_search( $content ) {
  // Only modify the content if it is the search results page
  if ( is_search() ) {
    $content = strip_shortcodes( $content );
  }

  return $content;
}

// Assign a very low number (-9999) to priority to ensure it runs before shortcodes are expanded
add_filter( 'the_content', 'remove_shortcodes_from_search', -9999 );
于 2016-11-14T15:24:05.930 回答