我的短代码总是为单个属性reviewstoshow使用默认值,而不是传入的属性值。传入的值有正确的数字(包括下面包含的转储的后半部分),但是$numberofreviewstoshow变量总是设置为默认值(6)。
下面是正在使用的短代码:
[tdp_random_reviews reviewstoshow="8"]这是短代码代码:
add_shortcode( 'tdp_random_reviews', 'show_tdp_random_reviews' );
function show_tdp_random_reviews($atts) {
$a = shortcode_atts(
array(
'reviewstoshow' => '6'
),
$atts
);
var_dump($a);
var_dump($atts);
$numberofreviewstoshow = $a['reviewstoshow'];
}下面是两个var_dump()行的输出:
array(1) { ["reviewstoshow"]=> string(1) "6" }
array(1) { [0]=> string(30) "reviewstoshow="8"" }你能告诉我我的错误在哪里吗?谢谢!
发布于 2020-04-30 22:42:48
短代码调用中的引号是不标准的(尽管它们看起来是这样的)。在主题编辑器中用键入到记事本、复制和粘贴新引号替换旧的双引号,解决了这些问题。
感谢@WebElaine和@vancoder的帮助!
https://wordpress.stackexchange.com/questions/365505
复制相似问题