示例#1
0
 /**
  * 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
文件: 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);
            }
        }
    }
}