欢迎来到站长教程网!

PHP教程

当前位置: 主页 > 网络编程 > PHP教程

WordPress 实现通过自定义字段查询和排序

更新时间:2025-05-02 04:22:21|栏目:PHP教程|点击:11 次

WordPress建网站时,可以根据指定自定义字段进行排序,也可以按照指定字段查询需要的类型。这些功能都是通过WP_Query()方法来实现的。下面分享一下二种代码。

 

WordPress通过自定义字段进行排序

<?php
$args = array(
'post_type' => 'product',//文章类型,可删除
'orderby' => array(
'meta_value_num'=>'ASC'
),
'meta_key' => 'sortnum',//sortnum是字段名
);
$query = new WP_Query( $args );
while ($query->have_posts()) : $query->the_post(); ?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile; ?>
<?php wp_reset_query();?>

 

还可以这样写:(可以排除指定分类)

<?php
$args=array(
'meta_key' => 'views',//字段名
'orderby' => 'meta_value_num',//按字段值排序
'post__not_in' => get_option( 'sticky_posts' ),//排除置顶文章
'category__not_in' => array(1,2),//排除指定分类数组
'posts_per_page'=>8,//显示文章数量
'order' => 'DESC'
);
query_posts($args); while (have_posts()) : the_post();?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile;wp_reset_query();?>

 

还可以这样写:(可以指定分类)

<?php
$args=array(
'meta_key' => 'views',//字段名
'orderby' => 'meta_value_num',//按字段值排序
'post__not_in' => get_option( 'sticky_posts' ),//排除置顶文章
'cat' => '1',//指定分类数组
//'category__in'=>array(1,2,3),
'posts_per_page'=>4,//显示文章数量
'order' => 'DESC'
);
query_posts($args); while (have_posts()) : the_post();?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile;wp_reset_query();?>

 

WordPress通过自定义字段进行查询

<?php
$args = array(
'meta_query'=>array(
array(
'key'=>'disabled',
'value'=>1,
'compare'=>'='
)
),
'showposts' =>6,
);
$query = new WP_Query( $args );
while ($query->have_posts()) : $query->the_post(); ?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile; ?>
<?php wp_reset_query();?>

 

也可以二者结合在一起实现查询和排序。

<?php
$args = array(
'post_type' => 'product',//文章类型
'orderby' => array(
'meta_value_num'=>'ASC'
),
'meta_key' => 'sort',//排序字段
'meta_query'=>array(
array(
'key'=>'disabled',//查询字段
'type'=>'NUMERIC',//类型:数值:NUMERIC 字符:CHAR 二进制数:BINARY
'value'=>1,
'compare'=>'='
)
),
'showposts' =>6,
);
$query = new WP_Query( $args );
while ($query->have_posts()) : $query->the_post(); ?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile; ?>
<?php wp_reset_query();?>

 

如果想多个条件筛选,可以在代码里多加array,如下:

<?php
$args = array(
'orderby' => array(
'meta_value_num'=>'ASC'
),
'meta_key' => 'paixu',//排序字段
'meta_query'=>array(
'relation' => 'AND', // AND:必须同时匹配 OR:任意一个匹配
array(
'key'=>'paixu',//筛选字段1
'value'=>'',
'compare'=>'!='//不为空
),
array(
'key'=>'演示网站',//筛选字段2
'value'=>'dedeym',
'compare'=>'LIKE'
)
),
'showposts' =>10,//显示数量
);
$query = new WP_Query( $args );
while ($query->have_posts()) : $query->the_post(); ?>
<li> <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a></li>
<?php endwhile; ?>
<?php wp_reset_query();?>

上一篇:PHP中实现一个简易三角形的方法

栏    目:PHP教程

下一篇:PHP 7安装使用体验之性能大提升,兼容性强,扩展支

本文标题:PHP中实现九九乘法口诀表

本文地址:http://tp2.com/index.php?m=home&c=View&a=index&aid=172

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:88888888 | 邮箱:888petersds@gmail.com

Copyright © 2002-202X 某某站长教程网 版权所有 非商用版本粤ICP备xxxxxxxx号