我不知道这是否真的是您正在寻找的答案。该脚本创建一个插件 index.php 和 parameter-options.php 。index.php 将一个名为“Your options-pagename”的新页面添加到 wordpress 设置选项卡。在那里,您可以通过向表单添加新的输入值来管理选项。您应该将大写的 NAMESPACE 文本替换为您自己的项目名称。另外:此脚本未经测试。
plugindir/yourpluginname/index.php
/*
Plugin Name: Your options page
Plugin URI: http://www.yourdomain.de
Description: descriptiontext
Author: authorname
Version: v1.0
Author URI: your uri
*/
if( ! function_exists('NAMESPACE_add_admin_menu_items')):
function NAMESPACE_add_admin_menu_items() {
// add parameter options page to wp admin
add_options_page('Your options-pagename', 'Parameter', 'manage_options', 'NAMESPACE-parameter-settings', 'NAMESPACE_display_parameter_options_page');
}
endif;
add_action('admin_menu', 'NAMESPACE_add_admin_menu_items');
if( ! function_exists('NAMESPACE_display_parameter_options_page') ):
function NAMESPACE_display_parameter_options_page() {
require_once 'parameter-options.php';
}
endif;
plugindir/yourpluginname/parameter-options.php
$aPosts = $_POST;
if( ! empty($aPosts)) {
foreach($aPosts as $cKey => $aPost) {
update_option($cKey, $aPost);
}
}
<div class="wrap nosubsub">
<div class="icon32" id="icon-edit"><br></div>
<h2><?php echo __('Hello, i am the optionspage', 'NAMESPACE'); ?></h2>
<form method="post">
<table class="form-table">
<tbody>
<?php
$aYourOptionsArray = get_option('YourOptionsArray');
?>
<tr valign="top">
<th scope="row" colspan="2"><b><?php echo __('Some Description', 'NAMESPACE'); ?></b></th>
</tr>
<tr valign="top">
<th scope="row"><?php echo __('Value 1', 'NAMESPACE'); ?></th>
<td><input name="YourOptionsArray[value_1]" class="regular-text" type="text" value="<?php echo (isset($aYourOptionsArray['value_1']) ? $aYourOptionsArray['value_1'] : ''); ?>" /></td>
</tr>
<tr valign="top">
<th scope="row"><?php echo __('Value 2', 'NAMESPACE'); ?></th>
<td><input name="YourOptionsArray[value_2]" class="regular-text" type="text" value="<?php echo (isset($aYourOptionsArray['value_2']) ? $aYourOptionsArray['value_2'] : ''); ?>" /></td>
</tr>
<!-- more options here -->
</table>
</form>
</div>