wordpress - 更改全局帖子查询(wordpress)

标签 wordpress

我想知道是否有办法改变全局 wordpress posts 查询。

假设我位于标签存档中。我需要能够更改 order 和 posts_per_page 变量

当我使用这个时:

global $wp_query;
$wp_query->set('order', 'ASC');

它更改了变量,但帖子顺序未更改。

创建另一个查询就可以完成这项工作,但这样做需要我对标签、文件、搜索结果等使用不同的查询,这对我来说不是一个选择。

我希望你明白我需要什么。

关于如何解决这个问题有什么想法吗?

谢谢!

最佳答案

我从functions.php修改wordpress查询:

add_action('pre_get_posts','myf88');function myf88($query) {
    if ( !is_admin() && $query->is_main_query() )   {
        if (  $query->is_category ) {
            $query->set('post_type', array('post','page','my_postType') );
            add_filter( 'posts_where' , 'MyFilterFunction_1' ); 
        }
        //for "PAGE" type, this doesnt work (IT is WORDPRESS FAULT) , so you may modify "query_posts" in page.php,before loop
    }
}
function MyFilterFunction_1($where) {global $wpdb;  $where .= " AND ({$wpdb->posts}.post_name NOT LIKE 'Journal%')"; return $where;  }

关于wordpress - 更改全局帖子查询(wordpress),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8080265/

相关文章:

php - 替换 Custormizr 主题的父操作

php - mysql 结果到数组写入 csv 文件?

php - 在 WordPress 中添加管理菜单分隔符

javascript - 当从 jquery 的单击事件中的每个循环创建到其外部的数组时,它显示空白数组

php - 更改 "reset password"woocommerce 的 URL

javascript - Wordpress TinyMCE 向弹出表单添加描述

html - 如何在@media 中使用显示

php - 如何追踪导致 WordPress 错误 500 的原因?

php - 我应该在哪里存储我的多站点 WordPress 插件的全局数据?

php - 安装插件时加载data.csv