我附上的短代码将content参数设置为空字符串

时间:2014-02-28 07:27:16

标签: php wordpress

我正在注册一个包含以下内容的短代码:

class Resource extends Shortcode
{
    public function action($atts, $content = "broken")
    {
        $markup = "<span id='examp'> $content </span>";

        return $markup;
    }
}

$resource = new Resource;
$resource->register();
无论短代码中的值如何,$resource->action(...)内容中的

都被设置为空字符串。

可以找到Shortcode和Resource

的完整代码示例

我确实没有其他问题。 $ attr参数与它应该完全一样,唯一显示的是$ content值,没有额外的标记。 如果这还不够,我将共享存储库 - 请告诉我它是否有帮助。

示例输入:

asdf[resource_download]abc[/resource_download]asdf

预期输出:

asdf<span id='examp'>abc</span>asdf

实际输出:

asdfabcasdf    

1 个答案:

答案 0 :(得分:2)

正如@uɐɥʇɐᴎ合并 efforts 我们发现的问题是,

正在为另一个短代码类(Video而不是Resource)调用

stealshortcode方法。视频正在设置该模式以匹配在资源有机会接收之前将内容设置为null的所有[(.*?)]

基本上从父类调用stealshortcode,清除了shortocde数据。