一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

WordPress文章列表添加自定义字段方法

时间:2022-06-25 18:53:16 编辑:袖梨 来源:一聚教程网

我查看了wp-postviews插件的代码,发现是这两个函数起的作用:

 代码如下 复制代码
### Function Show Post Views Column in WP-Admin
add_action('manage_posts_custom_column', 'add_postviews_column_content');
add_filter('manage_posts_columns', 'add_postviews_column');
add_action('manage_pages_custom_column', 'add_postviews_column_content');
add_filter('manage_pages_columns', 'add_postviews_column');
function add_postviews_column($defaults) {
    $defaults['views'] = __( 'Views', 'wp-postviews' );
    return $defaults;
}
### Functions Fill In The Views Count
function add_postviews_column_content($column_name) {
    if($column_name == 'views') {
        echo get_post_meta($post->ID, 'views', true);
    }
}

上面的代码分别在文章页面和独立页面添加一个filter滤镜和action动作,显示文章或者是独立页面的浏览次数。
附录:通过浏览次数排序方法

 代码如下 复制代码
### Function Sort Columns
add_filter('manage_edit-post_sortable_columns', 'sort_postviews_column');
add_filter('manage_edit-page_sortable_columns', 'sort_postviews_column');
function sort_postviews_column($defaults)
{
    $defaults['views'] = 'views';
    return $defaults;
}
add_action('pre_get_posts', 'sort_postviews');
function sort_postviews($query) {
    if(!is_admin())
        return;
    $orderby = $query->get('orderby');
    if('views' == $orderby) {
        $query->set('meta_key', 'views');
        $query->set('orderby', 'meta_value_num');
    }
}

将上面的代码加入到你的主题的functions.php中即可,当然你也可以制作成一个插件,然后安装到你的WordPress中。

热门栏目