Массив просматриваемых постов начинается с запятой - PullRequest
1 голос
/ 21 октября 2019

У меня есть следующая функция для хранения массива идентификаторов просматриваемых постов. Это все работает, но сохраненный массив всегда начинается с запятой - , xxxx - я полагаю, это потому, что я внедряю пустой массив?

function workshop_save_viewed_enquiries() {

    global $current_user;
    wp_get_current_user();

    if ( is_singular( 'enquiry' ) && in_array( 'workshop', (array) $current_user->roles ) ) {

        $viewed_enquiries_array = explode( ", ", get_user_meta( $current_user->ID, 'wpcf-viewed-enquiries', true ) );

        if ( !in_array( get_the_ID(), $viewed_enquiries_array ) ){

            $viewed_enquiries_array[] = get_the_ID();
            $viewed_enquiries = implode(', ', $viewed_enquiries_array ); 
            update_user_meta( $current_user->ID, 'wpcf-viewed-enquiries', $viewed_enquiries );

        }

    }

}
add_action( "wp_footer", "workshop_save_viewed_enquiries" );

1 Ответ

1 голос
/ 21 октября 2019

Я сделал небольшое изменение, чтобы посмотреть, существуют ли данные, и добавил дополнительные данные с помощью массива обратного вызова, но вы могли бы передать прямой массив, что функция update_user_meta уже будет работать;)

function workshop_save_viewed_enquiries() {

    global $current_user;
    wp_get_current_user();

    if ( is_singular( 'enquiry' ) && in_array( 'workshop', (array) $current_user->roles ) || true == true ) {

        $viewed_enquiries_array = get_user_meta( $current_user->ID, 'wpcf-viewed-enquiries', true );
        if( $viewed_enquiries_array ){
            $viewed_enquiries_array = explode(', ', $viewed_enquiries_array );
        }else{
            $viewed_enquiries_array = array();
        }

        if ( !in_array( get_the_ID(), $viewed_enquiries_array ) ){

            $viewed_enquiries_array[] = get_the_ID();
            $viewed_enquiries = implode(', ', $viewed_enquiries_array ); 
            update_user_meta( $current_user->ID, 'wpcf-viewed-enquiries', $viewed_enquiries );

        }

    }

}
add_action( "wp_footer", "workshop_save_viewed_enquiries" );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...