一个点会阻止PHP代码正常运行


A dot stops PHP code from functioning properly

我用这个简单的代码为Wordpress网站添加了一个基本的快捷代码:

function post_review25() { 
return '<div class="review2-5">Rating:</div>';
 }
add_shortcode('review 2.5', 'post_review25');

因此,通过在可视化编辑器中添加[review 2.5],它应该与<div class="review2-5">Rating:</div>相呼应。然而,review 2.5中的点阻止了它的运行——它会回显review 2的代码(我也为此设置了一个短代码)。

这意味着任何超过点的东西都不会被识别。我怎么可能在那里添加一个点并使其发挥作用?

add_shortcode()的第一个参数应该像标签一样,但有一些额外的限制:

http://codex.wordpress.org/Shortcode_API

短代码名称应该全部小写并使用所有字母,但数字和下划线(而不是破折号!)也应该可以使用。

您应该使用类似[review rating="2.5"]的东西。评级值作为处理程序函数的参数传递。

function post_review($atts) { 
    $rating = $atts['rating'];
    return '<div class="review'.$rating.'">Rating:</div>';
}
add_shortcode('review', 'post_review');

希望能有所帮助。:)