Я подумал о плагине для начинающих с песочницей (стерилизованный код ниже), чтобы сохранить URL-адрес для пользователя. Итак, в разделе администратора есть кнопка. Когда пользователь нажимает на него, открывается новое окно, которое приводит их к настроенному URL-адресу. Я знаю очень просто.Сохраните настройки плагина на пользователя
У меня есть функция плагина и функции обработки сообщений. Теперь я столкнулся с путаницей в использовании таблицы wp_options.
В частности, как сохранить настройки USER в таблице wp_options.
Я могу думать о трех путях.
Добавить третье скрытое поле на странице конфигурации, содержащей идентификатор пользователя. Затем запись делается в wp_options. Напомним, что я найду запись в wp_options, соответствующую идентификатору пользователя. То, что я не уверен в этом, - это если wp_options законсервированная функция будет писать. Другими словами, если пользователь A сохранил www.google.com, то через 10 минут пользователь B сохранит www.bing.com. Записанные консервированные функции wp_options перезаписывают пользователя A? Могу ли я указать данные для отзыва?
Во-вторых, чтобы сохранить настройки в таблице users ... как своего рода пользовательские настройки ... но для этого я не соглашаюсь на соглашение и не рискуя обновлением/совместимостью?
Пользовательские таблицы, которые мне кажутся, это путь ... но вы, ребята, знаете гораздо больше, чем я, поэтому я хотел получить ваш вклад.
Вот код ... снова стерилизуется, поэтому некоторые вещи могут не иметь смысла, потому что я изменил их для своих целей на игровой площадке.
function register_setting()
{
register_setting('Options-group', 'OptionsA_options', 'options_callback');
register_setting('Options-group', 'url');
}
function options_callback()
{
alert('Options Callback');
}
add_action('admin_init', 'register_setting');
function my_plugin_menu()
{
add_options_page('Test Options', 'Button Click', 'activate_plugins', 'UNIque Name', 'some_options');
}
add_action('admin_menu', 'my_plugin_menu');
function clicky_options()
{
if (!current_user_can('manage_options')) {
wp_die(__('You do not have sufficient permissions to access this page.'));
}
?>
<div class="wrap">
<h2>Config</h2>
<form method="post" action="somepage_options.php">
<?php settings_fields('Options-group');?>
<?php do_settings_sections('Options-group');?>
<table class="form-table">
<tr valign="top">
<th scope="row">Site Url (including http:// OR https://)</th>
<td><input type="text" name="url" value="<?php echo esc_attr(get_option('url')); ?>" /></td>
</tr>
</table>
<?php submit_button('Sign On');?>
</form>
</div>
<?php
}
Форма послеуборочная:
$url = $_POST['url'];
$FullUrl = $url."/"
header("Location: $FullUrl", true, 301);
exit();
Я бы рекомендовал пользовательскую таблицу. Поскольку вы хотите сохранить настройки для каждого пользователя, вы должны сохранить его в метателе пользователя. – WisdmLabs
@WisdmLabs Звучит неплохо. Спасибо. Если вы хотите сделать свой комментарий ответом ... с образцом кода еще лучше ... но не нужно ... Я с радостью отмечу как ответ. – GPGVM
Я добавил свой комментарий как ответ :) – WisdmLabs