正如我在评论中所说的,extract()
不应使用。由于非常特殊的原因,它被从core和codex中删除,并且在未来的应用和功能中严格不建议使用它。请see trac ticket #22400 获取完整的详细信息。
如前所述,法典也相应更新,因此您可以查看Shortcode API 关于如何构造适当的短码。
记住这一点,您可以按如下方式创建您的短代码:
function get_my_custom_field( $atts ) {
$attributes = shortcode_atts( array(
\'field\' => \'\';
), $atts );
global $post;
if ( empty( $attributes[\'field\'] ) )
return null;
return get_post_meta( $post->ID, $attributes[\'field\'], true );
}
add_shortcode( \'insert-custom-field\', \'get_my_custom_field\' );
编辑您可能还需要根据您的输入对输入进行清理。我将把这件事留给你,因为我不确定会传递哪些数据