我正在创建一个自定义插件并有一个选项页面。当我单击保存按钮时,我的变量正在保存,但我想添加第二个按钮并检测按下了哪个按钮。我一直在尝试将名称放在按钮中,并希望通过 isset $_POST['name'] {} 检测到它们,但是当我单击保存或其他按钮时,它只是保存了我的变量,但没有放POST 变量中的任何内容。正如您在代码中看到的,一个按钮保存表单中的变量,另一个按钮使用这些变量保存并运行一些脚本。问题是我需要页面知道重新加载后单击了哪个按钮,您可以看到我尝试识别最底部单击了哪个按钮。我更喜欢 php 解决方案,所以我可以逐步增强。谢谢!
<div class="wrap">
<h2>Config Me Bro</h2>
<form method="post" action="options.php">
<?php settings_fields('aug_options'); ?>
<?php $options = get_option('data_value'); ?>
<label for="">Checkbox</label>
<input name="data_value[option1]" type="checkbox" value="1" id="" <?php checked('1', $options['option1']); ?> />
<label for="general_title">Title</label>
<input type="text" name="data_value[sometext]" id="general_title" value="<?php echo $options['sometext']; ?>" />
<p class="submit">
<?php submit_button('Save Changes', 'primary', 'save_config', false); ?>
<?php submit_button('Run Config', 'secondary', 'run_config', false); ?>
</p>
</form>
</div>
<pre> <?php print_r($_POST);?></pre>
<?php
}
/* Run Config Settings */
if (isset($_POST['run_config'])){
echo '<h1>I am running</h1>';
}
/* Save config Settings */
elseif (isset($_POST['save_config'])){
echo '<h1>Saved it</h1>';
}