/** * Parser for column options * * @since 2.0.0 */ public static function parse_column_options() { $short_codes = NULL; // this element will have all shortcodes once processing ends foreach (self::$meta_content as $element) { //traverse elements //convert stdObject to Array :: quick way $element = json_decode(json_encode($element), true); $css_class = $element['css_class']; $css_class = explode(" ", $css_class); $css_class = @$css_class[1]; if (empty($css_class)) { $css_class = $element['php_class']; } switch ($css_class) { //switch on unique element case 'grid_two': //add layout container $short_codes .= '[one_half ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; //check if child elements exist. Then parse elements one by one $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/one_half]'; break; case 'grid_three': $short_codes .= '[one_third ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/one_third]'; break; case 'grid_four': $short_codes .= '[one_fourth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/one_fourth]'; break; case 'grid_five': $short_codes .= '[one_fifth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/one_fifth]'; break; case 'grid_two_fifth': $short_codes .= '[two_fifth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/two_fifth]'; break; case 'grid_three_fifth': $short_codes .= '[three_fifth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/three_fifth]'; break; case 'grid_four_fifth': $short_codes .= '[four_fifth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/four_fifth]'; break; case 'grid_six': $short_codes .= '[one_sixth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/one_sixth]'; break; case 'grid_five_sixth': $short_codes .= '[five_sixth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/five_sixth]'; break; case 'grid_three_fourth': $short_codes .= '[three_fourth ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/three_fourth]'; break; case 'grid_two_third': $short_codes .= '[two_third ' . Fusion_Core_Shortcodes_Parser::prepare_column_attr($element['subElements']) . ']'; $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= '[/two_third]'; break; case 'fusion_full_width': $short_codes .= Fusion_Core_Shortcodes_Parser::build_full_width_container_shortocde($element['subElements']); $short_codes .= Fusion_Core_Shortcodes_Parser::parse_column_element($element); $short_codes .= ' [/fullwidth]'; break; default: //default case. For elements without layout column if (!isset($element['parentId'])) { //if element does not have any parent (column element) //parse this element separately. $short_codes .= Fusion_Core_Shortcodes_Parser::parse_builder_elements($element); } } } //good to go :) return $short_codes; }