它叫post state, 但不要与职位状态混淆(publish
, draft
, 等等)(虽然状态当然可以包含post状态),以及添加post状态的核心WordPress函数,如Privacy Policy Page
至帖子(帖子、页面、CPT)列表为_post_states()
, 但是状态是使用get_post_states()
激发了display_post_states
filter 您可以使用它添加自己的post状态。
例如,这增加了Foo State
到ID为123的帖子:
add_filter( \'display_post_states\', \'my_post_states\', 10, 2 );
function my_post_states( $post_states, $post ) {
if ( 123 === $post->ID ) {
$post_states[\'foo_state\'] = \'Foo State\';
}
return $post_states;
}
更新
回复您的第一条评论:
这些post状态保存在数据库中的什么位置?
请注意,a“;“后状态”;实际上只是该帖子当前所处的一个特定条件,就像;隐私政策“;页面,该页面是相关网站上当前的隐私政策页面。因此,它当前的状态/条件是,它是隐私政策页面。
如果稍后您创建了一个新页面并将其设置为隐私策略页面,则该新页面将具有Privacy Policy Page
状态。同样,如果您更改了WooCommerce设置,其中您选择了一个新页面作为购物车页面,那么在页面列表表中,新选择的购物车页面将具有Cart Page
状态,而不是旧的购物车页面。
例如,如果您有一个自定义登录页面,您可以添加一个标记为Login Page
发送到(页面)列表中的帖子,以便用户知道这是当前的自定义登录页面,就像WooCommerce对购物车、结帐和;“我的帐户”;第页。
因此,在上述情况下,post状态本身不会保存在数据库中,但它们是基于数据库中的post数据形成的,例如post ID、类型、状态等(以及wp_options
表中的post metawp_postmeta
(桌子等)
还有其他默认/核心帖子状态可以检查here, 但其中两个是:
Front Page
— 如果主页设置为static front page (岗位类型page
)Posts Page
— 如果您的;博客/贴子页面设置为自定义页面(贴子类型page
) — 有关更多信息,请参阅上面的链接回复您的第二条评论:
张贴状态是否仅显示在WP管理区域内,或是否可以显示在网站面向公众的部分?
它可能是前者(用于管理),但如果您愿意,您可以在面向公众的部分显示帖子状态-WordPress没有禁止您在管理区域之外显示帖子状态。但是,后状态函数在中定义wp-admin/includes/template.php
, 因此,您需要手动加载它。