add files inc
This commit is contained in:
74
inc/adfox_on.php
Normal file
74
inc/adfox_on.php
Normal file
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
/**
|
||||
* WP-CLI команды для управления рекламой
|
||||
*/
|
||||
|
||||
if (!defined('ABSPATH') && !defined('WP_CLI')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class Ad_Manager_Commands {
|
||||
|
||||
/**
|
||||
* Управление настройкой рекламы
|
||||
*/
|
||||
public function __invoke($args, $assoc_args) {
|
||||
if (empty($args)) {
|
||||
WP_CLI::error('Укажите действие: status, on, off, toggle');
|
||||
}
|
||||
|
||||
list($action) = $args;
|
||||
|
||||
switch ($action) {
|
||||
case 'status':
|
||||
$this->show_status();
|
||||
break;
|
||||
case 'on':
|
||||
$this->turn_on();
|
||||
break;
|
||||
case 'off':
|
||||
$this->turn_off();
|
||||
break;
|
||||
case 'toggle':
|
||||
$this->toggle();
|
||||
break;
|
||||
default:
|
||||
WP_CLI::error("Неизвестная команда: {$action}. Используйте: status, on, off, toggle");
|
||||
}
|
||||
}
|
||||
|
||||
private function show_status() {
|
||||
$show_ad = get_option('show_ad', 0);
|
||||
$status = ((int)$show_ad === 1) ? '✅ включена' : '❌ выключена';
|
||||
|
||||
WP_CLI::line("Текущий статус рекламы: {$status}");
|
||||
WP_CLI::line("Значение в базе: {$show_ad}");
|
||||
}
|
||||
|
||||
private function turn_on() {
|
||||
update_option('show_ad', 1);
|
||||
WP_CLI::success('✅ Реклама включена');
|
||||
$this->show_status();
|
||||
}
|
||||
|
||||
private function turn_off() {
|
||||
update_option('show_ad', 0);
|
||||
WP_CLI::success('❌ Реклама выключена');
|
||||
$this->show_status();
|
||||
}
|
||||
|
||||
private function toggle() {
|
||||
$current = get_option('show_ad', 0);
|
||||
$new_value = ((int)$current === 1) ? 0 : 1;
|
||||
$action = ($new_value === 1) ? '✅ включена' : '❌ выключена';
|
||||
|
||||
update_option('show_ad', $new_value);
|
||||
WP_CLI::success("Реклама {$action}");
|
||||
$this->show_status();
|
||||
}
|
||||
}
|
||||
|
||||
// Регистрируем команду
|
||||
if (defined('WP_CLI') && WP_CLI) {
|
||||
WP_CLI::add_command('ad', 'Ad_Manager_Commands');
|
||||
}
|
||||
Reference in New Issue
Block a user