gpt4 book ai didi

php - 如何获取 WooCommerce 中的活跃订阅者列表?

转载 作者:行者123 更新时间:2023-12-04 16:29:07 28 4
gpt4 key购买 nike

我正在尝试获取所有活跃订阅用户的列表,但在我的生活中似乎无法正常工作。

如果我查看仪表板中的用户,我会看到所有事件成员都有“Abonné”角色。

所以我设置了这样的简码:

function custom_get_members( ){
$args1 = array(
'role' => 'Abonné',
'orderby' => 'user_nicename',
'order' => 'ASC'
);
$subscribers = get_users($args1);

$output = '<ul>';
foreach ($subscribers as $user) {
$output .= '<li>' . $user->display_name.'['.$user->user_email . ']</li>';
}
$output .= '</ul>';

return $output;
}
add_shortcode( 'annuaire', 'custom_get_members' );

但我总是得到 0 个结果,即使我们目前有超过 50 个订阅者。

通过订阅和成员(member)资格运行 WooCommerce。

谢谢!

最佳答案

更新 (为您的短代码添加了额外的自定义功能)

1) 以下自定义函数可以进行非常轻量的 SQL 查询,将返回所有事件订阅者的用户 ID 数组:

function get_active_subscribers_ids(){
global $wpdb;

// Return an array of user Ids active subscribers
return $wpdb->get_col( "
SELECT DISTINCT pm.meta_value
FROM {$wpdb->prefix}posts as p
JOIN {$wpdb->prefix}postmeta as pm
ON p.ID = pm.post_id
WHERE p.post_type = 'shop_subscription'
AND p.post_status = 'wc-active'
AND pm.meta_key = '_customer_user'
" );
}

代码进入您的事件子主题(或事件主题)的 function.php 文件中。经过测试并且可以工作。


2) 对于您的简码,我已更改此函数以直接获取 display_nameuser_email:

function get_all_active_subscribers(){
global $wpdb;

return $wpdb->get_results( "
SELECT DISTINCT u.*
FROM {$wpdb->prefix}posts as p
JOIN {$wpdb->prefix}postmeta as pm
ON p.ID = pm.post_id
JOIN {$wpdb->prefix}users as u
ON pm.meta_value = u.ID
WHERE p.post_type = 'shop_subscription'
AND p.post_status = 'wc-active'
AND pm.meta_key = '_customer_user'
" );
}

代码进入您的事件子主题(或事件主题)的 function.php 文件中。经过测试并且可以工作。

在您的短代码中的用法:

function custom_get_members( ){
$output = '<ul>';

// Loop through active subscribers
foreach ( get_all_active_subscribers() as $user ) {
$output .= '<li>' . $user->display_name.'['.$user->user_email . ']</li>';
}
return $output . '</ul>';
}
add_shortcode( 'annuaire', 'custom_get_members' );

经过测试,可以使用更轻松的查询和代码。

关于php - 如何获取 WooCommerce 中的活跃订阅者列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55577445/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com