尝试在下拉列表中列出所有可能的大写字母。我只能让它返回1s(布尔真)。如果我使用var\\u dump($user->allcaps);它确实会生成实际的cap名称,但当我将其插入到函数中时,它会转到布尔值。尝试使用各种settype语句;什么都没起作用。以下是当前的功能:
add_shortcode(\'capsdropdown\', \'sc_capsdropdown\');
function sc_capsdropdown($attr) {
$user = get_user_by(\'id\', \'1\');
$capslist = $user->allcaps;
$dropdown = \'<select>\';
foreach($capslist as $cap){
$dropdown .= \'<option value="\'.$cap.\'">\'.$cap.\'</option>\';
}
$dropdown .= \'</select>\';
return $dropdown;
}
已解决。这项工作:
foreach($capslist as $cap=>$caps){ $dropdown .= \'<option value="\'.$cap.\'">\'.$cap.\'</option>\'; }