这是未经测试的,但回调函数提供了一个参数数组,$args
其中给出了shortocode提供的参数(如果有)。第0个条目有时包含所用短代码的名称(例如。public_email
). 有时我的意思是。。。
attributes数组的第零个条目($atts[0])将包含与shortcode regex匹配的字符串,但前提是该字符串与回调名称不同,否则将显示为回调函数的第三个参数。
(请参见Codex). 为了你的目的$atts[0]
将包含public_email
, public_phone
等
function shortcode_handler($atts,$content=NULL){
if(!isset($atts[0]))
return; //error?
switch($atts[0]):
case \'public_email\':
//deal with this case
break;
case \'public_phone\':
//deal with this case
break;
case \'public_something\':
//deal with this case
break;
endswitch;
}