是否保存复选框/选项列表状态?

时间:2011-01-11 作者:Wordpressor

我自制的管理面板工作正常,但它不保存表单输入的值。

当我在文本框中键入一些内容并单击“保存”时,它在刷新后仍然存在,这要感谢PHP:

<input type="text" name="header" value="<?php echo get_option(\'header\'); ?>" /> 
因此,PHP向输入回显其自身的值,一切都很好。但当我有10个单选按钮的列表或只有一个复选框时,该怎么办呢?

现在我有一个这样的复选框:

<input type="checkbox" name="showS" value="true">
点击并保存后,它仍然处于“未点击”状态。

有什么帮助吗?

2 个回复
最合适的回答,由SO网友:goldenapples 整理而成

这实际上只是一个html问题,不是特定于WordPress的。调查checked="checked" (用于复选框)或selected="selected" (用于选择、单选按钮等)在您的情况下,

<input type="checkbox" name="showS" value="true" 
    <?php if (get_option(\'showS\')==true) echo \'checked="checked" \'; ?>>
虽然这是WordPress,但我也应该提醒您尽可能使用设置API。除非你真的知道自己在做什么,否则不要试图自己清理和验证所有输入。以下是有关设置API的教程链接:

http://ottopress.com/2009/wordpress-settings-api-tutorial/

SO网友:t31os

这可能是一个以HTML为中心的问题,但WordPress确实有一些帮助函数,用于处理复选框、选择下拉列表、禁用的输入等。。

http://sillybean.net/2010/09/wordpress-hidden-gems-checked-selected-and-disabled/

拉斯特在评论中也指出了这一点。

我现在总是使用这些方法,它们看起来比自编的替代方法更优雅。

结束

相关推荐

找不到cForms操作处理程序页

我在任何地方都找不到cforms插件的操作处理程序页面。我想使用post值在cforms插件的action handler页面中编写一些函数。