How to parse this shortcode?

时间:2013-07-20 作者:Joshua L

我有一个这样的短代码[soundcloud url="http://api.soundcloud.com/tracks/67658191" params="" width=" 100%" height="166" iframe="true" /]

如何获取URL部分的内容或在帖子中提取整个短代码,然后显示它?

do_shortcode 没有多大帮助。

我想在我的主题中使用这个短代码,因为URL部分是动态的,所以我很难让它动态显示。

1 个回复
SO网友:s_ha_dum

shortcode_parse_atts 将为您提供可管理的信息。

  $atts = shortcode_parse_atts(
    \'[soundcloud url="http://api.soundcloud.com/tracks/67658191" params="" width=" 100%" height="166" iframe="true" /]\'
  );
您将得到一个如下所示的数组:

array(7) {
  [0]=>
  string(11) "[soundcloud"
  ["url"]=>
  string(41) "http://api.soundcloud.com/tracks/67658191"
  ["params"]=>
  string(0) ""
  ["width"]=>
  string(5) " 100%"
  ["height"]=>
  string(3) "166"
  ["iframe"]=>
  string(4) "true"
  [1]=>
  string(2) "/]"
}
您可以执行以下操作:

  var_dump($atts);  // dump everything
  echo $atts[\'url\']; // echo just the URL
我不明白你想在什么情况下使用这个。我想你漏掉了一点解释。

结束

相关推荐

Shortcodes and a list of IDs?

我正在创建一个简单的shortcode函数,需要将ID列表指定为变量。我查过法典,但我不确定这是怎么处理的。短代码是:[video_vote users=\"13027,13023,12583\"] 在逗号上使用拆分或分解是循环它们的最佳方式,还是有特定于WordPress的方法?function video_vote($atts) { extract(shortcode_atts(array( \'users\' => \'no foo\'&#