Php 如何在WooCommerce商店页面中为未登录的用户显示不同的图像?

Php 如何在WooCommerce商店页面中为未登录的用户显示不同的图像?,php,wordpress,woocommerce,Php,Wordpress,Woocommerce,我正在WoodPress平台下使用WooCommerce创建我的电子商务商店,但我只想为登录用户显示存档商店页面图像 未登录的用户将看到占位符,这些占位符阻止他们查看商店的图像 我已经遵循了教程,这似乎正是我要寻找的,但没有视觉效果一致,我相信这个钩子要么是无关的,要么是不推荐的 //Display different images for non-logged in users add_filter( 'woocommerce_placeholder_img_src', 'growdev_cu

我正在WoodPress平台下使用WooCommerce创建我的电子商务商店,但我只想为登录用户显示存档商店页面图像

未登录的用户将看到占位符,这些占位符阻止他们查看商店的图像

我已经遵循了教程,这似乎正是我要寻找的,但没有视觉效果一致,我相信这个钩子要么是无关的,要么是不推荐的

//Display different images for non-logged in users
add_filter( 'woocommerce_placeholder_img_src', 'growdev_custom_woocommerce_placeholder', 10 );

function growdev_custom_woocommerce_placeholder( $image_url ) {
    if ( is_user_logged_in() ) {
        return;
    }
  $image_url = 'https://vps1420.secured-cloud.net/wp-content/uploads/2021/04/516.webp';  // change this to the URL to your custom placeholder
  return $image_url;
}
现在图像继续像往常一样显示(无论我是否登录)


如何在WooCommerce中为未注册用户显示不同的图像?

您可以使用
WooCommerce\u-before\u-shop\u-loop\u-item\u-title
操作挂钩。首先删除
woocommerce\u,然后再删除\u shop\u loop\u item\u title
hook,然后再次添加该hook,并使用
is\u user\u logged\u in()
检查用户是否登录。代码转到活动的theme functions.php文件

使用此
woocommerce\u get\u product\u缩略图()
函数获取产品 缩略图

使用此
wc\u占位符\u img()
函数获取产品占位符 形象


我得到了重复的产品,也许删除功能不正确?该功能确实有效,但如何避免产品重复?它应该可以正常工作。检查我的编辑。你是正确的,这是一些插件。
// Remove product images from the shop loop
function remove_shop_images() {
    remove_action( 'woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_thumbnail', 10 );
}
add_action( 'after_setup_theme', 'remove_shop_images' );

function display_product_image_based_on_logged_in(){
    if( is_user_logged_in() ){
        echo woocommerce_get_product_thumbnail();
    }else{
        echo wc_placeholder_img();
    }
}
add_action( 'woocommerce_before_shop_loop_item_title', 'display_product_image_based_on_logged_in', 10 );