我在wordpress网站的前端实现了一些复选框,以便从注册用户那里获取一些信息。我总是问他们:“你是一名设计师吗?”或者“你是演员吗?”并在下面设置一个复选框,以便他们可以检查或取消选中它。
Checkbox代码如下所示:
<input type="checkbox" name="new_user_designer" id="new_user_designer" value="true" <?php if (esc_attr( get_the_author_meta( "new_user_designer", $userdata->ID )) == "true") echo "checked"; ?> />
我用以下方法保存Checkbox输入:
if ($_POST['new_user_designer'] != $user_info->new_user_designer)
update_user_meta($user_info->ID, 'new_user_designer', sanitize_text_field($_POST['new_user_designer']));
到目前为止,一切都很棒!但这是我的问题,我需要你的帮助。 我将回显用户Authorbox中的复选框值。我试过这段代码:
<?php echo $user_info->new_user_designer; ?>
上面的代码用于显示每个用户的正确Checkbox状态,但它返回 值“true”。现在,我如何将输出“true”更改为“Designer”或任何自定义单词...... ??? 同样,如果用户选中Checkbox,它应该在Author Box中显示Designer而不是仅显示“true”?
第二个问题:
如果我的第一个问题有解决方案,如果某个用户检查多个复选框,我需要一些帮助来连续显示来自2个或更多复选框的多个选中输入。例如,用户是Designer和Actor,他检查2个复选框,现在它应该显示在用户信息框中:
设计师,演员
答案 0 :(得分:0)
我觉得你应该改变下面的代码
<input type="checkbox" name="new_user_designer" id="new_user_designer" value="true" <?php if (esc_attr( get_the_author_meta( "new_user_designer", $userdata->ID )) == "true") echo "checked"; ?> />
要
<input type="checkbox" name="new_user_designer" id="new_user_designer" value="Designer" <?php if (esc_attr( get_the_author_meta( "new_user_designer", $userdata->ID )) == "Designer"){ echo "checked";} ?> />