Options - korobochkin/wp-kit GitHub Wiki
Options and Settings классы созданы для работы с опциями и настройками и, в большинстве случаев используются в плагинах. Вы могли работать с этими данными через функции вида update_option()
.
Name setName(string $name)
Имя используется как ключ для сохранения данных в базе данных.
Autoload setAutoload(bool $autoload)
Определяет, должен ли WordPress автоматически загружать эти данные при каждом запросе. Рекомендуется устанавливать false
для настроек, которые используются крайне редко, например Cron задачами раз в месяц.
namespace Your\Product\Options;
use Korobochkin\WPKit\Options\AbstractOption;
class YourOption extends AbstractOption {
public function __constructor() {
$this
->setName('your_product_prefix_your_option')
// Autoload is true by default but you can set false.
->setAutoload(true);
}
public function buildConstraint() {
return array(
new Constraints\NotNull(),
new Constraints\Length(array(
'min' => 2,
'max' => 10,
'minMessage' => 'Your custom message for min error.',
'maxMessage' => 'Your custom message for max error.',
)),
);
}
}
Кроме стандартного метода flush()
вы можете использовать метод updateValue()
, который позволяет указывать два аргумента.
$myOption->updateValue(mixed 'new value', boolean $autoload);
Несмотря на это лучше задавать параметр автозагрузки внутри __constructor()
.
Классы Settings предназначены для связывания Options и WordPress Settings API.