我不能在Wordpress短代码功能之外使用变量

时间:2013-08-11 03:34:10

标签: php wordpress function wordpress-plugin

我想开发一个插件来添加使用短代码执行某些操作的功能。我希望它的功能如下:

[shortcode]Content[/shortcode]

以下是我使用的代码:

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

add_shortcode("quote", "quote");

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

感谢。

1 个答案:

答案 0 :(得分:3)

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

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

add_shortcode(“quote”,“quote”);

回声“在其他地方使用内容$ content”;

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

相关问题