Чтобы создать счётчик просмотров для всех записей автора в WordPress, следуйте этим шагам:
Шаг 1: Добавление мета-полей просмотров для записей
Сначала нужно добавить возможность хранить информацию о просмотрах для каждой записи. Для этого мы будем использовать мета-поля в WordPress. Откройте файл functions.php активной темы и добавьте следующий код:
function add_post_views_meta() { $count = get_post_meta( get_the_ID(), 'post_views', true ); $count = $count ? $count : 0; $count++; update_post_meta( get_the_ID(), 'post_views', $count ); } add_action( 'template_redirect', 'add_post_views_meta' );
Этот код добавляет мета-поле с названием "post_views" для каждой записи и увеличивает его значение каждый раз, когда запись открывается.
Шаг 2: Создание функции для подсчета просмотров автора
Теперь нужно создать функцию, которая будет считать общее количество просмотров всех записей автора. Добавьте следующий код в functions.php:
function count_author_views( $author_id ) { $args = array( 'author' => $author_id, 'post_type' => 'post', 'post_status' => 'publish', 'nopaging' => true, 'fields' => 'ids', ); $posts = get_posts( $args ); $total_views = 0; foreach ( $posts as $post ) { $count = get_post_meta( $post, 'post_views', true ); $total_views += $count ? $count : 0; } return $total_views; }
Эта функция получает ID автора и использует функцию get_posts() для получения массива ID всех опубликованных записей этого автора. Затем она проходит по каждому ID записи, извлекает значение мета-поля "post_views" и добавляет его к общему количеству просмотров.
Шаг 3: Использование функции для отображения просмотров автора
Теперь вы можете использовать функцию count_author_views() в любом месте вашей темы, чтобы отобразить общее количество просмотров записей автора. Например, вы можете добавить следующий код в файл author.php вашей темы:
$author_id = get_queried_object_id(); $author_views = count_author_views( $author_id ); echo 'Общее количество просмотров: ' . $author_views;
Вместо этого, вы можете использовать эту функцию на странице профиля автора или в любом другом месте, где вам нужно отобразить счётчик просмотров автора.
Таким образом, вы создали счётчик просмотров для всех записей автора в WordPress.