我正在尝试编写一个函数,该函数将使用从短代码发送的字符串(一旦工作,该字符串将是url),但它返回的只是函数中的默认值。
我的短代码是
[youtube thumb url videoUrl=“测试”]
我的功能如下:
add_shortcode(\'youtube-thumb-url\', \'get_youtube_thumb_url_func\');
function get_youtube_thumb_url_func($atts)
{
extract(shortcode_atts(array(
\'videoUrl\' => \'urlhere\',
), $atts));
return $videoUrl;
}
它没有返回“test”,而是返回“urlhere”。如果“urlhere”为空,则不返回任何内容。
最合适的回答,由SO网友:Johansson 整理而成
看起来您不能像在短代码中那样使用大写字母。而不是videoUrl
, 使用video-url
:
function get_youtube_thumb_url_func( $atts ) {
$atts = shortcode_atts(
array(
\'video-url\' => \'urlHere\',
), $atts, \'youtube-thumb-url\' );
return $atts[\'video-url\'];
}
add_shortcode( \'youtube-thumb-url\', \'get_youtube_thumb_url_func\' );
和您的短代码:
[youtube thumb url视频url=“测试”]
这是我在发布之前测试的最后一个函数。