0

我想开发一个插件来增加使用短代码做某事的能力。我希望它像这样运行:

[shortcode]Content[/shortcode]

这是我使用的代码:

function quote( $atts, $content = null ) {  
    return '<div class="right text">"'.$content.'"</div>';  
}

add_shortcode("quote", "quote");

$content 变量,它返回短代码的值,在本例中为 Content,不能在函数之外使用。我想在 PHP 代码的其他部分使用它,但我无法让它工作。我对PHP没有经验,所以如果您有任何解决方案,请尽量说清楚。

谢谢。

4

1 回答 1

3

您必须将其声明为全局变量,否则它的范围(您可以访问它的地方)仅限于您使用它的函数。

function quote( $atts, $content = null ) {  
global $content;
return '<div class="right text">"'.$content.'"</div>';  
}

add_shortcode("quote", "quote");

echo "在其他地方使用内容 $content";

仅供参考,它可能会导致潜在的问题。例如,$content 是一个非常常见的变量,如果在其他地方使用相同的变量,它可能会发生冲突。你最好给它一个唯一的名字,比如: global $my_global_content = $content. 然后在代码的其他区域使用 $my_global_$content。

于 2013-08-11T05:06:32.207 回答