显示多个分类下的文章可以这样提取:

<?php query_posts(array('posts_per_page'=>10,'orderby'=>'rand','category__and'=>array(67,70)));?>
<?php if(have_posts()):while(have_posts()):the_post(); ?>
 <li><span class="grayz">· </span><a href="<?php the_permalink(); ?>" target="_blank" class="ab"><?php echo cut_str($post->post_title,45); ?></a></li>
 <?php endwhile;?>
 <?php else:?>
 <p>Sorry,no posts matched your criteria.</p>
  <?php endif;wp_reset_query();?>

首先把要读取的分类目录的ID找出,放在array数组中。

借助强大的query_posts函数实现随机(’orderby’ => ‘rand’)读取十篇(’showposts’ =>10)在指定分类目录(’category__in’ => array(7,17))下的文章。

最后调用wp_reset_query();因为query_posts指定规则后不止是对它下一个LOOP生效,可能导致全站其他LOOP调用失效,wp_reset_query可以用来清空wp_query规则。


下面详细介绍wordpress下使用率最高的分类目录系列参数( 注意:下划线是“__”不是“_”):
cat:分类ID

根据ID显示单个分类

举例:分类ID4(以及该分类目录下的子分类目录)的文章:
query_posts('cat=4');

根据ID显示多个分类

举例:分类ID1、2、3下的文章:
query_posts('cat=1,2,3');

排除某一分类中的文章

举例:显示除分类ID为3的文章外的所有文章,被排除的分类ID以减号(’-')作为前缀。

query_posts('cat=-3');

category_name:分类名称

query_posts('category_name=Staff Home');

category__and:同时存在于多个分类里
举例:既是分类ID1,也是分类ID5的文章:

query_posts(array('category__and' =>  array(1,5)));

举例:获取当前分类与分类ID5的文章
query_posts(array('category__and'=>array(get_cat_id(single_cat_title('',false)),5)));

single_cat_title():用于显示或返回当前页面的分类名称,不能用于LOOP循环。有两个参数可以使 用。前缀$prefix用于在分类名称前加入相应的内容,比如文字、图片等,例句中就是在分类名称前加入了“当前分类:”。 是否显示$display,是布尔值,为TRUE则直接用于显示标题,而FALSE则用于PHP操作,下面例句将最能说明问题。(如果使用了汉字,请用 UTF8格式保存,使用ANSI时,汉字为乱码)。

get_cat_ID():用于获取指定分类的ID,参数只有一个$cat_name,如果错误返 回0,否则返回分类ID。这里拿做读取当前分类列表里的例子作为说明。.’<br />’是为了方便查看效果而设置的换行。第一句是获取分类ID的关键所在。这句话只能使用在是分类的页面中,也就是is_category为返回为 真(1)才能生效。

category__in:存在于一系列分类之中
举例:属于分类ID1或分类ID5的文章:

query_posts(array('category__in' =>  array(1,5)));

category__not_in:不存在一系列分类之中
举例:不属于分类ID1,且不属于分类ID5的文章:

query_posts(array('category__not_in' => array(1,5)));

wordpress显示多个分类的文章的更多相关文章

  1. [转]WordPress“添加媒体”文件时只显示上传到当前文章的附件图片

    使用WordPress的朋友应该都清楚,特别是喜欢图文并茂的网站,肯定离不开的就是WordPress文章编辑页面的“添加媒体”按钮,每次点击就能弹出一个插入多媒体的界面,然后页面默认就会列举加载所有最 ...

  2. G:首页调用“图片视频”的分类和文章(难点)

      1:后台获取:自定义分类的ID (默认分类也可获取)  2:动态获取"自定义分类的ID($cat)"  $cat_title = single_cat_title(' ', f ...

  3. WordPress基础:常用分类列表wp_list_categories

    函数:wp_list_categories($args) 作用:列出某个分类下的分类项目 用法: <ul> <?php $args= array( 'depth'=>1, 'o ...

  4. WordPress显示评论者IP归属地、浏览器、终端设备、电信运营商

    在网上查资料闲逛,偶然间看到了张戈博客的评论框有点意思,于是就收走拿到了我的米扑博客. 本文为米扑博客原创:总结分享 WordPress显示评论者IP归属地.浏览器.终端设备.电信运营商 WordPr ...

  5. WordPress主题开发实例:获取当前分类的文章列表

    思路: 如果使用默认的wordpress的方法,调出来的数据就会被后台的显示个数所限制,而我们需要的是自由控制文章数和翻页,所以我使用WP_Query 获取当前分类的方法可以通过 get_query_ ...

  6. ECSHOP任意页面显示指定分类、数量、排序的任意类型文章,包括只显示置顶or普通的文章

    1.在需要使用此功能的PHP页面里最后的?>前面添加以下代码,现在以article.php为例子 /** jinmozhe 专业ECSHOP二次开发 * 获得指定分类ID.文章类型.指定数量.排 ...

  7. WordPress主题开发:按分类调用文章

    调用catid为2的分类下的文章,就是后台分类链接的tag_ID <?php $cat_query = new WP_Query(array( 'cat' => '2' )); ?> ...

  8. 終于解決调用wordpress 4.3 xmlrpc api 发布包含分类的文章时返回“抱歉,文章类型不支持您的分类法”错误的問題

    這個問題我找了很多資料都沒有明說是如何解決,后來突發奇想得出我的解決方案如下,所以特此記錄一下: object postId = blogService.NewPost(0,"admin&q ...

  9. Wordpress显示文章摘要

    放在文章的循环里: <?php if (!empty($post->post_excerpt) ) { //如果文章有摘要则输出摘要 the_excerpt(); } ?>

随机推荐

  1. LeetCode_Unique Paths

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The ...

  2. 如何在Protel99se中批量修改元件的封装

    有时候需要批量修改元件的封装,可在原理图和PCB中批量修改.本文以批量修改电阻AXIAL0.3 的封装为AXIAL0.4 为例. 1. 在原理图中批量修改1.1. 方法1双击需要修改封装的其中一个元件 ...

  3. 【Xamarin-IOS 开发环境搭建】

    MAC 比较贵,虚拟机的干活..... 配置完虚拟机.进去后 ,安装XCode的 时候 ,失败了.错误信息: But when i have tried to install the Xcode it ...

  4. JAVA日期处理(Timestamp)

    要写一些与数据库连接时的日期处理,pstmt.setDate()的类型是java.sql.Date类型,这种符合规范的类型其实并没有把时分秒存进数据库,所以存取时就应该用setTimestamp()或 ...

  5. CentOS7 定时检测进程占用内存大小,执行重启进程操作(xjl456852原创)

    在使用CentOS时,个别程序的进程会一直增大,直到宕机.但是这种程序本身有没有更好的版本使用(比如ngrok免费就这样,付费的就没这个问题),所以想写一个脚本定时检测一下这个程序的情况,决定是否需要 ...

  6. python批量下载

    # -*- coding: utf-8 -*-__author__ = 'Administrator'from PyQt4.Qt import *from PyQt4.QtCore import *f ...

  7. px 和 em换算

    常用px,pt,em换算表 pt (point,磅):是一个物理长度单位,指的是72分之一英寸. px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理 ...

  8. StoryBoard 加入一个自定义View

    1. 建一个 UIView的子类(MyView.h/MyView.m) 2. 建一个 View类型的XIB 3. 把xib的file‘s owner设为MyView 4. 在.h文件里加上 @prop ...

  9. Microsoft Dynamics CRM 2016 增强版的解决方案(CRM新特性,开发者的福利)

    CRM在以前的版本中,如果你改变了一个字段(组织A)然后打算导入到其他组织(组织B),你必须创建一个解决方案,包括完整的实体,并导出导入.然而,如果其他团队成员正在相同的实体做了自定义但不想让这些变化 ...

  10. 编译U-boot时,make[1]: *** 没有规则可以创建mkimage.o”

    执行完make smdk2440_config 对Uboot重行编译怎么会出现这样的错误 make[1]: Entering directory `/home/win/S3-ARM/Part4/ubo ...