我创建了一个名为“Books”的表单,其中包含以下字段:
此表单创建并填充一个名为books的自定义帖子类型,该类型具有自定义元字段:
作者,流派,ISBN编号,状态,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人,发起人。我的wordpress主题中的php模板文件。如果状态为“已发布”,则表单会显示在页面底部,并带有单个文本字段,供用户输入姓名以获得支持,并将状态从“已发布”更改为“已升级”。我花了很多时间在重力论坛网站上寻找答案,我想到了:
add_action("gform_post_submission_5", "books_promoter", 10, 4);
function books_promoter($entry, $form) {
global $post;
global $wp_query;
$post_id = get_the_ID(); // $entry[\'post_id\'];
$post_data[\'status\'] = get_post_meta($postID,\'status\', true);
$post_data[\'promoter\'] = get_post_meta($postID,\'promoter\', true);
$status = $entry[\'5\'];
$promoter = $entry[\'6\'];
update_post_meta($post_id, \'books_status\', $status );
update_post_meta($post_id, \'books_promoter\', $promoter );
}
此函数用于获取帖子ID和空白的帖子元字段,然后更新帖子元。由于某种原因,尽管它不起作用。我想可能是模板文件循环中的$post\\u id,但我想知道是否有人对更好的方法有什么看法。
最合适的回答,由SO网友:Rizzo 整理而成
以下是维修情况,请各位注意:
add_action("gform_after_submission_5", "books_promoter", 10, 4);
function books_promoter($entry, $form) {
global $post;
global $wp_query;
$post_id = get_the_ID(); // $entry[\'post_id\'];
$post_data[\'status\'] = get_post_meta($post_id,\'status\', true);
$post_data[\'promoter\'] = get_post_meta($post_id,\'promoter\', true);
$status = $entry[\'5\'];
$promoter = $entry[\'6\'];
update_post_meta($post_id, \'books_status\', $status );
update_post_meta($post_id, \'books_promoter\', $promoter );
}