您当前的位置:首页 > TAG信息列表 > pre-get-posts
将PRE_GET_POST应用于管理区域中的特定自定义帖子类型
我已经创建了一些CPT,并希望有一个自定义帖子类型可以从其他帖子类型中查询。因此,我所做的是使用以下代码来更改查询:add_filter(\'pre_get_posts\', \'code_to_alter_query\', 10); function code_to_alter_query($query) { // If not backend, bail out if( !is_admin() ) return $query; $cpts
如何按自定义分类对帖子进行排序?
我正在尝试按自定义分类法对帖子进行排序。我有一个自定义的帖子类型course-cpt 我在其中创建了自定义分类法,我需要按course-level (这是分类学术语),因此显示如下:课程名称级别1、课程名称级别2、课程名称级别3等我目前的职能如下。php:add_action( \'pre_get_posts\', \'reorderByCourseLevel\' ); function reorderByCourseLevel( $query ) { if ( $qu
PRE_GET_POST和$QUERY->IS_PAGE()的奇怪问题
在我虚构的插件中使用了以下代码来重定向页面中未登录的用户173 (ID)至sample-page (缓动)。代码运行良好。但就在今天,我发现该代码在Firefox中引起了注意。当我试图从Settings»Reading中将静态页面设置为首页时,出现了这个问题。Notice: 正在尝试获取中非对象的属性/wp-includes/class-wp-query.php 在线3760Notice: 正在尝试获取中非对象的属性/wp-includes/class-wp-query.php 在线3762Notice:
使用$QUERY->集合超级混淆‘pre_get_post’行为
几个小时来,我一直在为这个奇怪的问题发愁,需要一些人帮助我弄清楚到底发生了什么。请允许我解释我的设置,然后是行为和问题。设置:我已将“帖子页面”设置为域。com/search/where我打算列出我的所有帖子。由于我需要一个自定义布局来显示我的帖子,我在“template\\u include”挂钩中进行了以下重定向:/*Use custom template to render posts on /search/ */ if ( is_home() ) { return plug
Pre_Get_Posts-编辑查询,Tax_Query
我试图根据用户输入的内容过滤结果。function custom_archive() { if ( is_post_type_archive( \'profiles\' ) ) { // if we are on a profiles archive page, edit the query according to the posted data. $data = $_POST[\'networks\'];
PRE_GET_POST在自定义发布上出现404错误
我知道这已经以不同的方式被报道了上千次(我阅读了所有的帖子),但似乎并不是针对我的情况。我自己真的无法让它发挥作用,因为我是一个大的发展障碍。我有一个模板,它显示了头版上最后的帖子。我将显示的帖子类型更改为question (我的网站是一个问答网站),但页面只显示了13页,而有29页的问题。13页是非自定义类型普通帖子的数量。所以我在functions.php: add_action( \'pre_get_posts\', function($q) { if( !is_admin() &
如何使用搜索参数修改分类存档页面?
我有一个分类法叫做topic。如果用户登录此存档页example.com/topics/wordpress/ 我需要把所有有wordpress 标题或描述中的单词。我添加了以下代码来实现它。function pp_change_page_layout( $query ) { if ( $query->is_main_query()) { if ( is_tax(\'topics\') ){ $
如果帖子标题中有该词,WordPress标签或自定义分类将返回所有帖子
注意:在这个问题中,“标记”是指标记或自定义分类法(假设它是主题)。很难用语言来解释我的问题。所以我将用下面的例子来解释它。用户访问时示例。com/tag/google/or示例。com/topic/google/应该删除所有标题中有“google”单词的帖子。我将使用pre_get_posts 更改循环的操作。但我不知道如何修改循环。我在里面找不到任何东西WP Query 文件也包括在内。
如何覆盖查询并按ID显示特定页面?
我需要构建一个脱机页面,第一个想法是简单地获取所需的页面ID并执行wp\\u重定向,但这会留下一个页面的URL以重定向到。function _action_offline_mode( $template ){ if( is_admin()){ return; } $offline = get_option(\'offline\',\'inactive\'); $off_page = ge
将搜索查询限制在特定日期之后
此代码无效add_filter( \'pre_get_posts\', \'search_filter\' ); function search_filter($query) { if ( ! is_admin() && $query->is_main_query() ) { if ($query->is_search) { $query->set( array( \'date_query\' => arr
PRE_GET_POST-正在尝试获取非对象警告的属性
在上运行时,此代码输出以下警告pre_get_posts 措施:Trying to get property of non-object指向这条线:if( \'edit\' == $screen->base && \'my_post_type\' == $screen->post_type && $order_by == \'0\' ) {为什么我会收到这个警告? public function my_post_type_default_sort( $qu
在PRE_GET_POST中设置数组术语时遇到问题
我正在尝试根据我为用户设置的自定义字段筛选帖子。allowed_categories 是“添加新用户/编辑用户”页面上的多选自定义字段,管理员可以选择用户有权访问分类中的哪些术语。在这种情况下,分类法是product_cat. 我添加了一个用户并选择了一些术语,效果很好。我编写了一个函数,该函数应该获取用户分配到的产品类别,并根据这些值过滤返回的结果。问题是它不起作用?可能忽略了一些简单的东西。。打印时返回的内容allowed_categories 来自当前用户。Array (
难道我不能通过这个过滤器修改主查询吗?
My Situation :我的主题中有一个自定义的帖子类型,名为article. 我的网站有十几个类别,我在其中发布我的帖子,1specific 类别(命名BLOG) 只是为了发布article 在其中(没有post 仅在其中article).我的文章有不同的结构,所以我不能将它们显示在与我在档案中显示的普通文章相同的列表中。所以,我决定只在BLOG 类别,以及其他类别中的正常职位。这是我档案中的正常循环。php:if ( have_posts() ) { while ( have_po
两个日期之间的PRE_GET_POSTS查询(日期存储在自定义发布元中)
我有一个自定义的帖子类型,其中有一个自定义的日期字段。在帖子列表上(edit.php)I want to be able to filter posts between 2 dates based on the custom post meta date (非发布日期),此字段为_exm_date.我读过以下文章:https://rudrastyh.com/wordpress/date-range-filter.html这对于实际的发布日期非常有用,但对于它使用的自定义字段则不适用date_query.因
在自定义字段/帖子元中按日期值筛选的存档列表?
(Moderator\'s Note: 最初的标题是“使用带有自定义日期的按日期存档”)我在帖子中添加了一个额外的日期作为自定义字段。现在,我希望存档按自定义日期而不是按发布日期显示帖子。例如,我今天发布了一篇帖子(12月22日),但自定义日期设置为1月1日。加载URL时archives/date/2011/01 在浏览器中,不显示与自定义日期匹配的帖子(显然)是否有方法修改为生成的页面的行为archives/date/2011/01 URL以便按自定义日期检索帖子?谢谢
为帖子/自定义帖子类型和所有内容创建多个搜索功能
我目前正在一个wp网站上开发搜索功能。计划是在新闻页面上设置搜索功能,只搜索帖子。我通过在我的函数中添加以下内容来实现这一点。php文件: /* search just posts */ function SearchFilter($query) { if ($query->is_search) { $query->set(\'post_type\', \'post\'); } return $query; } a
Pre Get帖子更改查询
我需要更改分类中的帖子。php页面。我有一个meta\\u键,我想将其与meta值进行比较。但目前我的代码没有返回任何内容。我肯定我错过了什么。请让我知道我做错了什么!add_action(\'pre_get_posts\', \'add_event_date_criteria\'); function add_event_date_criteria(&$query) { // We only want to filter on \"public\" pages
在类别页面上显示自定义帖子类型,但不在博客列表上显示
我认为这是一个相当简单的问题,但我还没有意识到这一点。Question: how do I get my custom posts to show only on the category archives, but not in the blog post listing page?背景:我有一个自定义帖子类型“video”,其中has\\u archive true和“taxonomies”=>数组(\'category\',post\\u tag\')-我想将标准类别与此自定义帖子类型一起使用
每次查询时都会触发“PRE_GET_POST”
如何仅更改主查询的参数,而不影响其他查询?add_filter(\'pre_get_posts\', \'custom_post_count\'); function custom_post_count($query){ $query->set(\'posts_per_page\', 5); return $query; }; 由于此操作是在WP\\u Query的get\\u posts方法中调用的,因此此代码将更改所有循环(而不仅仅是main)的
Pre_Get_Posts或分类与作者之间的关系
我有一个自定义分类法叫做coauthor. 在edit.php 屏幕上,我正在尝试筛选并仅显示当前用户编写的帖子OR 由当前用户共同撰写的帖子。我可以拿到帖子authored 当前用户:function get_authored_posts($query) { global $user_ID; $query->set(\'author\', $user_ID); return $query; } add_filter(\'pre_ge