首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除myaccount页面中的WooCommerce noindex元

删除myaccount页面中的WooCommerce noindex元
EN

Stack Overflow用户
提问于 2020-05-03 12:06:25
回答 2查看 595关注 0票数 1

这里有一个移除元"noindex“的解决方案,它会导致myaccount页面在google中被索引的问题,因为有些人希望它出现给他们的客户端,以便轻松找到登录页面。

函数与“我的帐户”页面匹配,然后删除元数据。

代码语言:javascript
复制
function remove_wc_page_noindex(){

    $url = $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];

if ( false !== strpos( $url, 'my-account' ) ) {
    remove_action( 'wp_head', 'wc_page_noindex' );
}
}

add_action( 'init', 'remove_wc_page_noindex' );

我的问题:是否有一种方法可以直接定位matching页面,而不是匹配url的一部分?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-03 12:12:04

您可以在这里获得更多关于条件标签的详细信息。

代码语言:javascript
复制
/**
 * Disable/Enable search engines indexing myaccount pages.
 *
 */

function is_wc_page_noindex() {

    if ( is_page( wc_get_page_id( 'myaccount' ) ) ) {
        remove_action( 'wp_head', 'wc_page_noindex' );
    }
}

add_action( 'template_redirect', 'is_wc_page_noindex' );
票数 2
EN

Stack Overflow用户

发布于 2022-03-30 04:14:33

自从WP5.7以来,Woocommerce使用了wp_robots过滤器。如果remove_action( 'wp_head', 'wc_page_noindex' )不适合您,那么您可以尝试以下方法:

代码语言:javascript
复制
// Remove WooCommerce noindex meta in cart, checkout and myaccount pages

add_action( 'template_redirect', 'srj_woo_remove_noindex' );

function srj_woo_remove_noindex() {
  if ( is_page( wc_get_page_id( 'cart' ) ) || is_page( wc_get_page_id( 'checkout' ) ) || is_page( wc_get_page_id( 'myaccount' ) ) ) {
    remove_filter( 'wp_robots', 'wc_page_no_robots', 10 );
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61574161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档