是的,可以将一种类型的帖子设置为另一种类型帖子的子帖子。你只需要确保post_parent
在创建帖子/将帖子插入数据库时,参数将随其他帖子数据(post\\u title等)传递。
例如,如果您有一个用于提交申请的自定义表单,则可以在其中的隐藏字段中添加职位ID。
<form id="yourApplicationForm" method="post">
<!-- form fields -->
<input type="hidden" name="job_id" value="<?php echo esc_attr( $job_id ); ?>">
<!-- submit button -->
</form>
提交表单并将数据传递给表单处理程序时,您可以从
$_PSOT
并将其设置为
post_parent
价值
function your_form_submission_handler() {
// code..
// insert application post to database
$application_post = wp_insert_post(
array(
// other_post_field_keys_and_values,
\'post_type\' => \'application\',
\'post_parent\' => absint( $_POST[\'job_id\'] ?? 0 ),
)
);
// code..
}
WordPress很乐意接受作业ID为
post_parent
甚至,如果ID用于其他类型的帖子。
另一方面,如果您正在为应用程序表单使用一些插件或主题功能,那么想法保持不变,但实现可能需要更多挖掘。
基本上,您仍然可以将作业ID作为隐藏字段添加到表单中,但您需要了解表单的保存方式,以及如何过滤表单数据以将作业ID映射为post_parent
申请职位。
如果表单功能还使用wp_insert_post
最后,要将提交内容保存为帖子,您可以使用wp_insert_post_parent
或wp_insert_post_data
过滤器设置post_parent
从…起$_POST
.