wordpress显示多个分类的文章
显示多个分类下的文章可以这样提取:
<?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显示多个分类的文章的更多相关文章
- [转]WordPress“添加媒体”文件时只显示上传到当前文章的附件图片
使用WordPress的朋友应该都清楚,特别是喜欢图文并茂的网站,肯定离不开的就是WordPress文章编辑页面的“添加媒体”按钮,每次点击就能弹出一个插入多媒体的界面,然后页面默认就会列举加载所有最 ...
- G:首页调用“图片视频”的分类和文章(难点)
1:后台获取:自定义分类的ID (默认分类也可获取) 2:动态获取"自定义分类的ID($cat)" $cat_title = single_cat_title(' ', f ...
- WordPress基础:常用分类列表wp_list_categories
函数:wp_list_categories($args) 作用:列出某个分类下的分类项目 用法: <ul> <?php $args= array( 'depth'=>1, 'o ...
- WordPress显示评论者IP归属地、浏览器、终端设备、电信运营商
在网上查资料闲逛,偶然间看到了张戈博客的评论框有点意思,于是就收走拿到了我的米扑博客. 本文为米扑博客原创:总结分享 WordPress显示评论者IP归属地.浏览器.终端设备.电信运营商 WordPr ...
- WordPress主题开发实例:获取当前分类的文章列表
思路: 如果使用默认的wordpress的方法,调出来的数据就会被后台的显示个数所限制,而我们需要的是自由控制文章数和翻页,所以我使用WP_Query 获取当前分类的方法可以通过 get_query_ ...
- ECSHOP任意页面显示指定分类、数量、排序的任意类型文章,包括只显示置顶or普通的文章
1.在需要使用此功能的PHP页面里最后的?>前面添加以下代码,现在以article.php为例子 /** jinmozhe 专业ECSHOP二次开发 * 获得指定分类ID.文章类型.指定数量.排 ...
- WordPress主题开发:按分类调用文章
调用catid为2的分类下的文章,就是后台分类链接的tag_ID <?php $cat_query = new WP_Query(array( 'cat' => '2' )); ?> ...
- 終于解決调用wordpress 4.3 xmlrpc api 发布包含分类的文章时返回“抱歉,文章类型不支持您的分类法”错误的問題
這個問題我找了很多資料都沒有明說是如何解決,后來突發奇想得出我的解決方案如下,所以特此記錄一下: object postId = blogService.NewPost(0,"admin&q ...
- Wordpress显示文章摘要
放在文章的循环里: <?php if (!empty($post->post_excerpt) ) { //如果文章有摘要则输出摘要 the_excerpt(); } ?>
随机推荐
- altium designer Summer09出现的问题解决方案
在编译原理图时,引脚和连线旁边出现很多红线,提示 error:signal with no driver. 原理图没有加入到Project里. 第一次导入没问题,但是改了个元件的封装,在更新一下(De ...
- 关于ionic传值
今天,也是偶然发现有的初学者对ionic的传值还不太清除,这里我说明一下 例如你想在这个页面传递参数a.b过去,传递到"tab.wait"页面 $state.go("ta ...
- [原创作品]html css改变浏览器选择文字的背景和颜色
又很久没有'剥壳'了,最近在为一家公司做一个生产管理解决方案.所以都很忙.今天的话题很简单,就做一个很简单的网页特效.今天偶然浏览到一个网站,他们在选择文字时,样子不是蓝背景和白色字体那么单调,感觉这 ...
- File类的基本操作之InputStream字节输入流
话不多少,我直接把代码贴上来了.有什么问题请给我留言 package org.mark.streamRW; import java.io.File; import java.io.FileInputS ...
- 老漏洞easy击:CVE-2012 0158占顶!
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXF1c2hp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...
- My way to Python - Day012 - 消息中间件
消息中间件介绍 消息中间件的概念 消息中间件是在消息传输过程中保存消息的容器.消息中间件在将消息从它的源中继到它的目标时充当中间人的作用.队列的主要作用是提供路由并保证消息的传递:如果发生消息接收者不 ...
- (转)ie -ms-interpolation-mode: bicubic 属性详解
ie -ms-interpolation-mode: bicubic 属性详解 img { -ms-interpolation-mode: bicubic; } 这个在做实时缩放图片.缩略图的时候用 ...
- android 隔几秒再执行
今天做项目,需要前面的方法执行完等待2秒在关闭当前页面.之前使用的是Thread.sleep(2000)发现根本没有作用.经过多次尝试,发现需要使用以下方法才能实现: new Thread(){ pu ...
- silverlight 生成图表 WCF 解析XML代码.svc.cs 文件
silverlight 调用wcf 文件代码 private ListItem AnalyzeXML(string XMLCode, string Reportdate, string ChartNa ...
- 在html页头设置不缓存
方法一:在<head>标签里增加如下meta标签. <meta http-equiv="Content-Type" content="text/html ...