非常接近-但是在settings\\u page函数中,必须在settings\\u fields调用之后为每个字段添加html表单元素。并删除“do\\u settings\\u sections”行。提交按钮也是一个不错的补充。
以下是添加一个字段的示例:
?>
<table width="100%">
<tr>
<td>
<label for="database_name" />Database Name</label>
<input type="text" id ="database_name" size="50" name="database_name" value="<? echo get_option(\'database_name\')?>" />
</td>
</tr>
</table>
<p class="submit">
<input type="submit" class="button-primary" value="Save Changes" />
</p>
<?php
---已更新---
也可以使用add\\u settings\\u部分和add\\u settings\\u fields调用,而不是如所述创建表单。这就是工作原理:
public function settings_page(){
echo \'<div class="wrap">
<div class="icon32" id="icon-tools"></div>
<h2>\'.__(\'Database converter\', \'dleToWp\').\'</h2>
<form action="options.php" method="post">\';
settings_fields(\'dleToWp_options\');
do_settings_sections(\'dleToWp\');
<p class="submit"><input type="submit" class="button-primary" value="<?php _e(\'Save Changes\') ?>" /></p>
echo \'</form></div>\';
}
这与您在开始时提供的代码非常接近,只是现在添加了一个提交按钮。
在create\\u fields函数中,还需要定义设置和字段:
add_settings_section(\'dleToWp_options\', \'Plugin Options\', \'dleToWp_options_callback\', \'dleToWp\');
add_settings_field(\'dltToWp_database_name\', \'Database Name\', \'dleToWp_database_name_callback\', \'dleToWp\', \'dleToWp_options\');
请注意,每个调用都指定settings部分,add\\u settings\\u字段必须指向该部分。
最后,必须为节和字段创建回调:
function dleToWp_options_callback() {
echo "<p>Description of this Section</p>"
}
function dleToWp_database_name_callback() {
echo "<input type=\'text\' id=\'database_name\' size=\'50\' name=\'database_name\' value=\'".get_option(\'database_name\')."\' />";
}
您仍然需要为表单元素提供html。您还必须添加提交按钮html。
所有这些代码都是我脑子里想不出来的,所以不能保证它能正常工作。但它应该让您了解如何使用add\\u settings*函数以及如何构造回调。