$this->addThemeFeature('option-contact-form'); // ----------------------------------------------------------------------------- // Advanced $advanced = $theme_options->addGroup('advanced', __('Advanced', 'everything')); $this->addThemeFeature('option-custom-css'); $this->addThemeFeature('option-custom-js'); $advanced->addOption('boolean', 'chrome_fonts_fix', false, __('Google Fonts', 'everything'), __('This option is not recommended since Chrome version 37 and Opera version 25 were released.', 'everything'), array('caption' => __('Enhance fonts in Chrome and Opera browsers', 'everything'))); // ----------------------------------------------------------------------------- // Other $other = $theme_options->addGroup('other', __('Other', 'everything')); $this->addThemeFeature('option-tracking-code'); $this->addThemeFeature('option-feed-url'); $this->addThemeFeature('option-ogp'); // ----------------------------------------------------------------------------- // Layout post options $nav_menus = \Drone\Func::wpTermsList('nav_menu'); $this->foreachPostOptions(array('post', 'page', 'gallery', 'portfolio', 'product'), function ($post_type, $post_options) use($breadcrumbs, $nav_menus, $sidebar_options) { $layout = $post_options->addGroup('layout', __('Layout', 'everything')); $layout->addEnabledOption('background', 'background', false, Everything::to_('general/background/background')->default, __('Background', 'everything'), __('Custom', 'everything')); $layout->addEnabledOption('banner', 'banner', false, Everything::to_('banner/content')->default, __('Banner', 'everything'), __('Custom', 'everything')); $nav = $layout->addGroup('nav_secondary', __('Secondary menu', 'everything')); $nav->addEnabledOption('select', 'upper', false, 'true', __('Upper', 'everything'), __('Custom', 'everything'), '', array('options' => array('true' => __('Show', 'everything'), '' => __('Hide', 'everything')) + $nav_menus, 'groups' => array(__('Custom menu', 'everything') => array_keys($nav_menus)))); $nav->addEnabledOption('select', 'lower', false, 'true', __('Lower', 'everything'), __('Custom', 'everything'), '', array('options' => array('true' => __('Show', 'everything'), '' => __('Hide', 'everything')) + $nav_menus, 'groups' => array(__('Custom menu', 'everything') => array_keys($nav_menus)))); $layout->addEnabledOption('group', 'headline', false, Everything::to_('nav/headline')->default, __('Headline', 'everything'), __('Custom', 'everything'), '', array('options' => array('' => __('Hide', 'everything'), 'none' => __('None (title only)', 'everything'), 'breadcrumbs' => __('Breadcrumbs', 'everything'), 'navigation' => __('Navigation (if possible)', 'everything')), 'disabled' => !$breadcrumbs ? array('breadcrumbs') : array())); $layout->addEnabledOption('layout', 'layout', false, Everything::to_('sidebar/layout')->default, __('Sidebar', 'everything'), __('Custom', 'everything'), '', array('options' => $sidebar_options)); if ($post_type != 'product') { $page = $layout->addGroup('page', __('Page', 'everything')); $page->addEnabledOption('group', 'hide_title', false, '', __('Title', 'everything'), __('Custom', 'everything'), '', array('options' => array('' => __('Show', 'everything'), 'true' => __('Hide', 'everything')))); $page->addEnabledOption('group', 'author_bio', false, 'true', __('Author details', 'everything'), __('Custom', 'everything'), '', array('options' => array('true' => __('Show', 'everything'), '' => __('Hide', 'everything')))); $page->addEnabledOption('group', 'meta', false, 'true', __('Meta', 'everything'), __('Custom', 'everything'), '', array('options' => array('true' => __('Show', 'everything'), '' => __('Hide', 'everything')))); $page->addEnabledOption('group', 'social_buttons', false, 'true', __('Social buttons', 'everything'), __('Custom', 'everything'), '', array('options' => array('true' => __('Show', 'everything'), '' => __('Hide', 'everything'))));
protected function onSetupOptions(\Drone\Options\Group\Widget $options) { $options->addOption('text', 'title', '', __('Title', $this->_domain)); $options->addOption('select', 'category', 0, __('Category', $this->_domain), '', array('options' => array(0 => __('All', $this->_domain)) + Func::wpTermsList('category'))); $options->addOption('select', 'orderby', 'date', __('Sort by', $this->_domain), '', array('options' => array('title' => __('Title', $this->_domain), 'date' => __('Date', $this->_domain), 'modified' => __('Modified date', $this->_domain), 'comment_count' => __('Comment count', $this->_domain), 'rand' => __('Random order', $this->_domain)))); $options->addOption('select', 'order', 'desc', __('Sort order', $this->_domain), '', array('options' => array('asc' => __('Ascending', $this->_domain), 'desc' => __('Descending', $this->_domain)))); $options->addOption('number', 'count', 5, __('Posts count', $this->_domain), '', array('min' => 1, 'max' => 50)); $options->addOption('number', 'limit', 10, __('Post title words limit', $this->_domain), '', array('min' => 1)); $options->addOption('boolean', 'author', false, '', '', array('caption' => __('Show post author', $this->_domain))); $options->addOption('boolean', 'comments', false, '', '', array('caption' => __('Show comments count', $this->_domain))); }
protected function onSetupOptions(\Drone\Options\Group\Shortcode $options) { $options->addOption('select', 'category', 0, __('Category', 'everything'), __('Only for posts.', 'everything'), array('options' => function () { return array(0 => __('All categories', 'everything')) + Func::wpTermsList('category', array('hide_empty' => false)); })); $options->addOption('select', 'orderby', 'date', __('Sort by', 'everything'), '', array('options' => array('title' => __('Title', 'everything'), 'date' => __('Date', 'everything'), 'modified' => __('Modified date', 'everything'), 'comment_count' => __('Comment count', 'everything'), 'rand' => __('Random order', 'everything'), 'menu_order' => __('Custom order', 'everything')))); $options->addOption('select', 'order', 'desc', __('Sort order', 'everything'), '', array('options' => array('asc' => __('Ascending', 'everything'), 'desc' => __('Descending', 'everything')))); $options->addOption('number', 'count', get_option('posts_per_page'), __('Posts per page', 'everything'), '', array('min' => 1)); $options->addOption('boolean', 'exclude_previous', false, __('Duplicates', 'everything'), '', array('caption' => __('Exclude already displayed posts', 'everything'))); $options->addOption('boolean', 'pagination', true, __('Pagination', 'everything'), '', array('caption' => __('Yes', 'everything'))); $options->addOption('boolean', 'ignore_sticky_posts', false, __('Sticky posts', 'everything'), '', array('caption' => __('Ignore', 'everything'))); $options->addOption('select', 'style', 'classic', __('Style', 'everything'), '', array('options' => array('classic' => __('Classic', 'everything'), 'bricks' => __('Columns', 'everything')))); $options->addOption('number', 'columns', 2, __('Columns', 'everything'), __('Only for columns style.', 'everything'), array('min' => 1, 'max' => 8)); $options->addOption('select', 'filter', '', __('Filter', 'everything'), __('Only for columns style.', 'everything'), array('options' => array('' => '(' . __('None', 'everything') . ')', 'category' => __('Category', 'everything'), 'post_tag' => __('Tag', 'everything')))); }