跳到主要内容

Api

要以编程方式更改 Yoast SEO 为 URL 生成的规范链接,你可以使用 wpseo_canonical 过滤器。

更改规范链接

例如,以下代码将更改 ID 为 12345 的页面的规范链接:

/**
* 过滤规范链接。
*
* @param string $canonical 当前页面生成的规范链接。
*
* @return string 过滤后的规范链接。
*/
function prefix_filter_canonical_example( $canonical ) {
if ( is_page( 12345 ) ) {
$canonical = 'https://example.com/canonical-url/';
}

return $canonical;
}

add_filter( 'wpseo_canonical', 'prefix_filter_canonical_example' );

移除规范链接

如果你想完全移除某个页面的规范链接,只需为该页面返回 false,如下所示:

/**
* 过滤规范链接。
*
* @param string $canonical 当前页面生成的规范链接。
*
* @return bool|string 过滤后的规范链接,或 false 表示要移除它。
*/
function prefix_filter_canonical_example( $canonical ) {
if ( is_page( 12345 ) ) {
return false;
}

return $canonical;
}

add_filter( 'wpseo_canonical', 'prefix_filter_canonical_example' );

或者要从所有页面移除,只需这样做:

add_filter( 'wpseo_canonical', '__return_false' );