📅  最后修改于: 2023-12-03 14:38:55.608000             🧑  作者: Mango
在WordPress主题开发过程中,经常会使用自定义的shortcode(短代码)来添加特定的功能或内容。通常情况下,shortcode 是以静态方式定义的,但有些情况下我们需要使用变量来构建 shortcode,这时候就需要用到 <?php echo do_shortcode(' '); ?>
这个函数。
do_shortcode
是 WordPress 内置的一个函数,它可以帮助我们将 shortcode 解析成特定的内容。通俗来说,就是在 WordPress 的文章或页面中使用 shortcode 时,系统会将 shortcode 抽离出来,经过 do_shortcode()
函数的解析处理,最终将 shortcode 渲染成具体的 HTML 内容。
下面是一个使用 do_shortcode 带变量的实例,我们可以将其添加到主题的 functions.php 文件中。
// 创建一个带变量的 shortcode
function my_shortcode_func($atts) {
// 定义默认值
$atts = shortcode_atts(
array(
'name' => 'World',
), $atts, 'my-shortcode'
);
// 返回 shortcode 的 HTML 格式
return '<p>Hello, ' . esc_attr($atts['name']) . '!</p>';
}
add_shortcode('my-shortcode', 'my_shortcode_func');
在这个 shortcode 中,我们定义了一个变量 name
作为 shortcode 的参数,这个参数可以在 shortcode 调用时传入。
下面是如何在文章或页面中使用这个带变量的 shortcode。
[my-shortcode name="John"]
以上 shortcode 将会输出 <p>Hello, John!</p>
。
最后,通过 <?php echo do_shortcode(' '); ?>
函数,可以将带变量的 shortcode 嵌入到 WordPress 主题模板的相应位置。
<?php echo do_shortcode('[my-shortcode name="World"]'); ?>
将会输出 <p>Hello, World!</p>
。
在 WordPress 主题开发中,经常需要使用 shortcode 来添加特殊的功能或内容。使用 <?php echo do_shortcode(' '); ?>
函数可以将 shortcode 带上变量解析渲染,从而大大扩展了主题的功能。