コード例 #1
0
ファイル: builder_blocks.php プロジェクト: joasssko/schk
 /**
  * Build the block modals.
  */
 private function buildModals()
 {
     $thb_modal = new THB_Modal($this->getTitle(), $this->getSlug());
     $thb_modal_container = $thb_modal->createContainer('', $this->getSlug() . '_container');
     $thb_field = new THB_TextField('title');
     $thb_field->setLabel(__('Title', 'thb-portfolio'));
     $thb_modal_container->addField($thb_field);
     $thb_field = new THB_GraphicRadioField('layout');
     $thb_field->setLabel(__('Layout', 'thb_text_domain'));
     $thb_field->setOptions(thb_portfolio_config('builder_portfolio_layouts'));
     $thb_modal_container->addField($thb_field);
     thb_grid_layout_add_fields($thb_modal_container, thb_portfolio_config('grid_builder_columns'));
     $thb_field = new THB_QueryFilterField('query_filter');
     $thb_field->addClass('full');
     $thb_field->setTaxonomies(thb_get_post_type_taxonomies('works'));
     $thb_modal_container->addField($thb_field);
     $thb_field = new THB_CheckboxField('disable_filter');
     $thb_field->setLabel(__('Disable filter', 'thb-portfolio'));
     $thb_modal_container->addField($thb_field);
     $thb_field = new THB_YesNoField('works_ajax_pagination');
     $thb_field->setLabel(__('Use AJAX pagination', 'thb-portfolio'));
     $thb_field->setHelp(__('If the page template supports this feature (e.g. its items are filterable), enabling AJAX pagination won\'t refresh your page while filtering through Portfolio items.', 'thb-portfolio'));
     $thb_modal_container->addField($thb_field);
     $thb_modal_container = $thb_modal->createContainer(__('Carousel', 'thb_text_domain'), $this->getSlug() . '_carousel_container');
     thb_carousel_options($thb_modal_container);
     $this->addModal($thb_modal);
 }
コード例 #2
0
ファイル: module.php プロジェクト: alfredpp/sarath-portfolio
 function thb_add_portfolio_metabox()
 {
     $ajax = thb_config('core/portfolio', 'ajax');
     $thb_metabox = new THB_Metabox(__('Portfolio items', 'thb_text_domain'), 'portfolio_loop');
     $thb_metabox->setPriority('high');
     $thb_container = $thb_metabox->createContainer('', 'portfolio_loop_container');
     $thb_field = new THB_QueryFilterField('works_query');
     $thb_field->setTaxonomies(thb_get_post_type_taxonomies('works'));
     if (thb_is_admin_template(thb_config('core/portfolio', 'pagination_disabled'))) {
         $thb_field->setHideNum();
     }
     $thb_container->addField($thb_field);
     if (!empty($ajax)) {
         if (thb_is_admin_template($ajax)) {
             $thb_field = new THB_YesNoField('works_ajax_pagination');
             $thb_field->setLabel(__('Use AJAX pagination', 'thb_text_domain'));
             $thb_field->setHelp(__('If the page template supports this feature (e.g. its items are filterable), enabling AJAX pagination won\'t refresh your page while filtering through Portfolio items.', 'thb_text_domain'));
             $thb_container->addField($thb_field);
         }
     }
     thb_theme()->getPostType('page')->addMetabox($thb_metabox);
     if (thb_check_template_config('core/portfolio', 'grid_templates')) {
         $thb_metabox = thb_theme()->getPostType('page')->getMetabox('layout');
         $thb_container = $thb_metabox->getContainer('layout_container');
         $thb_field = new THB_SelectField('portfolio_columns');
         $thb_field->setLabel(thb_config('core/portfolio', 'grid_templates_columns_label'));
         $thb_field->setOptions(thb_config('core/portfolio', 'grid_templates_columns'));
         $thb_container->addField($thb_field);
         $grid_image_sizes = thb_config('core/portfolio', 'grid_image_sizes');
         if (!empty($grid_image_sizes)) {
             $grid_size_options = array();
             if (is_array(current($grid_image_sizes))) {
                 $grid_size_options[] = __('Fixed', 'thb_text_domain');
                 $grid_size_options[] = __('Variable', 'thb_text_domain');
             } else {
                 $grid_size_options[$grid_image_sizes[0]] = __('Fixed', 'thb_text_domain');
                 $grid_size_options[$grid_image_sizes[1]] = __('Variable', 'thb_text_domain');
             }
             $thb_field = new THB_SelectField('portfolio_grid_image_sizes');
             $thb_field->setLabel(__('Thumbnails height', 'thb_text_domain'));
             $thb_field->setOptions($grid_size_options);
             $thb_container->addField($thb_field);
         }
     }
 }
コード例 #3
0
ファイル: module.php プロジェクト: alfredpp/sarath-portfolio
 /**
  * Created the Flexslider configuration options container.
  *
  * @param strubg $label The container label.
  * @param strubg $slug The container slug.
  * @return THB_MetaboxFieldsContainer
  */
 function thb_flexslider_config_create_container($label = '', $slug = 'flexslider_options')
 {
     if (empty($label)) {
         $label = __('Flexslider options', 'thb_text_domain');
     }
     $thb_container = new THB_MetaboxFieldsContainer($label, $slug);
     $field = new THB_NumberField('slideshowHeight');
     $field->setLabel(__('Height', 'thb_text_domain'));
     $field->setMin('0');
     $thb_container->addField($field);
     $field = new THB_YesNoField('flexslider_smoothHeight');
     $field->setLabel(__('Variable height', 'thb_text_domain'));
     $field->setDefault('1');
     $thb_container->addField($field);
     $field = new THB_SelectField('flexslider_effects');
     $field->setLabel(__('Effects', 'thb_text_domain'));
     $field->setOptions(array('fade' => __('Fade', 'thb_text_domain'), 'slide' => __('Slide', 'thb_text_domain')));
     $thb_container->addField($field);
     return $thb_container;
 }
コード例 #4
0
ファイル: options.php プロジェクト: joasssko/schk
/**
 * Portfolio page templates options metabox
 */
function thb_add_portfolio_metabox()
{
    if (thb_portfolio_framework_check() && thb_portfolio_config('metabox') && thb_is_admin_template(thb_portfolio_config('templates'))) {
        $ajax = thb_portfolio_config('ajax');
        $grid = thb_portfolio_config('grid_templates');
        $grid_columns = thb_portfolio_config('grid_templates_columns');
        $thb_metabox = thb_theme()->getPostType('page')->getMetabox('layout');
        $thb_tab = $thb_metabox->createTab(__('Portfolio options', 'thb-portfolio'), 'portfolio_options');
        $thb_tab->setIcon('welcome-view-site');
        $thb_container = $thb_tab->createContainer('', 'portfolio_loop_container');
        if (!empty($grid)) {
            if (thb_is_admin_template($grid)) {
                $current_template = thb_get_admin_template();
                // if ( isset( $grid_columns[$current_template] ) ) {
                if (in_array($current_template, array_keys($grid_columns))) {
                    thb_grid_layout_add_fields($thb_container, $grid_columns[$current_template]);
                }
            }
        }
        $thb_container = $thb_tab->createContainer('Filtering & ordering', 'portfolio_filtering_container');
        $thb_field = new THB_QueryFilterField('works_query');
        $thb_field->addClass('full');
        $thb_field->setTaxonomies(thb_get_post_type_taxonomies('works'));
        if (thb_is_admin_template(thb_portfolio_config('pagination_disabled_templates'))) {
            $thb_field->setHideNum();
        }
        $thb_container->addField($thb_field);
        $thb_container = $thb_tab->getContainer('portfolio_loop_container');
        if (!empty($ajax)) {
            if (thb_is_admin_template($ajax)) {
                $thb_field = new THB_YesNoField('works_ajax_pagination');
                $thb_field->setLabel(__('Use AJAX pagination', 'thb-portfolio'));
                $thb_field->setHelp(__('If the page template supports this feature (e.g. its items are filterable), enabling AJAX pagination won\'t refresh your page while filtering through Portfolio items.', 'thb-portfolio'));
                $thb_container->addField($thb_field);
            }
        }
    }
}
コード例 #5
0
 function thb_woocommerce_extra_options()
 {
     $thb_theme = thb_theme();
     $thb_page = $thb_theme->getAdmin()->getMainPage();
     $thb_tab = $thb_page->getTab('woocommerce');
     $thb_container = $thb_tab->createContainer(__('Shop general options', 'thb_text_domain'), 'woocommerce_general_options');
     $thb_field = new THB_YesNoField('enable_shop_cart_allpages');
     $thb_field->setLabel(__('Enable shop cart on all pages', 'thb_text_domain'));
     $thb_field->setHelp(__('Choose if you want to enable the shop cart on header on all pages or only for "Shop" related pages.', 'thb_text_domain'));
     $thb_container->addField($thb_field);
     $thb_container = $thb_tab->getContainer('woocommerce_shop_options');
     $thb_field = new THB_SelectField('woocommerce_shop_pageheader_layout');
     $thb_field->setLabel(__('Page header layout', 'thb_text_domain'));
     $thb_field->setOptions(array('left' => __('Left', 'thb_text_domain'), 'center' => __('Center', 'thb_text_domain'), 'right' => __('Right', 'thb_text_domain')));
     $thb_container->addField($thb_field);
     $thb_field = new THB_SelectField('woocommerce_shop_pageheader_height');
     $thb_field->setLabel(__('Page header height', 'thb_text_domain'));
     $thb_field->setOptions(array('pageheader-big' => __('Large', 'thb_text_domain'), 'pageheader-compact' => __('Compact', 'thb_text_domain')));
     $thb_field->setHelp(__('This setting will affect also the shop\'s archive and taxonomy pages.', 'thb_text_domain'));
     $thb_container->addField($thb_field);
     $thb_field = new THB_UploadField('woocommerce_shop_pageheader_background_image');
     $thb_field->setLabel(__('Page header background image', 'thb_text_domain'));
     $thb_container->addField($thb_field);
     $thb_field = new THB_NumberField('woocommerce_shop_pageheader_background_opacity');
     $thb_field->setMin(0);
     $thb_field->setMax(1);
     $thb_field->setStep(0.05);
     $thb_field->setLabel(__('Page header background opacity', 'thb_text_domain'));
     $thb_container->addField($thb_field);
 }
コード例 #6
0
ファイル: module.php プロジェクト: alfredpp/sarath-portfolio
 function thb_layout_global_options_container()
 {
     $thb_container = new THB_MetaboxFieldsContainer('', 'layout_container');
     if (thb_check_template_config('core/layout', 'meta_options_subtitle')) {
         if (!empty($_POST) || !thb_text_startsWith(thb_get_admin_template(), 'single')) {
             $field = new THB_TextField('subtitle');
             $field->setLabel(__('Page subtitle', 'thb_text_domain'));
             $thb_container->addField($field);
         }
     }
     if (thb_check_template_config('core/layout', 'meta_options_pageheader_disable')) {
         $field = new THB_CheckBoxField('pageheader_disable');
         $field->setDefault(false);
         $field->setLabel(__('Disable page header', 'thb_text_domain'));
         $thb_container->addField($field);
     }
     if (thb_check_template_config('core/layout', 'meta_options_page_boxed')) {
         $field = new THB_CheckBoxField('page_boxed');
         $field->setDefault(false);
         $field->setLabel(__('Box the page content and sidebar', 'thb_text_domain'));
         $field->setHelp(__('Checking this option, the page content and sidebar will both have a color background.', 'thb_text_domain'));
         $thb_container->addField($field);
     }
     if (thb_check_template_config('core/layout', 'meta_options_gutter')) {
         $thb_field = new THB_YesNoField('gutter');
         $thb_field->setDefault(thb_config('core/layout', 'meta_options_gutter_default'));
         $thb_field->setLabel(__('Gutter', 'thb_text_domain'));
         $thb_container->addField($thb_field);
     }
     return $thb_container;
 }