Wordpress 使用联系人表单7表单获取帖子元数据
我正在为我的网站使用联系人表单7 Wordpress插件 有人知道我怎样才能得到表格所在帖子的元数据吗Wordpress 使用联系人表单7表单获取帖子元数据,wordpress,metadata,contact-form-7,Wordpress,Metadata,Contact Form 7,我正在为我的网站使用联系人表单7 Wordpress插件 有人知道我怎样才能得到表格所在帖子的元数据吗 在某些钩子中尝试使用全局$POST等,但结果总是空的 我几乎花了一整天的时间思考这个小问题,但最终还是解决了 我使用了这个过滤器“wp_insert_post_data”,它是在保存post数据时执行的。步骤如下: 检查post类型是否为“post”,因此回调代码仅在这种情况下执行 获取文章内容,其中包含表单快捷码(文章中没有其他文本) 然后使用shortcode_parse_atts从那里获
在某些钩子中尝试使用全局$POST等,但结果总是空的 我几乎花了一整天的时间思考这个小问题,但最终还是解决了 我使用了这个过滤器“wp_insert_post_data”,它是在保存post数据时执行的。步骤如下:
add_filter( 'wp_insert_post_data' , 'filter_post_data' , 99, 2 );
function filter_post_data( $data , $post ) {
if ( $data['post_type'] == 'post' ) {
$content = stripslashes($data['post_content']);
$attributes = shortcode_parse_atts($content);
$post = isset($attributes['id']) ? get_post($attributes['id']) : "";
if ( !empty($post) ) {
$data['post_title'] = esc_html($post->post_title);
$data['post_name'] = esc_html($post->post_name);
}
}
return $data;
}
也许这不是最漂亮的解决方案,但它确实奏效了。我希望有人会觉得它有用
再次感谢那些试图以任何方式提供帮助的人。您想用元数据填充CF7表单的字段吗?如果是这样的话,这个插件可能会有帮助,嘿,保罗,谢谢你的回复。不幸的是,我不太确定这个插件是否可以完成这项工作。我要找的是在表单发送/保存到数据库之前,使用短代码从放置表单的帖子中获取元数据。@Faust是否要获取wordpress页面元数据?如果是,那么你可以使用这个插件。不。更准确地说,我需要通过快捷码(例如:[contact-form-7id=“33”title=“contact-form 1”])获取表单所在帖子的标题,然后在表单提交之前将其存储在变量中(例如在“wpcf7\u before\u send\u mail”钩子中)。除此之外,如果没有插件也可以完成,那就太好了。您希望页面标题与表单一起发送还是存储在数据库中?一旦存储了title变量,您打算如何处理它?