wordpress主题RiPro-V5 v8.X版本 后台文章列表里增加“阅读量”列方法(增加代码)

有会员反馈wordpress主题RiPro-V5 v8.3版本安装使用后,后台文章管理没有阅读量一列,问我能不能增加,今天就把这问题解决办法分享下

wordpress主题RiPro-V5 v8.X版本 后台文章列表里增加“阅读量”列方法

wordpress主题RiPro-V5 v8.X版本 后台文章列表里增加“阅读量”列方法(增加代码)



对应修改文件 ripro-v5/inc/template-post-type.php

修改也非常简单,不会动任何文件和代码,下面我给你可直接粘贴的代码(放到 ripro-v5/inc/template-post-type.php 末尾即可)

/**
* 后台文章列表增加“阅读量”列
* 依赖文章meta键:views
*/
add_filter('manage_posts_columns', function ($columns) {
$new_columns = array();

foreach ($columns as $key => $value) {
$new_columns[$key] = $value;

// 在日期列前插入阅读量
if ($key === 'date') {
$new_columns['post_views'] = '阅读量';
}
}

// 兜底:如果没找到date列,则追加到最后
if (!isset($new_columns['post_views'])) {
$new_columns['post_views'] = '阅读量';
}

return $new_columns;
}, 20);

add_action('manage_posts_custom_column', function ($column, $post_id) {
if ($column !== 'post_views') {
return;
}

// 常见阅读量meta键,按优先级读取
$views = get_post_meta($post_id, 'views', true);
if ($views === '') {
$views = get_post_meta($post_id, 'post_views_count', true);
}

$views = intval($views);
echo esc_html($views);
}, 10, 2);

/**
* 支持点击“阅读量”排序
*/
add_filter('manage_edit-post_sortable_columns', function ($columns) {
$columns['post_views'] = 'post_views';
return $columns;
});

add_action('pre_get_posts', function ($query) {
if (!is_admin() || !$query->is_main_query()) {
return;
}

if ($query->get('orderby') === 'post_views') {
// 与上面显示时一致,默认按 views 排序
$query->set('meta_key', 'views');
$query->set('orderby', 'meta_value_num');
}
});
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容