Сохранение настроек плагина в базе данных

  1. Я не полный новичок с php или wordpress, но я хочу, чтобы подход к этой проблеме был наиболее эффективным способом, поэтому верьте, что просить здесь поможет.

  2. У меня есть плагин, который случайно генерирует цитату – я дошел до того, что мне нужно сохранить цитату в DB mysql.

  3. Я хочу знать, как лучше сохранить данные, используя ли они настройки api или просто сохранить их в массиве.

  4. Я также хочу реализовать опцию удаления цитаты.

  5. Используя текстовое поле ввода, я хочу знать, как добавить новые кавычки в текстовое поле и передать данные массиву, содержащему кавычки.

Мой код далеко (кавычки хранятся в массиве на данный момент)

<?php /*idea to develop further would be, add a text box that the user can input the quote in this then gets added to the DB and passed to the $quotes array. From here the results get output the same way*/ /* Plugin Name: Random Quotes Plugin URI: xxx Description: This Plugin randomly generates Quotes input by the user. Version: 0.0.1 Author: xxx Author URI: xxx License: GPL2 */ add_action('admin_menu', 'dw_quotes_create_menu'); function dw_quotes_create_menu() { //create custom top-level menu add_menu_page('Quotes Settings', 'Quotes Styling', 'manage_options', __FILE__, 'dw_styling_quotes_settings'); } function dw_styling_quotes_settings() { ?> <div class="wrap"> <?php screen_icon( 'plugins' ); ?> <h2>Quotes Page</h2> <table class="form-table"> <tr valign="top"> <th scope="row">Input Quotes in the textbox</th> <td><input type="textarea" name="random_quote" value="" /></td> </tr> </table> </div> <?php } // add quotes to this list $quotes = array( "one" => "The weak can never forgive. Forgiveness is the attribute of the strong", "two" => "Be strong when you are weak, Be brave when you are scared, Be humble when you are victorious", "three" => "Our success is achieved by uniting our strength, not by gathering our weaknesses", "four" => "One of the most common causes of failure is the habit of of quitting when one is overtaken by temporary defeat", "five" => "The struggles make you stronger and the changes make you wise! Happiness has its own way of taking its sweet time" ); // uses array_rand to randomly pick a quote $rand_quotes = array_rand( $quotes); // pass's the result of $array_rand to $result_quotes $result_quote = $quotes[$rand_quotes]; // outputs the result //echo $result_quote; ?> 

Solutions Collecting From Web of "Сохранение настроек плагина в базе данных"

Я бы сохранил массив в параметрах, которые можно было бы использовать в качестве сериализованного значения.

 update_option('dw_quotes', serialize($quotes)); 

и получить с помощью:

 $quotes = get_option('dw_quotes', null); if ($quotes !== null) { $quotes = unserialize($quotes); } 

Другие вещи, которые необходимо учитывать:

Добавьте обработку, если опция кавычек не существует.

Также добавьте обработку, чтобы удалить кавычки из таблицы параметров при удалении плагина. См .: http://codex.wordpress.org/Function_Reference/register_uninstall_hook