我已经检查了一些链接,但在获取短代码的属性值方面,我似乎什么都做不到,因此我可以在某个条件下使用它。
function bf_shortcode_slideshow($atts) {
extract(shortcode_atts(array(
\'location\' => \'\'
), $atts));
ob_start();
if ( $location = \'home\' ) {
classslider = \'homeslider\';
}
include(dirname(dirname(__FILE__)) . \'/templates/slideshow.php\');
return ob_get_clean();
}
add_shortcode(\'rotator\', \'bf_shortcode_slideshow\');
在
slideshow.php
我有一个
echo \'classslider=\' . $classslider;
我的结果
$classslider
为空(不显示任何内容)是否有其他比较方法
$location
到字符串值集?
最合适的回答,由SO网友:s_ha_dum 整理而成
include
更改范围。您需要申报$classslider
在定义之前为全局,然后使用global $classslider;
在使用之前。
function bf_shortcode_slideshow($atts) {
global $classslider;
extract(shortcode_atts(array( ...
我想这会解决你的问题。
我不明白你为什么用include
尽管如此。一定有更好的方法让幻灯片发挥作用。