function __construct() { $this->options = wp_parse_args([], ['template_path' => __DIR__ . '/tpl/nzwpnewsletter-form.php', 'success_msg' => __('Thank you for subitting your email', 'nzwpnewsletter'), 'error_msg' => __('Your email is already in our newsletter', 'nzwpnewsletter'), 'invalid_email_msg' => __('Email is not valid', 'nzwpnewsletter')]); add_shortcode('nzwpnewsletter', array($this, 'shortcode')); add_action('wp_ajax_nopriv_nzwpnewsletter', array($this, 'ajax_handler')); add_action('wp_ajax_nzwpnewsletter', array($this, 'ajax_handler')); //enqueue scripts add_action('wp_enqueue_scripts', [$this, 'enqueue_scripts']); add_action('admin_enqueue_scripts', [$this, 'enqueue_scripts']); /* add_action('admin_menu', array($this, 'add_menu')); */ add_action('admin_init', [$this, 'register_settings']); if (is_admin()) { $options = new OptionsPage('Nz Wp Newsletter', 'manage_options', 'nzwpnewsletter'); $this->mc = $this->getMailchimp(); $options->init($this->mc); } }
<?php $opt = new OptionsPage(array(wp_option::factory('text', 'twitter_username'))); $opt->title = 'Other options'; $opt->file = basename(__FILE__); $opt->parent = "theme-options.php"; $opt->attach_to_wp();
<?php /** @type \Codeception\Scenario $scenario */ $scenario->groups('admin', 'settings'); $I = new \WebGuy\MemberSteps($scenario); $I->wantTo('Play with settings'); $I->amGoingTo('Tweak themes, languages and names'); $I->autoLogin(); $I->amOnPage(\OptionsPage::$url); $I->seeCurrentUrlEquals(\OptionsPage::$url); $I->setCookie('useDefaultLanguage', 'true'); \OptionsPage::of($I)->updateOptions('Horse Tickler\'s Dagger Fan Club', 'ru', 'ambinight'); $I->seeCurrentUrlEquals(\OptionsPage::$url); $I->seeInTitle('Horse Tickler\'s Dagger Fan Club'); $I->seeOptionIsSelected(\OptionsPage::$siteLanguageList, 'ru'); $I->seeOptionIsSelected(\OptionsPage::$themeList, 'ambinight'); $I->see('Настройки', \OptionsPage::$pageHeaderSelector); \OptionsPage::of($I)->hasNoErrorFlashMessages(); $I->amOnPage(\BlogFeedPage::$url); $I->see('Категории', \BlogFeedPage::$sidebarSelector); $I->resetApplicationSettings(); $I->resetCookie('useDefaultLanguage');
$bg_color->set_default_value($default_bg_color); $bg_color->help_text("Default color: {$default_bg_color}"); $colorset1 = new color_scheme('Default Scheme'); $colorset1->add_colors(array('3a2820', 'd45023', 'ffffff')); $colorset2 = new color_scheme('Dark Scheme'); $colorset2->add_colors(array('000000', 'eab035', 'ffffff')); $colorset3 = new color_scheme('Red Scheme'); $colorset3->add_colors(array('350505', '151515', 'ffffff')); $color_scheme = wp_option::factory('choose_color_scheme', 'choco_color_scheme', 'Color Scheme'); $color_scheme->add_color_schemes(array($colorset1, $colorset2, $colorset3)); $color_scheme->set_default_value('Default Scheme'); $bg_image = wp_option::factory('image', 'background_image', 'Background Image'); $bg_repeat = wp_option::factory('select', 'background_repeat', 'Background Repeat'); $bg_repeat->add_options(array('no-repeat' => 'No Repeat', 'repeat-x' => 'Repeat Horizontal(repeat-x)', 'repeat-y' => 'Repeat Vertical(repeat-y)', 'repeat' => 'Repeat Horizontal and Vertical(repeat)')); $bg_repeat->set_default_value('no'); $inner_options = new OptionsPage(array(wp_option::factory('separator', 'theme'), $color_scheme, wp_option::factory('separator', 'background'), $bg_color, $bg_image, $bg_repeat, wp_option::factory('separator', 'scripts'), wp_option::factory('header_scripts', 'header_script'), wp_option::factory('footer_scripts', 'footer_script'))); $inner_options->title = 'General'; $inner_options->file = basename(__FILE__); $inner_options->parent = "theme-options.php"; $inner_options->attach_to_wp(); function print_color_scheme_background_changer_js() { ?> <script type="text/javascript" charset="utf-8"> function rgb_to_hex(r, g, b) { return to_hex(r) + to_hex(g) + to_hex(b); } function to_hex(N) { if (N==null) return "00"; N = parseInt(N);