Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 自定义主题中的Wordpress短代码错误_Php_Wordpress - Fatal编程技术网

Php 自定义主题中的Wordpress短代码错误

Php 自定义主题中的Wordpress短代码错误,php,wordpress,Php,Wordpress,我从头开始创建了一个主题,但在创建短代码时遇到了问题。我有以下代码: functions.php function caption_shortcode( $atts, $content = null ) { return '<span class="caption">' . $content . '</span>'; } add_shortcode( 'caption', 'caption_shortcode' ); 在页面模板页面上: echo do_shor

我从头开始创建了一个主题,但在创建短代码时遇到了问题。我有以下代码:

functions.php

function caption_shortcode( $atts, $content = null ) {
    return '<span class="caption">' . $content . '</span>';
}
add_shortcode( 'caption', 'caption_shortcode' );
在页面模板页面上:

echo do_shortcode('[caption]');
短代码似乎在某种程度上起作用,因为它返回HTML而不是$content

我的问题是,我似乎无法控制$content并使用shortcode显示它。知道为什么会这样吗

另外,我不想使用_content()函数来显示所有内容,我想使用短代码将用户添加的内容划分为几个弹出窗口和页面的子部分


谢谢

确保您的用户使用同一页面的快照代码

  // [baztag]content[/baztag]
    function baztag_func( $atts, $content = '' ) {
        return $content;
    }
    add_shortcode( 'baztag', 'baztag_func' );

 echo do_shortcode('[baztag]');

你有没有试过使用echo do_快捷码(“[caption]My caption[/caption]”)?它可以工作,但我不想从代码中添加内容,我希望用户能够随时添加和删除它。您可以通过编辑器或上面提供的注释添加内容。否则,您可以为每个内容创建一个文本框ACF,然后编写此文本框来回答问题。
  // [baztag]content[/baztag]
    function baztag_func( $atts, $content = '' ) {
        return $content;
    }
    add_shortcode( 'baztag', 'baztag_func' );

 echo do_shortcode('[baztag]');