我很难获得使用1个属性的快捷码。
这是我的短代码[sme_user-email userID="2"]
这是我的脚本,它们都不起作用。
function getUserEmail_func($atts) {
extract(shortcode_atts(array(\'userID\' => 1,), $atts));
$user_info = get_userdata($atts);
return $user_info->user_email;
}
add_shortcode(\'sme_user-email\', \'getUserEmail_func\');
。
function getUserEmail_func($atts) {
$user_info = get_userdata($atts);
return $user_info->user_email;
}
add_shortcode(\'sme_user-email\', \'getUserEmail_func\');
。
function getUserEmail_func($atts) {
$user_info = get_userdata($atts[\'userID]\');
return $user_info->user_email;
}
add_shortcode(\'sme_user-email\', \'getUserEmail_func\');
这是可行的,但我不想硬编码用户ID。我希望能够动态地完成它
function getUserEmail_func($atts) {
$user_info = get_userdata(2);
return $user_info->user_email;
}
add_shortcode(\'sme_user-email\', \'getUserEmail_func\');
nbsp;
最合适的回答,由SO网友:Robert hue 整理而成
下面是您应该如何创建短代码。
首先,您必须定义$atts
中的项目get_userdata
因为$atts
是一个数组。此外,我认为大写属性名称也存在一些问题,所以您应该使用小写属性。因此userID
, 使用userid
.
function getUserEmail_func( $atts ) {
$user_info = get_userdata( $atts[\'userid\'] );
return $user_info->user_email;
}
add_shortcode( \'sme_user-email\', \'getUserEmail_func\' );
已经对其进行了测试,并且正在运行。