You are here:  Home » PHP » 如何在WordPress中为博客帖子添加自定义帖子状态

您想为WordPress中的博客帖子添加自定义帖子状态吗?帖子状态是一种编辑工具,可让您在编辑工作流程中根据各自的阶段整理文章。在本文中,我们将向您展示如何轻松地将自定义帖子状态添加到WordPress中的博客帖子。

How to add custom post status in WordPress

什么是WordPress中的帖子状态以及您为什么需要它?

帖子状态是一个编辑工具,告诉WordPress编辑期间博客文章的阶段。例如,保存不完整的帖子,其帖子状态标记为“草稿”。发布文章时,状态将更改为“已发布”。

Post status

发布状态有助于WordPress选择如何处理和显示您网站上的博客帖子。例如,它会自动从您的主页和您网站的其他公开可见区域中排除标有草稿的帖子。

默认情况下,WordPress带有以下帖子状态,您可以使用:

  • 草稿 – 已保存但尚未完成但尚未发布的项目
  • 自动草稿 – WordPress具有自动保存功能,可自动将草稿保存为修订版。
  • 待审核 – 已完成并提交审核但尚未发布的项目。
  • 未来 – 计划稍后发布的帖子。
  • 私人 – 标记为私人的项目
  • 垃圾 – 被破坏的物品
  • 继承 – 自动继承其父页面状态的子页面。

除了这些默认的帖子状态,您还可以创建自己的自定义帖子状态,以改善您的编辑工作流程。例如,您可以为完整但不适合发布的帖子添加标签“不适合”。

话虽如此,让我们来看看如何在WordPress中轻松创建自定义帖子状态。

方法1.使用插件创建自定义帖子状态

对于大多数用户来说,这种方法更容易推荐。它允许您创建自定义帖子状态,以及有效管理多作者WordPress博客上的编辑工作流程。

您需要做的第一件事是安装并激活Edit Flow插件。有关更多详细信息,请参阅有关如何安装WordPress插件的分步指南。

激活后,插件会在WordPress管理菜单中添加一个标有“编辑流程”的新菜单项。单击它将转到插件的设置页面。

Edit statuses

Edit Flow附带了许多有用的功能,您可以在此屏幕上打开/关闭它们。继续,单击“自定义状态”框下的“编辑状态”按钮继续。

编辑流程会自动创建以下自定义帖子状态:

  • Pitch – 用于推销新文章的想法,此状态也成为每个新帖子的默认帖子状态。
  • 已分配 – 您可以选择作者并将文章标记为已分配,以便作者可以对其进行处理。
  • 正在进行中 – 作家正在撰写该帖子但尚未作为可读草稿提供。

Add new status

您可以通过在左列中提供名称和说明来创建自己的自定义状态。完成后,单击“添加新状态”按钮以保存更改。

您的自定义状态现在将显示在右侧列中,因此您可以随时编辑或删除它。

Edit status

接下来,你需要去帖子»添加新内容页面创建一个新帖子。在帖子编辑屏幕上,点击“发布”元框下的状态选项旁边的“修改”链接。

Select post status

这将显示一个下拉菜单,显示您可以选择的所有帖子状态,包括您刚刚创建的自定义帖子状态。

您还可以通过访问查看在不同帖子状态下提交的所有文章帖子»所有帖子页。Yè.

Sort posts by status

方法2.使用代码创建自定义帖子状态

WordPress在API中有一个已知错误,用于注册自定义帖子状态。它允许您创建自定义帖子状态,但不能在管理面板中使用它。这意味着编码方法可以完成工作,但它不是那么干净,你需要在正式修复后更改它。

但是,如果您仍想手动执行此操作,则可以继续阅读。

此方法要求您将代码添加到WordPress网站。如果您之前没有这样做,那么请查看我们的指南,了解如何在WordPress中复制和粘贴代码。

首先,您需要将以下代码添加到主题的functions.php文件或特定于站点的插件中。

// Registering custom post status
function wpb_custom_post_status(){
	register_post_status("rejected", array(
		"label"                     => _x( "Rejected", "post" ),
		"public"                    => false,
		"exclude_from_search"       => false,
		"show_in_admin_all_list"    => true,
		"show_in_admin_status_list" => true,
		"label_count"               => _n_noop( "Rejected <span class="count">(%s)</span>", "Rejected <span class="count">(%s)</span>" ),
	) );
}
add_action( "init", "wpb_custom_post_status" );

// Using jQuery to add it to post status dropdown
add_action("admin_footer-post.php", "wpb_append_post_status_list");
function wpb_append_post_status_list(){
global $post;
$complete = "";
$label = "";
if($post->post_type == "post"){
if($post->post_status == "rejected"){
$complete = " selected="selected"";
$label = "<span id="post-status-display"> Rejected</span>";
}
echo "
<script>
jQuery(document).ready(function($){
$("select#post_status").append("<option value=\"rejected\" ".$complete.">Rejected</option>");
$(".misc-pub-section label").append("".$label."");
});
</script>
";
}
}

不要忘记用您自己的自定义帖子状态替换被拒绝的单词的所有实例。

此代码注册自定义帖子状态,之后,它使用jQuery将其添加到管理面板。您现在可以编辑WordPress帖子,并且您可以在状态下拉菜单中看到它。

Custom post status shown in admin panel

我们希望这篇文章能帮助您在WordPress中为博客帖子添加自定义帖子状态。您可能还想看到我们列出的55个最想要的WordPress提示,技巧和黑客。

评论被关闭。