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();
Exemple #3
0
<?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);