我有一个正在运行yoast seo的网站,如来源所示:
<title>Redacted</title>
<meta name="description" content="Redacted" />
<meta name="robots" content="index, follow" />
<meta name="googlebot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" />
<meta name="bingbot" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" />
<link rel="canonical" href="Redacted" />
<link rel="next" href="Redacted.com/page/2/" />
<meta property="og:locale" content="en_US" />
<meta property="og:type" content="website" />
<meta property="og:title" content="Redacted" />
<meta property="og:description" content="Redacted" />
<meta property="og:url" content="Redacted" />
<meta property="og:site_name" content="Redacted" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:site" content="@Redacted" />
<!-- / Yoast SEO plugin. -->
然而,在我有的地方,它实际上应该是/索引。php/page/2。没关系,我去修一下。
然而,就我的一生而言,我无法确定它的位置。在Yoast插件工具中找不到它。我尝试在所有插件中搜索文本(出现的内容太多而没有用处)。
我尝试了yoast在线文档,但他们主要讨论了如何不再使用元标记,以及canonical和next的功能,而不是如何或在何处设置它们。
任何关于如何补救的建议都将不胜感激。
最合适的回答,由SO网友:mozboz 整理而成
在当前版本的Yoast中,此链接由presenters/rel-next-presenter.php
, 其中包含此筛选器:
public function present() {
$output = parent::present();
if ( ! empty( $output ) ) {
/**
* Filter: \'wpseo_next_rel_link\' - Allow changing link rel output by Yoast SEO.
*
* @api string $unsigned The full `<link` element.
*/
return \\apply_filters( \'wpseo_next_rel_link\', $output );
}
return \'\';
}
因此,我建议通过在
functions.php
, 例如:
add_filter( \'wpseo_next_rel_link\', \'custom_change_wpseo_next\' );
function custom_change_wpseo_next( $oldLink ) {
$new_link = \'https://example.com/index.php/page/2\';
$link = \'<link rel="next" href="\'. $new_link .\'" />\' . PHP_EOL;
return $link;
}
这样行吗?