Wordpress中带前缀的自定义字段的自定义简码

时间:2020-02-08 10:38:45

标签: php wordpress shortcode custom-fields prefix

我正在尝试为前端显示的所有自定义选项字段创建自定义shordcode。 对于每个自定义字段,我都使用了自定义前缀“ myprefix”。

现在,如果我添加以下简码,则效果很好:

[myfield field='myprefix-enable-logo']
function My_Custom_Shortcodes( $atts ) {
  return get_option($atts['field]');
}
add_shortcode( 'myfield', 'My_Custom_Shortcodes' );

但是我想要的是简码的以下结构,并且在函数中预定义了前缀:

[myfield field='enable-logo']

如何实现?

1 个答案:

答案 0 :(得分:0)

我已经通过获取自定义字段的属性来解决了这个问题。然后在get_option中向其添加自定义前缀,如下所示:

function My_Custom_Shortcodes( $atts ) {
    $a = shortcode_atts( array(
        'field' => 'The slug',
    ), $atts );

  $mcf_slug = "{$a['field']}";
  return get_option('myprefix-' . $mcf_slug);

}
add_shortcode( 'myfield', 'My_Custom_Shortcodes' );