您当前的位置:首页 > TAG信息列表 > pre-get-posts
限制分类页面上显示的自定义帖子数量
我正在使用一种自定义的帖子类型,它使用两种分类法“颜色”和“样式”。我有一个剧本(from this thread) 将它们分组在一起,因此当您在颜色分类页面上时,它们按样式分组,如下所示:蓝色>样式1产品1产品2产品3产品4产品5蓝色>样式2产品1产品3产品3产品4产品5产品3产品3产品4产品4产品5产品5产品5产品2产品1产品3产品3产品3产品4产品4产品5产品5产品5产品5产品5产品5产品现在一切都很好,但每个帖子都会返回。我想限制每种风格的前三篇帖子。我知道我可以像下面这样做,但它限制
为什么PRE_GET_POSTS在POST类型存档中运行良好,但在搜索结果列表中不起作用?
我已经用pre_get_posts 过滤器(如下所示),通过自定义字段“startdate2”按日期排序。这适用于WooCommerce产品列表,但不影响通过相同模板显示的搜索结果列表的排序(archive-product.php).搜索结果中的产品帖子总是顺序错误。我试了很多次,但都没用,我也不知道为什么。是不是pre_get_post 筛选器不适用于搜索结果?还是有必要再写一次pre_get_post 是否仅筛选搜索结果列表?我还在模板中尝试了一个额外的查询,只针对“is\\u search()”-但
使用元查询和用户元排除帖子
我有一个循环,它工作得很好,完全符合我的要求。问题是,我需要排除已经标记为使用add_user_meta查看的特定帖子。使用update\\u user\\u meta和值为“1”的帖子id将每个帖子标记为已查看。$_goal = $_GET[\'goal\'] != \'\' ? $_GET[\'goal\'] : \'\'; $calmargs = array(\'post_type\'=>\'yoga_post\',\'goal\'=>$_goal,\'orderby\'=>
显示所有帖子,即使URL指向单个帖子
我试图设计一个主题,所有帖子在网格布局中始终可见,使用index.php 作为我的单一模板。即使访问与单个帖子匹配的URL,也会显示所有帖子,只有一个和URL匹配的帖子会以某种方式突出显示。这就像主页上的魅力(http://example.com/), 但如果我想访问帖子(http://example.com/mycategory/mypostname) 它没有显示任何内容。我尝试设置一个pre\\u get\\u posts挂钩,如下所示:function preGetPosts( $query ) {
获取First Post内容并使用PRE_GET_POST(或类似?!)进行编辑
我有一个自定义插件,可以创建一个管理设置页面,包含3个字段:帖子、页面ID和消息。我试图抓取首页列表上显示的第一篇帖子,并将“消息”字段的内容添加到内容的开头。我是在一个插件中完成这项工作的,我不知道如何连接到主页帖子列表,在那里获取第一篇帖子,并在内容之前添加“消息”,然后将其返回。我想这与pre\\u get\\u posts挂钩有关,但我就是想不出正确的方法。以下是插件的完整PHP,一切正常,我现在无法找到获取第一篇帖子内容的正确方法:(<?php /* Plugin Name
如何使用PRE_GET_POSTS更改类别页面的POSTS_PER_PAGE,其中‘POSTS_PER_PAGE’将是动态的
我在WordPress的编辑类别页面中有带有自定义字段的类别模板。有一个自定义字段用于在分类页面中显示每页的帖子数量。我正在使用pre_get_posts 更改默认值posts_per_page 对于类别页面。以下是我的功能:function my_limit_posts_per_cat_page( $query ){ $cat_id = get_query_var(\'cat\'); $cat_data = get_option(\"category_$cat_id\"); $c
WP查询-首先按元字段对帖子进行排序,然后对其余帖子进行排序
我正在尝试订购带有自定义元字段的产品帖子类型,以确定过期日期。我想展示所有即将到期的产品(首先是即将到期的产品)。在它们之后,我想按字母顺序显示所有剩余的过期日期为空或缺失的产品。我有这个pre_get_post 挂钩:$meta_query = array( \'relation\' => \'OR\', array( \'key\' => \'expiring_date\',
更改META_KEY时菜单消失
Menu disappears example我给你发送了附件中的链接,这样你就可以看到菜单在下面的自定义过滤器更改中消失。如果选择“最近”(不影响meta\\U键),菜单会很好地显示,但如果选择“价格”,所有菜单都会消失。代码如下:if ( ! function_exists( \'noo_landmark_addon_pre_get_posts\' ) ) : function noo_landmark_addon_pre_get_posts( $query ) {
使用自定义下拉列表对搜索结果进行排序
我在搜索结果页面(search.php)上有以下用于排序的选择下拉代码,该页面适用于自定义字段。<div id=\"sortby\"> SORT BY: <select class=\"dropdown-class\" name=\"sort-posts\" id=\"sortbox\" onchange=\"document.location.href=location.href+this.options[this.selectedIndex].value
偏移页面循环和分页
我一直在努力获取索引的主循环。php可以正确使用WP\\U查询函数。我需要在顶部的6个特色图像网格阵列不被抵消,而抵消了6个职位下面的主要职位循环。任何涉及query\\u posts()的操作都不可避免地会破坏分页。使用单个循环可以修复分页问题,但不希望将偏移应用到特征网格部分。我已经使用WordPress codex推荐的pre\\u get\\u posts修复程序成功地实现了分页主循环https://codex.wordpress.org/Making_Custom_Queries_using_O
如何根据页面标题从WP搜索中排除页面
我需要禁用我们网站的封闭内容,使其无法显示在搜索结果中。目前,我使用以下代码按帖子ID排除页面:// Exclude gated content (download pages) from site search function mm_search_filter( $query ) { if ( ! $query->is_admin && $query->is_search && $query->is_main_query(
WordPress不随POSTS_PER_PAGE变化的帖子数
我在主页上显示了数千篇帖子。我想控制帖子的数量,所以为此我使用posts_per_page但这对我不起作用。所有其他参数都有效,但posts_per_page 不工作。我在这一页上分页,并且posts_per_page 适用于所有其他分页页面,但不适用于第一页(主页)。因此,出于测试目的,我创建了一个空白模板,它只有一个简单的WordPress循环,没有分页或任何其他只显示文章标题的内容,在这个模板中,我对文章的数量有限制,但是posts_per_page 甚至在此页上也不起作用。我尝试过禁用所有插件,但
如果字段为空,则从Pre_Get_Posts中排除WordPress帖子
我有一个CPT归档页面,如果字段为空,我想从中排除某些帖子。我想找的领域是title_group 我已经在使用不同的meta\\u键对结果进行排序。我不知道如何使用第二个键来排除帖子。感谢您的关注!function set_posts_per_page_for_attorneys_cpt( $atty ) { if ( !is_admin() && $atty->is_main_query() && is_post_type_archive( \'atto
Change searched term
因此,我正在尝试设置一个搜索表单,其中实际搜索的词与用户输入的词不同。具体来说,我需要删除搜索词中的任何破折号。例如,假设用户输入“7-18”。搜索实际需要查询的是“718”。我在想pre_get_posts 也许是一种方式,但我不知道如何去写它。类似于function alter_query($query) { $unedit = the_search_query(); $edited = str_replace(\"-\",\"\",$unedit); the_sea
使用PRE_GET_POST将orderby设置为自定义字段
我正在使用ACF插件创建自定义字段,这些字段将应用于自定义帖子类型(项目)。在我的功能中。php文件我正在尝试使用pre\\u get\\u posts来使用自定义字段更改自定义post类型存档的顺序。function apply_projects_query_filter ($query) { if (is_admin()) { return $query; } if (is_archive() &&
将存档上的发布顺序更改为按主题忽略的最多评论显示
我正在尝试将我的归档页面更改为按评论最多的顺序排列,但由于我的主题,我想这会被忽略。这是我放在自定义函数文件中的代码,但它并没有改变顺序。add_action ( \'pre_get_posts\', function ( $query ) { if ( $query->is_archive() && !is_admin() && $query->is_main_query()
我应该使用哪种筛选器/操作来为“虚拟”文件提供内容
我正在开发一个自定义帖子类型的插件,其真实内容缓存在redis数据库中。当用户请求时http://my-site/some-post 我的插件从redis检索内容并检索它。现在我需要为孩子后的资产提供服务http://my-site/some-post/picture.jpg 或http://my-site/some-post/subdir/media.mp3 插件也应该从redis中检索到这些内容,但是我很难弄清楚如何在wordpress中处理这些内容,因为它们实际上并不存在于目录中。Wordpress
修改PRE_GET_POSTS中的查询操作打乱了我的导航菜单
我正在修改自定义存档页的查询。我正在使用pre\\u get\\u posts操作。我需要捕获一些GET变量来修改我的查询。对于一种自定义的帖子类型,它在归档页面上工作得很好,但对于其他类型的帖子,它却不起作用。它正在破坏我的导航菜单。add_action( \'pre_get_posts\', \'search_provider\'); function search_provider($query){ if(is_post_type_archive(array(\'provider\'
带有Pre_Get_POST的多个元密钥排序
我正在尝试通过多个元键订购产品,以便最畅销的产品首先出现,最后是缺货的产品。我最终设法让缺货的产品参展,但卖得最多的产品没有正确订购。我在cenario测试,5种产品,2种缺货(最后显示),其他3种都是这样订购的,第一个销量较少,第二个销量最多,最后一个。。。 $meta_query = array(\'relation\' => \'AND\'); $meta_query[] = array( \'key\' => \'_stock_status\'
WP_QUERY在IS_SINGLIC时忽略TAX_QUERY
我正在尝试使用分类法设置一些post权限,并在pre_get_posts 行动当发现多个帖子时,它工作正常,但在class-wp-query.php 近的line 2060, 特别是没有应用tax_query 规则何时is_singular 是true.有没有办法在不修改核心的情况下解决这个问题?