public function getControlAnimationList() { VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Gitem_Animated_Block'); $output = ''; $animations = WPBakeryShortCode_VC_Gitem_Animated_Block::animations(); if (is_array($animations)) { $output .= '<li class="vc_pull-right vc_gitem-navbar-dropdown">' . '<select data-vc-navbar-control="animation">'; foreach ($animations as $value => $key) { $output .= '<option value="' . esc_attr($key) . '">' . esc_html($value) . '</option>'; } $output .= '</select></li>'; } return $output; }
public function enqueue() { visual_composer()->frontCss(); visual_composer()->frontJsRegister(); wp_enqueue_script('prettyphoto'); wp_enqueue_style('prettyphoto'); wp_enqueue_style('js_composer_front'); wp_enqueue_script('wpb_composer_front_js'); wp_enqueue_style('js_composer_custom_css'); VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Basic_Grid'); $grid = new WPBakeryShortCode_VC_Basic_Grid(array('base' => 'vc_basic_grid')); $grid->shortcodeScripts(); $grid->enqueueScripts(); }
private function __construct($load_config = true) { if (!$load_config) { return; } $config = array('classmap_file' => vc_path_dir('APP_ROOT', 'vc_classmap.json.php'), 'shortcodes_dir' => vc_path_dir('SHORTCODES_DIR'), 'root_dir' => vc_path_dir('APP_ROOT')); if (is_file($config['classmap_file'])) { $config['classmap'] = (require $config['classmap_file']); self::$cached = true; } else { $config['classmap'] = self::generateClassMap($config['shortcodes_dir']); self::$cached = false; } self::$config = $config; }
<?php VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Single_image'); $atts = array(); parse_str($data, $atts); $el_class = $image = $img_size = $img_link = $img_link_target = $img_link_large = $title = $alignment = $css_animation = $css = ''; $image_string = ''; $img_class = new WPBakeryShortCode_VC_Single_image(array('base' => 'vc_single_image')); /** @var $img_class WPBakeryShortCode_VC_Single_image */ $atts = vc_map_get_attributes($img_class->getShortcode(), $atts); extract($atts); $style = '' !== $style ? $style : ''; $border_color = '' !== $border_color ? ' vc_box_border_' . $border_color : ''; $img_id = get_post_thumbnail_id($post->ID); $img = wpb_getImageBySize(array('attach_id' => $img_id, 'thumb_size' => $img_size, 'class' => 'vc_single_image-img')); $img = apply_filters('vc_gitem_attribute_featured_image_img', $img); if (null === $img || false === $img) { return ''; } $el_class = $img_class->getExtraClass($el_class); $wrapperClass = 'vc_single_image-wrapper ' . $style . ' ' . $border_color; $link = vc_gitem_create_link_real($atts, $post, '', $title); $image_string = !empty($link) ? '<' . $link . '>' . $img['thumbnail'] . '</a>' : '<div class="' . $wrapperClass . '">' . $img['thumbnail'] . '</div>'; $css_class = apply_filters(VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, 'wpb_single_image wpb_content_element' . $el_class . vc_shortcode_custom_css_class($css, ' '), $img_class->settings('base'), $atts); $css_class .= $img_class->getCSSAnimation($css_animation); $css_class .= ' vc_align_' . $alignment; $output = ' <div class="' . $css_class . '"> <figure class="wpb_wrapper vc_figure"> ' . $image_string . ' </figure>
<?php if (!defined('ABSPATH')) { die('-1'); } if ('vc_edit_form' === vc_post_param('action')) { VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Wp_Text'); add_filter('vc_edit_form_fields_attributes_vc_wp_text', array('WPBakeryShortCode_VC_Wp_Text', 'convertTextAttributeToContent')); }
<?php if (!defined('ABSPATH')) { die('-1'); } VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Progress_Bar'); add_filter('vc_edit_form_fields_attributes_vc_progress_bar', array('WPBakeryShortCode_VC_Progress_Bar', 'convertAttributesToNewProgressBar'));
<?php VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Tta_Accordion'); class WPBakeryShortCode_VC_Tta_Tour extends WPBakeryShortCode_VC_Tta_Tabs { public $layout = 'tabs'; public function getTtaGeneralClasses() { $classes = parent::getTtaGeneralClasses(); if (isset($this->atts['controls_size'])) { $classes .= ' ' . $this->getTemplateVariable('controls_size'); } return $classes; } /** * @param $atts * @param $content * * @return string|null */ public function getParamControlsSize($atts, $content) { if (isset($atts['controls_size']) && strlen($atts['controls_size']) > 0) { return 'vc_tta-controls-size-' . $atts['controls_size']; } return null; } /** * @param $atts * @param $content *
/** * @return WPBakeryShortCodeFishBones */ public function shortcodeClass() { if (false !== $this->shortcode_class) { return $this->shortcode_class; } require_once vc_path_dir('SHORTCODES_DIR', 'wordpress-widgets.php'); $class_name = $this->settings('php_class_name') ? $this->settings('php_class_name') : 'WPBakeryShortCode_' . $this->settings('base'); $autoloaded_dependencies = VcShortcodeAutoloader::getInstance()->includeClass($class_name); if (!$autoloaded_dependencies) { $file = vc_path_dir('SHORTCODES_DIR', str_replace('_', '-', $this->settings('base')) . '.php'); if (is_file($file)) { require_once $file; } } if (class_exists($class_name) && is_subclass_of($class_name, 'WPBakeryShortCode')) { $this->shortcode_class = new $class_name($this->settings); } else { $this->shortcode_class = $this; } return $this->shortcode_class; }
public function getElementClass($tag) { if (isset($this->shortcode_classes[$tag])) { return $this->shortcode_classes[$tag]; } $settings = WPBMap::getShortCode($tag); require_once vc_path_dir('SHORTCODES_DIR', 'wordpress-widgets.php'); $class_name = !empty($settings['php_class_name']) ? $settings['php_class_name'] : 'WPBakeryShortCode_' . $tag; $autoloaded_dependencies = VcShortcodeAutoloader::getInstance()->includeClass($class_name); if (!$autoloaded_dependencies) { $file = vc_path_dir('SHORTCODES_DIR', str_replace('_', '-', $tag) . '.php'); if (is_file($file)) { require_once $file; } } if (class_exists($class_name) && is_subclass_of($class_name, 'WPBakeryShortCode')) { $shortcode_class = new $class_name($settings); } else { $shortcode_class = new WPBakeryShortCodeFishBones($settings); } $this->shortcode_classes[$tag] = $shortcode_class; return $shortcode_class; }
<?php VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_Vc_Pie'); add_filter('vc_edit_form_fields_attributes_vc_pie', array('WPBakeryShortCode_VC_Pie', 'convertOldColorsToNew'));
<?php VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Gitem_Animated_Block'); global $vc_column_width_list; global $vc_add_css_animation; global $vc_gitem_add_link_param; $vc_gitem_add_link_param = apply_filters('vc_gitem_add_link_param', array('type' => 'dropdown', 'heading' => __('Add link', 'js_composer'), 'param_name' => 'link', 'value' => array(__('None', 'js_composer') => 'none', __('Post link', 'js_composer') => 'post_link', __('Large image', 'js_composer') => 'image', __('Large image (prettyPhoto)', 'js_composer') => 'image_lightbox', __('Custom', 'js_composer') => 'custom'), 'description' => __('Select link option.', 'js_composer'))); $zone_params = array($vc_gitem_add_link_param, array('type' => 'vc_link', 'heading' => __('URL (Link)', 'js_composer'), 'param_name' => 'url', 'dependency' => array('element' => 'link', 'value' => array('custom')), 'description' => __('Add custom link.', 'js_composer')), array('type' => 'checkbox', 'heading' => __('Use featured image on background?', 'js_composer'), 'param_name' => 'featured_image', 'value' => array(__('Yes', 'js_composer') => 'yes'), 'description' => __('Note: Featured image overwrites background image and color from "Design Options".', 'js_composer')), array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css', 'group' => __('Design Options', 'js_composer')), array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))); $post_data_params = array($vc_gitem_add_link_param, array('type' => 'vc_link', 'heading' => __('URL (Link)', 'js_composer'), 'param_name' => 'url', 'dependency' => array('element' => 'link', 'value' => array('custom')), 'description' => __('Add custom link.', 'js_composer')), array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css', 'group' => __('Design Options', 'js_composer'))); $custom_fonts_params = array(array('type' => 'font_container', 'param_name' => 'font_container', 'value' => '', 'settings' => array('fields' => array('tag' => 'div', 'text_align', 'tag_description' => __('Select element tag.', 'js_composer'), 'text_align_description' => __('Select text alignment.', 'js_composer'), 'font_size_description' => __('Enter font size.', 'js_composer'), 'line_height_description' => __('Enter line height.', 'js_composer'), 'color_description' => __('Select color for your element.', 'js_composer')))), array('type' => 'checkbox', 'heading' => __('Use custom fonts?', 'js_composer'), 'param_name' => 'use_custom_fonts', 'value' => array(__('Yes', 'js_composer') => 'yes'), 'description' => __('Enable Google fonts.', 'js_composer')), array('type' => 'font_container', 'param_name' => 'block_container', 'value' => '', 'settings' => array('fields' => array('font_size', 'line_height', 'color', 'tag_description' => __('Select element tag.', 'js_composer'), 'text_align_description' => __('Select text alignment.', 'js_composer'), 'font_size_description' => __('Enter font size.', 'js_composer'), 'line_height_description' => __('Enter line height.', 'js_composer'), 'color_description' => __('Select color for your element.', 'js_composer'))), 'group' => __('Custom fonts', 'js_composer'), 'dependency' => array('element' => 'use_custom_fonts', 'value' => array('yes'))), array('type' => 'checkbox', 'heading' => __('Yes theme default font family?', 'js_composer'), 'param_name' => 'use_theme_fonts', 'value' => array(__('Yes', 'js_composer') => 'yes'), 'description' => __('Yes font family from the theme.', 'js_composer'), 'group' => __('Custom fonts', 'js_composer'), 'dependency' => array('element' => 'use_custom_fonts', 'value' => array('yes'))), array('type' => 'google_fonts', 'param_name' => 'google_fonts', 'value' => '', 'settings' => array('fields' => array('font_family_description' => __('Select font family.', 'js_composer'), 'font_style_description' => __('Select font styling.', 'js_composer'))), 'group' => __('Custom fonts', 'js_composer'), 'dependency' => array('element' => 'use_theme_fonts', 'value_not_equal_to' => 'yes'))); $list = array('vc_gitem' => array('name' => __('Grid Item', 'js_composer'), 'base' => 'vc_gitem', 'is_container' => true, 'icon' => 'icon-wpb-gitem', 'content_element' => false, 'show_settings_on_create' => false, 'category' => __('Content', 'js_composer'), 'description' => __('Main grid item', 'js_composer'), 'params' => array(array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css'), array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))), 'js_view' => 'VcGitemView', 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_animated_block' => array('base' => 'vc_gitem_animated_block', 'name' => __('A/B block', 'js_composer'), 'content_element' => false, 'is_container' => true, 'show_settings_on_create' => false, 'icon' => 'icon-wpb-gitem-block', 'category' => __('Content', 'js_composer'), 'controls' => array(), 'as_parent' => array('only' => array('vc_gitem_zone_a', 'vc_gitem_zone_b')), 'params' => array(array('type' => 'dropdown', 'heading' => __('Animation', 'js_composer'), 'param_name' => 'animation', 'value' => WPBakeryShortCode_VC_Gitem_Animated_Block::animations())), 'js_view' => 'VcGitemAnimatedBlockView', 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_zone' => array('name' => __('Zone', 'js_composer'), 'base' => 'vc_gitem_zone', 'content_element' => false, 'is_container' => true, 'show_settings_on_create' => false, 'icon' => 'icon-wpb-gitem-zone', 'category' => __('Content', 'js_composer'), 'controls' => array('edit'), 'as_parent' => array('only' => 'vc_gitem_row'), 'js_view' => 'VcGitemZoneView', 'params' => $zone_params, 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_zone_a' => array('name' => __('Normal Block', 'js_composer'), 'base' => 'vc_gitem_zone_a', 'content_element' => false, 'is_container' => true, 'show_settings_on_create' => false, 'icon' => 'icon-wpb-gitem-zone', 'category' => __('Content', 'js_composer'), 'controls' => array('edit'), 'as_parent' => array('only' => 'vc_gitem_row'), 'js_view' => 'VcGitemZoneView', 'params' => array_merge(array(array('type' => 'dropdown', 'heading' => __('Height mode', 'js_composer'), 'param_name' => 'height_mode', 'value' => array('1:1' => '1-1', __('Original', 'js_composer') => 'original', '4:3' => '4-3', '3:4' => '3-4', '16:9' => '16-9', '9:16' => '9-16', __('Custom', 'js_composer') => 'custom'), 'description' => __('Sizing proportions for height and width. Select "Original" to scale image without cropping.', 'js_composer')), array('type' => 'textfield', 'heading' => __('Height', 'js_composer'), 'param_name' => 'height', 'dependency' => array('element' => 'height_mode', 'value' => array('custom')), 'description' => __('Enter custom height.', 'js_composer'))), $zone_params), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_zone_b' => array('name' => __('Hover Block', 'js_composer'), 'base' => 'vc_gitem_zone_b', 'content_element' => false, 'is_container' => true, 'show_settings_on_create' => false, 'icon' => 'icon-wpb-gitem-zone', 'category' => __('Content', 'js_composer'), 'controls' => array('edit'), 'as_parent' => array('only' => 'vc_gitem_row'), 'js_view' => 'VcGitemZoneView', 'params' => $zone_params, 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_zone_c' => array('name' => __('Additional Block', 'js_composer'), 'base' => 'vc_gitem_zone_c', 'content_element' => false, 'is_container' => true, 'show_settings_on_create' => false, 'icon' => 'icon-wpb-gitem-zone', 'category' => __('Content', 'js_composer'), 'controls' => array('move', 'delete', 'edit'), 'as_parent' => array('only' => 'vc_gitem_row'), 'js_view' => 'VcGitemZoneCView', 'params' => array(array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css'), array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_row' => array('name' => __('Row', 'js_composer'), 'base' => 'vc_gitem_row', 'content_element' => false, 'is_container' => true, 'icon' => 'icon-wpb-row', 'weight' => 1000, 'show_settings_on_create' => false, 'controls' => array('layout', 'delete'), 'allowed_container_element' => 'vc_gitem_col', 'category' => __('Content', 'js_composer'), 'description' => __('Place content elements inside the row', 'js_composer'), 'params' => array(array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))), 'js_view' => 'VcGitemRowView', 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_col' => array('name' => __('Column', 'js_composer'), 'base' => 'vc_gitem_col', 'icon' => 'icon-wpb-row', 'weight' => 1000, 'is_container' => true, 'allowed_container_element' => false, 'content_element' => false, 'controls' => array('edit'), 'description' => __('Place content elements inside the column', 'js_composer'), 'params' => array(array('type' => 'dropdown', 'heading' => __('Width', 'js_composer'), 'param_name' => 'width', 'value' => $vc_column_width_list, 'description' => __('Select column width.', 'js_composer'), 'std' => '1/1'), array('type' => 'checkbox', 'heading' => __('Use featured image on background?', 'js_composer'), 'param_name' => 'featured_image', 'value' => array(__('Yes', 'js_composer') => 'yes'), 'description' => __('Note: Featured image overwrites background image and color from "Design Options".', 'js_composer')), array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css', 'group' => __('Design Options', 'js_composer')), array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))), 'js_view' => 'VcGitemColView', 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_post_title' => array('name' => __('Post Title', 'js_composer'), 'base' => 'vc_gitem_post_title', 'icon' => 'vc_icon-vc-gitem-post-title', 'category' => __('Post', 'js_composer'), 'description' => __('Title of current post', 'js_composer'), 'params' => array_merge($post_data_params, $custom_fonts_params, array(array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer')))), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_post_excerpt' => array('name' => __('Post Excerpt', 'js_composer'), 'base' => 'vc_gitem_post_excerpt', 'icon' => 'vc_icon-vc-gitem-post-excerpt', 'category' => __('Post', 'js_composer'), 'description' => __('Excerpt or manual excerpt', 'js_composer'), 'params' => array_merge($post_data_params, $custom_fonts_params, array(array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer')))), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_image' => array('name' => __('Post Image', 'js_composer'), 'base' => 'vc_gitem_image', 'icon' => 'vc_icon-vc-gitem-image', 'category' => __('Post', 'js_composer'), 'description' => __('Featured image', 'js_composer'), 'params' => array($vc_gitem_add_link_param, array('type' => 'vc_link', 'heading' => __('URL (Link)', 'js_composer'), 'param_name' => 'url', 'dependency' => array('element' => 'link', 'value' => array('custom')), 'description' => __('Add custom link.', 'js_composer')), array('type' => 'textfield', 'heading' => __('Image size', 'js_composer'), 'param_name' => 'img_size', 'description' => __('Enter image size (Example: "thumbnail", "medium", "large", "full" or other sizes defined by theme). Alternatively enter size in pixels (Example: 200x100 (Width x Height)). Leave parameter empty to use "thumbnail" by default.', 'js_composer')), array('type' => 'dropdown', 'heading' => __('Image alignment', 'js_composer'), 'param_name' => 'alignment', 'value' => array(__('Left', 'js_composer') => '', __('Right', 'js_composer') => 'right', __('Center', 'js_composer') => 'center'), 'description' => __('Select image alignment.', 'js_composer')), array('type' => 'dropdown', 'heading' => __('Image style', 'js_composer'), 'param_name' => 'style', 'value' => getVcShared('single image styles'), 'description' => __('Select image display style.', 'js_composer')), array('type' => 'dropdown', 'heading' => __('Border color', 'js_composer'), 'param_name' => 'border_color', 'value' => getVcShared('colors'), 'std' => 'grey', 'dependency' => array('element' => 'style', 'value' => array('vc_box_border', 'vc_box_border_circle', 'vc_box_outline', 'vc_box_outline_circle')), 'description' => __('Border color.', 'js_composer'), 'param_holder_class' => 'vc_colored-dropdown'), $vc_add_css_animation, array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer')), array('type' => 'css_editor', 'heading' => __('CSS box', 'js_composer'), 'param_name' => 'css', 'group' => __('Design Options', 'js_composer'))), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_post_date' => array('name' => __('Post Date', 'js_composer'), 'base' => 'vc_gitem_post_date', 'icon' => 'vc_icon-vc-gitem-post-date', 'category' => __('Post', 'js_composer'), 'description' => __('Post publish date', 'js_composer'), 'params' => array_merge($post_data_params, $custom_fonts_params, array(array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer')))), 'post_type' => Vc_Grid_Item_Editor::postType()), 'vc_gitem_post_meta' => array('name' => __('Custom Field', 'js_composer'), 'base' => 'vc_gitem_post_meta', 'icon' => 'vc_icon-vc-gitem-post-meta', 'category' => array(__('Elements', 'js_composer')), 'description' => __('Custom fields data from meta values of the post.', 'js_composer'), 'params' => array(array('type' => 'textfield', 'heading' => __('Field key name', 'js_composer'), 'param_name' => 'key', 'description' => __('Enter custom field name to retrieve meta data value.', 'js_composer')), array('type' => 'textfield', 'heading' => __('Label', 'js_composer'), 'param_name' => 'label', 'description' => __('Enter label to display before key value.', 'js_composer')), array('type' => 'dropdown', 'heading' => __('Alignment', 'js_composer'), 'param_name' => 'align', 'value' => array(__('Left', 'js_composer') => 'left', __('Right', 'js_composer') => 'right', __('Center', 'js_composer') => 'center', __('Justify', 'js_composer') => 'justify'), 'description' => __('Select alignment.', 'js_composer')), array('type' => 'textfield', 'heading' => __('Extra class name', 'js_composer'), 'param_name' => 'el_class', 'description' => __('Style particular content element differently - add a class name and refer to it in custom CSS.', 'js_composer'))), 'post_type' => Vc_Grid_Item_Editor::postType())); $shortcode_vc_column_text = WPBMap::getShortCode('vc_column_text'); if (is_array($shortcode_vc_column_text) && isset($shortcode_vc_column_text['base'])) { $list['vc_column_text'] = $shortcode_vc_column_text; $list['vc_column_text']['post_type'] = Vc_Grid_Item_Editor::postType(); } $shortcode_vc_separator = WPBMap::getShortCode('vc_separator'); if (is_array($shortcode_vc_separator) && isset($shortcode_vc_separator['base'])) { $list['vc_separator'] = $shortcode_vc_separator; $list['vc_separator']['post_type'] = Vc_Grid_Item_Editor::postType(); } $shortcode_vc_text_separator = WPBMap::getShortCode('vc_text_separator'); if (is_array($shortcode_vc_text_separator) && isset($shortcode_vc_text_separator['base'])) { $list['vc_text_separator'] = $shortcode_vc_text_separator; $list['vc_text_separator']['post_type'] = Vc_Grid_Item_Editor::postType(); } $shortcode_vc_icon = WPBMap::getShortCode('vc_icon'); if (is_array($shortcode_vc_icon) && isset($shortcode_vc_icon['base'])) { $list['vc_icon'] = $shortcode_vc_icon; $list['vc_icon']['post_type'] = Vc_Grid_Item_Editor::postType(); $list['vc_icon']['params'] = vc_map_integrate_shortcode('vc_icon', '', '', array('exclude' => array('link')));
/** * @param $atts * @param $content * * @return string */ public function getParamPaginationList($atts, $content) { if (empty($atts['pagination_style'])) { return null; } $isPageEditabe = vc_is_page_editable(); $sectionClass = $this->sectionClass; $html = array(); $html[] = '<ul class="' . $this->getTtaPaginationClasses() . '">'; if (!$isPageEditabe) { VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Tta_Section'); foreach (WPBakeryShortCode_VC_Tta_Section::$section_info as $nth => $section) { $strict_bounds = 'vc_tta_tabs' === $this->shortcode; $active_section = $this->getActiveSection($atts, $strict_bounds); $classes = array('vc_pagination-item'); if ($nth + 1 === $active_section) { $classes[] = $this->activeClass; } $a_html = '<a href="#' . $section['tab_id'] . '" class="vc_pagination-trigger" data-vc-tabs data-vc-container=".vc_tta"></a>'; $html[] = '<li class="' . implode(' ', $classes) . '" data-vc-tab>' . $a_html . '</li>'; } } $html[] = '</ul>'; return implode('', $html); }
<?php if (!defined('ABSPATH')) { die('-1'); } /** * @var $vc_btn WPBakeryShortCode_VC_Gitem_Post_Categories * @var $post WP_Post * @var $atts * */ VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Gitem_Post_Categories'); $categories = get_the_category(); $separator = ''; $css_class = array('vc_gitem-post-data'); $css_class[] = vc_shortcode_custom_css_class($atts['css']); $css_class[] = $atts['el_class']; $css_class[] = 'vc_gitem-post-data-source-post_categories'; $style = str_replace(',', 'comma', $atts['category_style']); $output = '<div class="' . esc_attr(implode(' ', array_filter($css_class))) . ' vc_grid-filter vc_clearfix vc_grid-filter-' . esc_attr($style) . ' vc_grid-filter-size-' . esc_attr($atts['category_size']) . ' vc_grid-filter-center vc_grid-filter-color-' . esc_attr($atts['category_color']) . '">'; $data = array(); if (!empty($categories)) { foreach ($categories as $category) { $category_link = ''; if (!empty($atts['link'])) { $category_link = 'href="' . esc_url(get_category_link($category->term_id)) . '" alt="' . esc_attr(sprintf(__('View all posts in %s', 'js_composer'), $category->name)) . '"'; } $wrapper = '<div class="vc_grid-filter-item vc_gitem-post-category-name">'; $content = esc_html($category->name); if (!empty($category_link)) { $content = '<span class="vc_gitem-post-category-name"><a ' . $category_link . ' class="vc_gitem-link">' . $content . '</a>' . '</span>';
* @output/@return string - grid data for ajax request. */ public function getGridDataForAjax() { $tag = vc_request_param('tag'); $allowed = apply_filters('vc_grid_get_grid_data_access', vc_verify_public_nonce() && $tag, $tag); if ($allowed) { $shortcode_fishbone = visual_composer()->getShortCode($tag); if (is_object($shortcode_fishbone)) { /** @var $vc_grid WPBakeryShortcode_Vc_Basic_Grid */ $vc_grid = $shortcode_fishbone->shortcodeClass(); if (method_exists($vc_grid, 'isObjectPageable') && $vc_grid->isObjectPageable() && method_exists($vc_grid, 'renderAjax')) { echo $vc_grid->renderAjax(vc_request_param('data')); die; } } } } } /** * @since 4.4 * @var Vc_Hooks_Vc_Grid $hook */ $hook = new Vc_Hooks_Vc_Grid(); // when visual composer initialized let's trigger Vc_Grid hooks. add_action('vc_after_init', array($hook, 'load')); VcShortcodeAutoloader::getInstance()->includeClass('WPBakeryShortCode_VC_Basic_Grid'); add_filter('vc_edit_form_fields_attributes_vc_basic_grid', array('WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3')); add_filter('vc_edit_form_fields_attributes_vc_media_grid', array('WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3')); add_filter('vc_edit_form_fields_attributes_vc_masonry_grid', array('WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3')); add_filter('vc_edit_form_fields_attributes_vc_masonry_media_grid', array('WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3'));