在 Woocommerce 产品页面上显示产品查看次数
Posted
技术标签:
【中文标题】在 Woocommerce 产品页面上显示产品查看次数【英文标题】:Showing Product View Count on Woo commerce Product Page 【发布时间】:2020-01-03 13:12:50 【问题描述】:我有 WordPress 网站 www.kampungcourse.id 来选择语言课程。我想显示有多少人观看了特定产品。使用帖子视图计数器插件,它会在主页和博客页面上显示帖子视图,但不会在 woo-commerce 产品页面上显示帖子视图。任何人都可以帮助自定义代码来实现这个
我尝试使用 post view counter 插件,但它不适用于 woo-commerce 的产品页面。
【问题讨论】:
请参考 github 上的这个 woo commerce 插件以获取产品查看次数github.com/wp-plugins/product-view-counter 【参考方案1】:将下面的代码插入到function.php文件中。您可以按用户 IP 地址在表中插入查看次数。
add_action('wp', function()
global $post;
$user_ip = $_SERVER['REMOTE_ADDR'];
$meta = get_post_meta( $post->ID, 'views_count', TRUE );
$meta = '' !== $meta ? explode( ',', $meta ) : array();
$meta = array_filter( array_unique( $meta ) );
if( ! in_array( $user_ip, $meta ) )
array_push( $meta, $user_ip );
update_post_meta( $post->ID, 'views_count', implode(',', $meta) );
);
在添加到购物车按钮之前显示特定的产品查看次数。
add_action( 'woocommerce_before_add_to_cart_button', 'add_content_before_addtocart_button_func',0 );
function add_content_before_addtocart_button_func()
global $product;
$id = $product->id;
$meta = get_post_meta( $id, 'views_count', TRUE );
if(empty($meta))
$result = 0;
else
$result = count(explode(',',$meta));
echo "<div class='custom-visitor-count-st' style='font-size: 20px;'>";
echo "<i class='fa fa-eye'></i>";
echo "<span class='cv-value'>";
echo $result;
echo " Views</span></div>";
您可以使用任何其他 woo 商务挂钩来显示查看次数。
【讨论】:
它会显示特定访问者观看的产品总数。或所有用户的总访问次数。因为我想显示所有用户的访问总数,。这样访问者就可以知道产品被观看了多少次。 它将显示所有用户的产品观看总数。 所以我应该将两个代码都添加到 function.php 或者只是第二个 将两个代码都添加到function.php中。 是的。它会工作。您可以在 add_content_before_addtocart_button_func() 函数中根据您的要求更改设计。【参考方案2】:请将此功能替换如下,以在评分栏旁边的页面顶部显示视图。
add_action( 'woocommerce_before_add_to_cart_button', 'add_content_before_rating_button_func',0 );
function add_content_before_rating_button_func()
global $product;
$id = $product->id;
$meta = get_post_meta( $id, 'views_count', TRUE );
if(empty($meta))
$result = 0;
else
$result = count(explode(',',$meta));
?>
<script>
var html="";
var result = "<?php echo $result ?>";
html += "<div class='custom-visitor-count-st' style='font-size: 20px;'>";
html += "<i class='fa fa-eye'></i>";
html += "<span class='cv-value'>";
html += result;
html += " Views</span></div>";
$(html).insertAfter('.woocommerce-product-rating');
</script>
<?php
【讨论】:
以上是关于在 Woocommerce 产品页面上显示产品查看次数的主要内容,如果未能解决你的问题,请参考以下文章
php [在存档页面上显示产品尺寸]在存档页面上显示WooCommerce 3.0+产品尺寸,位于产品标题下方。
php [在存档页面上显示产品尺寸]在存档页面上显示WooCommerce 3.0+产品尺寸,位于产品标题下方。