Tôi đang cố gắng sửa đổi chức năng này :
// automatically delete users after 7 days in wordpress
function wcs_auto_delete_users() {
global $wpdb;
$query = $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE datediff( now(), user_registered ) > 7" );
if ( $oldUsers = $wpdb->get_results( $query, ARRAY_N ) ) {
foreach ( $oldUsers as $user_id ) {
wp_delete_user( $user_id[0] );
}
}
}
add_action( 'wcs_daily_clean_database', 'wcs_auto_delete_users' );
wp_schedule_event( time(), 'daily', 'wcs_daily_clean_database' );
thay vào đó, để hoạt động khác đi - tôi muốn nó tự động xóa những người dùng chưa hoạt động trong 2 tháng. Tôi có một plugin theo dõi hoạt động của người dùng và lưu trữ dữ liệu trong wp_usermeta. Thí dụ:
user_id = 2; meta_key = wp_wp_kc_last_active_time; meta_value = 1422796627
Đây là truy vấn mà tôi đã đưa ra:
SELECT user_id FROM wp_usermeta WHERE meta_key = 'wp_wp_kc_last_active_time' AND TIMESTAMPDIFF( second, now(), TIMESTAMP(SELECT meta_value) ) > 5184000
Nhưng nó không chọn đúng ID. Tôi nên thay đổi những gì để làm cho nó hoạt động?