wordpress关于日志的常用函数-get_posts

2023-10-08 02:38

本文主要是介绍wordpress关于日志的常用函数-get_posts,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

模板标签-get_posts
说明

这是一个用于创建多环路的简单标签。用于检索最新的或者匹配条件的文章列表。
注意,虽然参数与get_pages方法类似,但是有几个参数略有不同。
 
用法
 <?php $posts_array = get_posts( $args ); ?> 
默认情况下的用法
<?php
 $args = array(
    'numberposts'     => 5,
    'offset'          => 0,
    'category'        => ,
    'orderby'         => 'post_date',
    'order'           => 'DESC',
    'include'         => ,
    'exclude'         => ,
    'meta_key'        => ,
    'meta_value'      => ,
    'post_type'       => 'post',
    'post_mime_type'  => ,
    'post_parent'     => ,
    'post_status'     => 'publish' );
$posts_array = get_posts( $args );
 ?> 
 
最初到现在的文章列表
如果在博客首页上只设置显示一篇文章,但同时希望在分类ID 1中显示最近五篇文章的链接,可使用如下代码:
 <ul>  
<?php  
global $post;  
$myposts = get_posts('numberposts=5&offset=1&category=1');  
foreach($myposts as $post) :  
?>     
   <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>  
 <?php endforeach; ?>  
 </ul>  
注意使用offset时,以上查询仅适用于含有一篇以上文章的分类,否则无法输出。
获取所有文章资料
默认情况下get_posts无法获取一些文章相关数据,如通过 the_content()获取文章内容或序列ID。调用内部函数setup_postdata(),以$post 数组为其自变量,可以解决这一问题:
<?php  
$lastposts = get_posts('numberposts=3');  
foreach($lastposts as $post) :     
   setup_postdata($post);  
?>  
<h2><a href="<?php the_permalink(); ?>" id="post-<?php the_ID(); ?>"><?php the_title(); ?></a></h2>  
<?php the_content(); ?>  
<?php endforeach; ?> 
不希望通过调用setup_postdata()来获取文章的ID或内容,或者获取文章的任何相关数据时(数据存留在文章列表中),可以使用$post->COLUMN,COLUMN是文章数据表格的纵列名称。因此$post->ID指明文章ID,$post->post_content指明文章内容,以此类推。如要在页面上显示这些数据,请使用PHP echo命令,如下所示:
<?php echo $post->ID; ?>  
按标题为最新发表文章排序
以下代码可按字母升序显示最近发表的十篇文章的发布日期、标题和摘要:
<?php 
$postslist = get_posts('numberposts=10&order=ASC&orderby=title'); 
foreach ($postslist as $post) :      
   setup_postdata($post); 
?>   
<div> 
<?php the_date(); ?>  
<br />
<?php the_title(); ?>     
<?php the_excerpt(); ?>  
</div>  
<?php endforeach; ?>    
注意排序参数在2.6版本中有所修改。此代码适用于新排序格式。详细内容参见参数。
任意文章
用MySQL RAND()函数指定排序参数的值,可以显示出随意选择的五篇文章:
<ul><li><h2>A random selection of my writing</h2>     
   <ul>  
<?php  
$rand_posts = get_posts('numberposts=5&orderby=rand');  
foreach( $rand_posts as $post ) :  
?>     
   <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>  
<?php endforeach; ?>     
   </ul>  
</li></ul>  
 
显示所有附件
不用模板中任何循环进行本项操作。
(使用2.5版本后的get_children()函数相对方便。)
<?php   
$args = array(        
       'post_type' => 'attachment', 
       'numberposts' => -1,   
       'post_status' => null,        
       'post_parent' => null, // any parent 
       );  
$attachments = get_posts($args); 
if ($attachments) {   
      foreach ($attachments as $post) {             
              setup_postdata($post);                
              the_title();           
              the_attachment_link($post->ID, false);                
              the_excerpt();  
      } 
}   
?> 
显示最新文章的附件
The_Loop($post->ID可用)中进行本类操作。
 
<?php  
 
$args = array(        
       'post_type' => 'attachment', 
       'numberposts' => -1,   
       'post_status' => null,        
       'post_parent' => $post->ID    
       );  
$attachments = get_posts($args); 
if ($attachments) {   
      foreach ($attachments as $attachment) {               
              echo apply_filters('the_title', $attachment->post_title);            
              the_attachment_link($attachment->ID, false); 
      } 
}    
?> 

参数:WordPress 2.6+
除“WordPress 2.5及更早版本”中列出的参数外,get_posts( )也能运行query_posts( )所操作的参数,目前这两个函数在内部使用相同的数据库查询代码。
注意:2.6版本对一些排序选项做了更改。表格字段前不再含有post_字样。如post_title已被改为title,post_data改为data。
 
参数:WordPress 2.5及更早版本
$numberposts

(整数)(可选)将要返回的文章数量。将其设为0可在每页上显示最大数量文章数,设为-1可消除限制。
默认值:5
$offset
(整数)(可选)以最新文章为起始位
默认值:0
$category
(整数)(可选)仅显示本分类编号下的文章。将分类编号设为负数(如果是3,设为-3),显示结果不匹配。用逗号将分类编号隔开,或传递编号数组,可指定多个分类编号。
默认值:None
$category_name
(字符)(可选)仅显示本分类名称或分类缩略名下的文章。
默认值:None
$tag
(字符)(可选)仅显示本标签缩略名下的文章。若指定多个用逗号隔开的标签缩略名,则返回结果是:所有文章都与某个标签匹配。若指定多个用空格隔开的标签缩略名,返回结果是:所有文章都与指定标签缩略名匹配。
默认值:None
$orderby
(字符)(可选)按不同值(用空格隔开)为文章排序,包括:

  • 'author' —— 按作者数值编号排序
  • 'category' —— 按类别数值编号排序
  • 'content' —— 按内容排序
  • 'date' —— 按创建日期排序
  • 'ID' —— 按文章编号排序
  • 'menu_order' —— 按菜单顺序排序。仅页面可用。
  • 'mime_type' —— 按MIME类型排序。仅附件可用。
  • 'modified' —— 按最后修改时间排序。
  • 'name' —— 按存根排序。
  • 'parent' —— 按父级ID排序
  • 'password' —— 按密码排序
  • 'rand' —— 任意排序结果
  • 'status' —— 按状态排序
  • 'title' —— 按标题排序
  • 'type' —— 按类型排序

注意

  • 按编号排序和任意排序自2.5版本起启用。

默认值:post_date
$order
(字符)(可选)如何对$order排序。可能的值为:

  • 'ASC' —— 升序 (低到高)
  • 'DESC' —— 降序 (高到底)

默认值:DESC
$include
(字符)(可选)希望显示的文章编号,用逗号和/或空格隔开。显示六篇文章时,下列值可能生效:

  • '45,63,78 94,128,140'

注意:该参数将改写numberposts,offset,category,exclude,meta_key,meta_value,及post_parent参数。
默认值:None
$exclude
(字符)(可选)不希望显示的文章编号,用逗号和/或空格隔开(参见$include参数)。
默认值:None
$meta_key 和$meta_value
(字符)(可选)仅显示含有该关键词和值的元(自定义)字段的文章。两项参数都应定义,否则无法运行。
默认值:None
$post_type
(字符)(可选)希望显示的文章类型。可选项有:

  • post —— 默认
  • page
  • attachment
  • any —— 任意文章类型

默认值:post
$post-status
(字符)(可选)显示特定状态的文章。可选项有:

  • publish
  • private
  • draft
  • future
  • inherit —— 若$post_type设为附件,则此项为默认选项
  • (blank)—— 所有状态

默认值:publish
$post_parent
(整数)(可选)显示此文章编号下的子文章
默认值:None
$nopaging
(布尔型)(可选)激活或禁用分页功能。如果禁用,$numberposts选项被略过。
默认值:None

转载;http://phpff.com/32.html

这篇关于wordpress关于日志的常用函数-get_posts的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/162114

相关文章

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

解读GC日志中的各项指标用法

《解读GC日志中的各项指标用法》:本文主要介绍GC日志中的各项指标用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基础 GC 日志格式(以 G1 为例)1. Minor GC 日志2. Full GC 日志二、关键指标解析1. GC 类型与触发原因2. 堆

MySQL count()聚合函数详解

《MySQLcount()聚合函数详解》MySQL中的COUNT()函数,它是SQL中最常用的聚合函数之一,用于计算表中符合特定条件的行数,本文给大家介绍MySQLcount()聚合函数,感兴趣的朋... 目录核心功能语法形式重要特性与行为如何选择使用哪种形式?总结深入剖析一下 mysql 中的 COUNT

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

MySQL 中 ROW_NUMBER() 函数最佳实践

《MySQL中ROW_NUMBER()函数最佳实践》MySQL中ROW_NUMBER()函数,作为窗口函数为每行分配唯一连续序号,区别于RANK()和DENSE_RANK(),特别适合分页、去重... 目录mysql 中 ROW_NUMBER() 函数详解一、基础语法二、核心特点三、典型应用场景1. 数据分

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

Python get()函数用法案例详解

《Pythonget()函数用法案例详解》在Python中,get()是字典(dict)类型的内置方法,用于安全地获取字典中指定键对应的值,它的核心作用是避免因访问不存在的键而引发KeyError错... 目录简介基本语法一、用法二、案例:安全访问未知键三、案例:配置参数默认值简介python是一种高级编

python 常见数学公式函数使用详解(最新推荐)

《python常见数学公式函数使用详解(最新推荐)》文章介绍了Python的数学计算工具,涵盖内置函数、math/cmath标准库及numpy/scipy/sympy第三方库,支持从基础算术到复杂数... 目录python 数学公式与函数大全1. 基本数学运算1.1 算术运算1.2 分数与小数2. 数学函数