alleyinteractive / internal-flags

使用隐藏的分类法来提高昂贵的查询。

安装次数: 9,267

依赖: 0

建议者: 0

安全: 0

星标: 5

关注者: 34

分支: 1

开放问题: 0

类型:wordpress-plugin

v0.2.0 2022-07-27 04:00 UTC

This package is auto-updated.

Last update: 2024-09-21 23:30:04 UTC


README

Testing Suite

创建一个隐藏的分类法,通过不依赖元查询来提高昂贵的查询性能。允许轻松地对文章设置/取消设置“标志”,并完全隐藏给最终用户。

说明

默认情况下,内部分类法将被添加到所有注册的文章类型。

常见用例

  • 隐藏于归档/搜索中
  • 作者的帖子(通常存储为元数据)
  • 显示/隐藏赞助帖子

用法

在帖子上设置标志

use Internal_Flags\set_flag;
set_flag( 'hide-from-archives', $post_id );

从帖子中移除标志

use Internal_Flags\remove_flag;
remove_flag( 'hide-from-archives', $post_id );

检查帖子上的标志是否存在

use Internal_Flags\has_flag;
has_flag( 'hide-from-archives', $post_id ); // bool

搜索带有标志的帖子

use Internal_Flags\get_flag_tax_query;
$posts = new \WP_Query(
	[
		// ...
		'tax_query' => [
			get_flag_tax_query( 'show-on-page' )
		],
	],
);

搜索没有标志的帖子

上述操作的逆操作

use Internal_Flags\get_flag_tax_query;
$posts = new \WP_Query(
	[
		// ...
		'tax_query' => [
			get_flag_tax_query( 'hide-from-archives', false )
		],
	],
);