另一种wordpress储存后台设置的一个方法

        和之前的略有不同(https://vience.dift.cn/blog/645.html),这次储存的是数组,只需要一行数据库即可。

// 设置选项页面的主要功能
if(isset($_POST['options'])) {
update_option('Magnet_theme_Settings', json_encode($_POST['options']));
echo '<div class="notice is-dismissible updated">设置保存成功!</div>';
}
?>
<h1>主题设置</h1>
<form method="post" action="<?php echo admin_url('themes.php?page=functions.php'); ?>">
<?php
echo "<table class="form-table" role="presentation"><tbody>";
$option_value = get_option('Magnet_theme_Settings');
$option_value = $option_value ? json_decode($option_value, true) : array();
echo "<tr><th scope="row"><label for="blogname">头部h1:</label></th><td><input name="options[]" type="text" value="$option_value[0]" class="regular-text"></td></tr>";
echo "<tr><th scope="row"><label for="blogname">尾部h1:</label></th><td><input name="options[]" type="text" value="$option_value[1]" class="regular-text"></td></tr>";
echo "</tbody></table>";
?>
<p class="submit">
<input type="submit" class="button-primary" value="保存设置">
</p>
</form>

        关键四点:

        1、action地址设置为本页的地址,例如我是模板下functions.php

        2、表单name值设置为options[],options[]是post接收那里的options

        3、$option_value[0]、$option_value[1]、$option_value[2]必须从小到大,从“0”开始

        4、Magnet_theme_Settings为储存的键值

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享