• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >WordPress > WordPress 自定义文章列表列的实现方法

WordPress 自定义文章列表列的实现方法

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-13

佚名 向大家介绍了wordpress文章列表,wordpress 列表页,wordpress 列表,wordpress 列表插件,wordpress自定义栏目等相关知识,希望对您有所帮助
上一篇,我们使用 Meta Box 为文章添加了一个“推荐指数”字段。添加后用了一段时间,似乎不那么方便,编辑文章虽然方便了,但是在文章列表里却不能直观的显示出文章推荐指数,而且不能根据推荐指数来排序文章,鉴于这些不足,今天就来完善一下,让他更方便好用。

今天要实现的效果如下图,具体的功能就是在列表里添加一列“推荐指数”,用来显示每篇文章的推荐指数,同时可以根据“推荐指数”来进行文章排序。





首先要做的就是在表头添加“推荐指数”列。
</div>
  1. function add_rating_column($columns) {   
  2.     $columns['rating'] = '推荐指数';   
  3.     return $columns;   
  4. }   
  5. add_filter('manage_posts_columns' , 'add_rating_column');   
</div> </div>
manage_posts_columns Filter可以应用管理文章页面的表头里,用来修改表头信息。注意该Filter不会应用到Page的列表页面,如需用到,请使用manage_pages_columns 或者 manage_${post_type}_posts_columns

有了表头,只是添加了这一列,但是该列还没有内容,我们来为该列填充数据。

</div>
  1. function rating_column_content($column_name, $post_id) {   
  2.     if ($column_name == 'rating') {   
  3.         $rating_value = get_post_meta( $post_id, '_rating', true );   
  4.         echo ($rating_value / 2) . '星';   
  5.     }   
  6. }   
  7. add_action('manage_posts_custom_column', 'rating_column_content', 10, 2);   
</div> </div>

这里用到了 manage_posts_custom_column Action,查看该Action的文档,我们可以知道该Action可以用来添加或修改列表的列,包括内建的以及自定义的列表列。该Action 接受两个参数,第一个是列表列的名字($column_name,即第一步中的’rating’,而非’推荐指数’),第二个是当前的文章ID($post_id)。根据这两个参数,我们就可以根据当前列的名字来获取文章的相关信息了。

这里通过判断当前列表列是不是’rating’,是则根据文章ID获取到推荐指数的值,并格式化输出。

接下来让他能够进行排序。通过 manage_edit-post_sortable_columns Filter来指定哪些列可以用来排序。

</div>
  1. function rating_column_table_sorting( $columns ) {   
  2.     $columns['rating'] = 'rating';   
  3.     return $columns;   
  4. }   
  5. add_filter( 'manage_edit-post_sortable_columns', 'rating_column_table_sorting' );  
</div> </div> 添加后,点击“推荐指数”列表头,可以看到页面的地址已经变到了排序的页面(/wp-admin/edit.php?orderby=rating&order=asc),但是列表却并没有排序。这是因为WordPress并不如何根据’rating’来排序。

接下来就告诉WordPress如何根据’rating’排序。

</div>
  1. function rating_column_orderby( $vars ) {   
  2.     if ( isset( $vars['orderby'] ) && $vars['orderby'] == 'rating' ) {   
  3.         $vars['orderby'] = 'meta_value_num';   
  4.       &
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • WordPress 自定义文章列表列的实现方法
  • WordPress给文章图片自动添加链接的方法
  • Wordpress实现文章支持和反对功能的方法
  • wordpress给文章生成二维码的方法
  • WordPress获取文章内容摘要的方法
  • wordpress调用特定文章列表的技巧分享
  • WordPress 实现文章评论排行榜
  • wordpress获取置顶文章列表的方法
  • wordpress抓取文章第一张远程图片保存到本地的方法
  • wordpress获取文章评论数过滤掉作者代码分享

相关文章

  • 2018-11-02自定义WordPress后台样式风格
  • 2018-11-02WordPress仿亿欧网操作帮助文档
  • 2018-11-02WordPress评论文本移除P标签
  • 2018-11-02安装完WordPress必须要做的一些后台设置(新手必看)
  • 2018-11-02非插件实现wordpress网站自动内链、外链
  • 2018-11-02XSnamu企业主题安装设置操作文档
  • 2018-11-02wordpress添加自定义内容类型
  • 2018-11-02WordPress文章如何实现上下篇按钮并带有特色图像
  • 2017-05-13wordpress 如何从后台数据库修改theme(图文教程)
  • 2018-11-02wordpress管理员快速登录其他用户的账户

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • 如何去除wordpress底部的“自豪地采用wordpress”链接
    • wordpress编辑器中添加链接功能自动加入nofollow的方法
    • wordpress教程之 WordPress 用户角色
    • wordpress自带的缓存功能使用介绍
    • WordPress主题如何更新升级?
    • WordPress 有人回复时邮件通知的实现方法 SAE 移植版
    • 安装完WordPress必须要做的一些后台设置(新手必看)
    • WordPress 3D旋转标签云
    • wordpress控制分类.首页.标签.显示文章数量各不相同
    • 如何选择和使用wordpress主题制作特色网站

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有