/home/vianto5/hidalgoresidences.mx/wp-content/themes/Bridge100/bridge
NameSizeModeActions
css/-0755rm
export/-0755rm
extendvc/-0755rm
framework/-0755rm
img/-0755rm
includes/-0755rm
js/-0755rm
languages/-0755rm
licence/-0755rm
plugins/-0755rm
templates/-0755rm
tribe-events/-0755rm
vc_templates/-0755rm
widgets/-0755rm
woocommerce/-0755rm
404.php17140644editdlrm
archive.php26340644editdlrm
blog-chequered.php51410644editdlrm
blog-compound.php48950644editdlrm
blog-gallery.php31060644editdlrm
blog-headlines.php47560644editdlrm
blog-large-image-simple.php46850644editdlrm
blog-large-image-whole-post.php46320644editdlrm
blog-large-image-with-dividers.php46840644editdlrm
blog-large-image.php46700644editdlrm
blog-masonry-date-in-image.php52120644editdlrm
blog-masonry-full-width-date-in-image.php31040644editdlrm
blog-masonry-full-width.php30890644editdlrm
blog-masonry-gallery.php31630644editdlrm
blog-masonry.php51960644editdlrm
blog-pinterest.php51980644editdlrm
blog-small-image.php49610644editdlrm
blog-vertical-loop.php26730644editdlrm
category.php24280644editdlrm
changes.txt931970644editdlrm
comments.php33130644editdlrm
contact-page.php83750644editdlrm
event-template.php37790644editdlrm
footer.php149900644editdlrm
full_screen.php34970644editdlrm
full_width.php47220644editdlrm
functions.php1104310644editdlrm
header.php58880644editdlrm
home.php26830644editdlrm
index.php28110644editdlrm
landing_page.php105070644editdlrm
page.php52140644editdlrm
rtl.css264870644editdlrm
screenshot.png4639220644editdlrm
search.php52790644editdlrm
searchform.php3500644editdlrm
sidebar.php14790644editdlrm
single-portfolio_page.php70950644editdlrm
single.php44290644editdlrm
slider.php2560644editdlrm
style.css5550644editdlrm
theme-includes.php26750644editdlrm
title.php370510644editdlrm
toolbar.php77140644editdlrm
toolbar_examples.php19320644editdlrm
woocommerce.php46920644editdlrm
wpml-config.xml228800644editdlrm
Edit: /home/vianto5/hidalgoresidences.mx/wp-content/themes/Bridge100/bridge/functions.php (110431B)
enqueueStyles(); wp_enqueue_style("stylesheet", QODE_ROOT . "/css/stylesheet.min.css"); if ($woocommerce) { wp_enqueue_style("woocommerce", QODE_ROOT . "/css/woocommerce.min.css"); if (!empty($qode_options_proya['responsiveness']) && $qode_options_proya['responsiveness'] == 'yes') { wp_enqueue_style("woocommerce_responsive", QODE_ROOT . "/css/woocommerce_responsive.min.css"); } } wp_enqueue_style("qode_print", QODE_ROOT . "/css/print.css"); preg_match("#Chrome/(.+?)\.#", $_SERVER['HTTP_USER_AGENT'], $match); if (!empty($match)) { $version = $match[1]; } else { $version = 0; } $mac_os = strpos($_SERVER['HTTP_USER_AGENT'], "Macintosh; Intel Mac OS X"); if ($is_chrome && ($mac_os !== false) && ($version > 21)) { wp_enqueue_style("mac_stylesheet", QODE_ROOT . "/css/mac_stylesheet.css"); } if ($is_chrome || $is_safari) { wp_enqueue_style("webkit", QODE_ROOT . "/css/webkit_stylesheet.css"); } if ($is_safari) { wp_enqueue_style("safari", QODE_ROOT . "/css/safari_stylesheet.css"); } if (qode_timetable_schedule_installed()) { wp_enqueue_style("qode_timetable", QODE_ROOT . "/css/timetable-schedule.min.css"); wp_enqueue_style("qode_timetable_responsive", QODE_ROOT . "/css/timetable-schedule-responsive.min.css"); } //load styles before style dynamic because they are overriden with custom styles, qode-news for ex. do_action('qode_add_styles_before_style_dynamic'); if (file_exists(dirname(__FILE__) . "/css/style_dynamic.css") && qode_is_css_folder_writable() && !is_multisite()) { wp_enqueue_style("style_dynamic", QODE_ROOT . "/css/style_dynamic.css", array(), filemtime(dirname(__FILE__) . "/css/style_dynamic.css")); } else if (file_exists(QODE_ROOT_DIR . '/css/style_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.css') && qode_is_css_folder_writable() && is_multisite()) { wp_enqueue_style('style_dynamic', QODE_ROOT . '/css/style_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.css', array(), filemtime(QODE_ROOT_DIR . '/css/style_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.css')); //it must be included after woocommerce styles so it can override it } else { wp_enqueue_style("style_dynamic", QODE_ROOT . "/css/style_dynamic.php"); } $responsiveness = "yes"; if (isset($qode_options_proya['responsiveness'])) $responsiveness = $qode_options_proya['responsiveness']; if ($responsiveness != "no"): wp_enqueue_style("responsive", QODE_ROOT . "/css/responsive.min.css"); if (file_exists(dirname(__FILE__) . "/css/style_dynamic_responsive.css") && qode_is_css_folder_writable() && !is_multisite()) { wp_enqueue_style("style_dynamic_responsive", QODE_ROOT . "/css/style_dynamic_responsive.css", array(), filemtime(dirname(__FILE__) . "/css/style_dynamic_responsive.css")); } else if (file_exists(QODE_ROOT_DIR . '/css/style_dynamic_responsive_ms_id_' . qode_get_multisite_blog_id() . '.css') && qode_is_css_folder_writable() && is_multisite()) { wp_enqueue_style('style_dynamic_responsive', QODE_ROOT . '/css/style_dynamic_responsive_ms_id_' . qode_get_multisite_blog_id() . '.css', array(), filemtime(QODE_ROOT_DIR . '/css/style_dynamic_responsive_ms_id_' . qode_get_multisite_blog_id() . '.css')); } else { wp_enqueue_style("style_dynamic_responsive", QODE_ROOT . "/css/style_dynamic_responsive.php"); } endif; $vertical_area = "no"; if (isset($qode_options_proya['vertical_area'])) { $vertical_area = $qode_options_proya['vertical_area']; } if ($vertical_area == "yes" && $responsiveness != "no") { wp_enqueue_style("vertical_responsive", QODE_ROOT . "/css/vertical_responsive.min.css"); } //include Visual Composer styles if (class_exists('WPBakeryVisualComposerAbstract')) { wp_enqueue_style('js_composer_front'); } if (is_rtl()) { wp_enqueue_style('qode-rtl', QODE_ROOT . '/rtl.css'); } if (file_exists(dirname(__FILE__) . "/css/custom_css.css") && qode_is_css_folder_writable() && !is_multisite()) { wp_enqueue_style("custom_css", QODE_ROOT . "/css/custom_css.css", array(), filemtime(dirname(__FILE__) . "/css/custom_css.css")); } else if ( file_exists( QODE_ROOT_DIR . '/css/custom_css_ms_id_' . qode_get_multisite_blog_id() . '.css' ) && qode_is_css_folder_writable() && is_multisite() ) { wp_enqueue_style( 'custom_css', QODE_ROOT . '/css/custom_css_ms_id_' . qode_get_multisite_blog_id() . '.css', array(), filemtime( QODE_ROOT_DIR . '/css/custom_css_ms_id_' . qode_get_multisite_blog_id() . '.css' ) ); } else { wp_enqueue_style("custom_css", QODE_ROOT . "/css/custom_css.php"); } } add_action('wp_enqueue_scripts', 'qode_styles'); } if(!function_exists('qode_google_fonts_styles')) { /** * Function that includes google fonts defined anywhere in the theme */ function qode_google_fonts_styles() { global $qode_options_proya, $qodeFramework; if(qode_options()->getOptionValue('disable_google_fonts') != 'yes') { $font_weight_str = '100,200,300,400,500,600,700,800,900,300italic,400italic,700italic'; $default_font_string = 'Raleway:' . $font_weight_str; $font_sipmle_field_array = array(); if (is_array($qodeFramework->qodeOptions->getOptionsByType('fontsimple')) && count($qodeFramework->qodeOptions->getOptionsByType('fontsimple'))) { $font_sipmle_field_array = $qodeFramework->qodeOptions->getOptionsByType('fontsimple'); } $font_field_array = array(); if (is_array($qodeFramework->qodeOptions->getOptionsByType('font')) && count($qodeFramework->qodeOptions->getOptionsByType('font'))) { $font_field_array = $qodeFramework->qodeOptions->getOptionsByType('font'); } $available_font_options = array_merge($font_sipmle_field_array, $font_field_array); //define available font options array $fonts_array = array(); foreach ($available_font_options as $font_option) { //is font set and not set to default and not empty? if (isset($qode_options_proya[$font_option]) && $qode_options_proya[$font_option] !== '-1' && $qode_options_proya[$font_option] !== '' && !qode_is_native_font($qode_options_proya[$font_option]) && !qode_is_custom_font($qode_options_proya[$font_option])) { $font_option_string = $qode_options_proya[$font_option] . ':' . $font_weight_str; if (!in_array($font_option_string, $fonts_array)) { $fonts_array[] = $font_option_string; } } } //add google fonts set in slider $args = array('post_type' => 'slides', 'posts_per_page' => -1); $loop = new WP_Query($args); //for each slide defined while ($loop->have_posts()) : $loop->the_post(); //is font family for title option chosen? if (get_post_meta(get_the_ID(), "qode_slide-title-font-family", true) != "") { $slide_title_font_family = get_post_meta(get_the_ID(), "qode_slide-title-font-family", true); $slide_title_font_string = $slide_title_font_family . ":" . $font_weight_str; if (!in_array($slide_title_font_string, $fonts_array) && !qode_is_native_font($slide_title_font_family) && !qode_is_custom_font($qode_options_proya[$font_option])) { //include that font array_push($fonts_array, $slide_title_font_string); } } //is font family defined for slide's text? if (get_post_meta(get_the_ID(), "qode_slide-text-font-family", true) != "") { $slide_text_font_family = get_post_meta(get_the_ID(), "qode_slide-text-font-family", true); $slide_text_font_string = $slide_text_font_family . ":" . $font_weight_str; if (!in_array($slide_text_font_string, $fonts_array) && !qode_is_native_font($slide_text_font_family) && !qode_is_custom_font($qode_options_proya[$font_option])) { //include that font array_push($fonts_array, $slide_text_font_string); } } //is font family defined for slide's subtitle? if (get_post_meta(get_the_ID(), "qode_slide-subtitle-font-family", true) != "") { $slide_subtitle_font_family = get_post_meta(get_the_ID(), "qode_slide-subtitle-font-family", true); $slide_subtitle_font_string = $slide_subtitle_font_family . ":" . $font_weight_str; if (!in_array($slide_subtitle_font_string, $fonts_array) && !qode_is_native_font($slide_subtitle_font_family) && !qode_is_custom_font($qode_options_proya[$font_option])) { //include that font array_push($fonts_array, $slide_subtitle_font_string); } } endwhile; wp_reset_postdata(); $fonts_array = array_diff($fonts_array, array("-1:" . $font_weight_str)); $google_fonts_string = implode('|', $fonts_array); //is google font option checked anywhere in theme? if (count($fonts_array) > 0) { //include all checked fonts printf("\r\n", str_replace(' ', '+', $google_fonts_string)); } else { //include default google font that theme is using printf("\r\n"); } } } add_action('wp_enqueue_scripts', 'qode_google_fonts_styles'); } $qode_ui_scripts['jquery-ui-core'] = 'JQuery UI Core'; $qode_ui_scripts['jquery-ui-widget'] = 'JQuery UI Widget'; $qode_ui_scripts['jquery-ui-accordion'] = 'JQuery UI Accordion'; $qode_ui_scripts['jquery-ui-autocomplete'] = 'JQuery UI Autocomplete'; $qode_ui_scripts['jquery-ui-button'] = 'JQuery UI Button'; $qode_ui_scripts['jquery-ui-datepicker'] = 'JQuery UI Datepicker'; $qode_ui_scripts['jquery-ui-dialog'] = 'JQuery UI Dialog'; $qode_ui_scripts['jquery-ui-draggable'] = 'JQuery UI Draggable'; $qode_ui_scripts['jquery-ui-droppable'] = 'JQuery UI Droppable'; $qode_ui_scripts['jquery-ui-menu'] = 'JQuery UI Menu'; $qode_ui_scripts['jquery-ui-mouse'] = 'JQuery UI Mouse'; $qode_ui_scripts['jquery-ui-position'] = 'JQuery UI Position'; $qode_ui_scripts['jquery-ui-progressbar'] = 'JQuery UI Progressbar'; $qode_ui_scripts['jquery-ui-selectable'] = 'JQuery UI Selectable'; $qode_ui_scripts['jquery-ui-resizable'] = 'JQuery UI Resizable'; $qode_ui_scripts['jquery-ui-sortable'] = 'JQuery UI Sortable'; $qode_ui_scripts['jquery-ui-sortable'] = 'JQuery UI Sortable'; $qode_ui_scripts['jquery-ui-slider'] = 'JQuery UI Slider'; $qode_ui_scripts['jquery-ui-spinner'] = 'JQuery UI Spinner'; $qode_ui_scripts['jquery-ui-tooltip'] = 'JQuery UI Tooltip'; $qode_ui_scripts['jquery-ui-tabs'] = 'JQuery UI Tabs'; $qode_ui_scripts['jquery-effects-core'] = 'JQuery Effects Core'; $qode_ui_scripts['jquery-effects-blind'] = 'JQuery Effects Blind'; $qode_ui_scripts['jquery-effects-bounce'] = 'JQuery Effects Bounce'; $qode_ui_scripts['jquery-effects-clip'] = 'JQuery Effects Clip'; $qode_ui_scripts['jquery-effects-drop'] = 'JQuery Effects Drop'; $qode_ui_scripts['jquery-effects-explode'] = 'JQuery Effects Explode'; $qode_ui_scripts['jquery-effects-fade'] = 'JQuery Effects Fade'; $qode_ui_scripts['jquery-effects-fold'] = 'JQuery Effects Fold'; $qode_ui_scripts['jquery-effects-highlight'] = 'JQuery Effects Highlight'; $qode_ui_scripts['jquery-effects-pulsate'] = 'JQuery Effects Pulsate'; $qode_ui_scripts['jquery-effects-scale'] = 'JQuery Effects Scale'; $qode_ui_scripts['jquery-effects-shake'] = 'JQuery Effects Shake'; $qode_ui_scripts['jquery-effects-slide'] = 'JQuery Effects Slide'; $qode_ui_scripts['jquery-effects-transfer'] = 'JQuery Effects Transfer'; $qode_options_proya['qode_ui_scripts'] = $qode_ui_scripts; foreach ($qode_ui_scripts as $script => $name){ $qode_options_proya['qode_ui_scripts_default_value'][] = $script; } /* Add js */ if (!function_exists('qode_scripts')) { function qode_scripts() { global $qode_options_proya; global $is_chrome; global $is_opera; global $is_IE; global $woocommerce; $smooth_scroll = true; if(isset($qode_options_proya['smooth_scroll']) && $qode_options_proya['smooth_scroll'] == "no"){ $smooth_scroll = false; } wp_enqueue_script('jquery'); $qode_ui_enabled_scripts = qode_options()->getOptionValue('qode_ui_scripts_option'); if( is_array($qode_ui_enabled_scripts) && count($qode_ui_enabled_scripts) > 0){ foreach ($qode_ui_enabled_scripts as $qode_ui_enabled_script){ wp_enqueue_script($qode_ui_enabled_script); } } wp_enqueue_script("plugins", QODE_ROOT."/js/plugins.js",array(),false,true); wp_enqueue_script("carouFredSel", QODE_ROOT."/js/plugins/jquery.carouFredSel-6.2.1.min.js",array(),false,true); wp_enqueue_script("lemmonSlider", QODE_ROOT."/js/plugins/lemmon-slider.min.js",array(),false,true); wp_enqueue_script("one_page_scroll", QODE_ROOT."/js/plugins/jquery.fullPage.min.js",array(),false,true); wp_enqueue_script("mousewheel", QODE_ROOT."/js/plugins/jquery.mousewheel.min.js",array(),false,true); wp_enqueue_script("touchSwipe", QODE_ROOT."/js/plugins/jquery.touchSwipe.min.js",array(),false,true); wp_enqueue_script("isotope", QODE_ROOT."/js/plugins/jquery.isotope.min.js",array(),false,true); wp_enqueue_script("packery", QODE_ROOT."/js/plugins/packery-mode.pkgd.min.js",array(),false,true); wp_enqueue_script("stretch", QODE_ROOT."/js/plugins/jquery.stretch.js",array(),false,true); wp_enqueue_script("imagesLoaded", QODE_ROOT."/js/plugins/imagesloaded.js",array(),false,true); wp_enqueue_script("rangeSlider", QODE_ROOT."/js/plugins/rangeslider.min.js",array(),false,true); wp_enqueue_script("eventMove", QODE_ROOT."/js/plugins/jquery.event.move.js",array(),false,true); wp_enqueue_script("twentytwenty", QODE_ROOT."/js/plugins/jquery.twentytwenty.js",array(),false,true); $mac_os = strpos($_SERVER['HTTP_USER_AGENT'], "Macintosh; Intel Mac OS X"); if($smooth_scroll && $mac_os == false){ wp_enqueue_script("TweenLite", QODE_ROOT."/js/plugins/TweenLite.min.js",array(),false,true); if(!qode_layer_slider_installed() || !qode_revolution_slider_installed()){ wp_enqueue_script("ScrollToPlugin", QODE_ROOT."/js/plugins/ScrollToPlugin.min.js",array(),false,true); } wp_enqueue_script("smoothPageScroll", QODE_ROOT."/js/plugins/smoothPageScroll.min.js",array(),false,true); } if ( $is_IE ) { wp_enqueue_script("html5", QODE_ROOT."/js/plugins/html5.js",array(),false,false); } if( (isset($qode_options_proya['google_maps_api_key']) && $qode_options_proya['google_maps_api_key'] != "")) { $google_maps_get_params = array(); $google_maps_url = 'https://maps.googleapis.com/maps/api/js'; $google_maps_api_key = $qode_options_proya['google_maps_api_key']; $google_maps_url = add_query_arg( array( 'key' => $google_maps_api_key ), $google_maps_url ); $google_maps_get_params = apply_filters('qode_google_maps_get_params', $google_maps_get_params); if(is_array($google_maps_get_params) && count($google_maps_get_params) > 0){ foreach ($google_maps_get_params as $google_maps_get_param => $value) { $google_maps_url = add_query_arg( array( $google_maps_get_param => $value ), $google_maps_url ); } } wp_enqueue_script("google_map_api", $google_maps_url, array(),false,true); } if (file_exists(dirname(__FILE__) ."/js/default_dynamic.js") && qode_is_js_folder_writable() && !is_multisite()) { wp_enqueue_script("default_dynamic", QODE_ROOT."/js/default_dynamic.js",array(), filemtime(dirname(__FILE__) ."/js/default_dynamic.js"),true); } else if (file_exists(QODE_ROOT_DIR . '/js/default_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.js') && qode_is_css_folder_writable() && is_multisite()) { wp_enqueue_script('default_dynamic', QODE_ROOT . '/js/default_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.js', array(), filemtime(QODE_ROOT_DIR . '/js/default_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.js'), true); } else { wp_enqueue_script("default_dynamic", QODE_ROOT."/js/default_dynamic.php",array(),false,true); } wp_enqueue_script("default", QODE_ROOT."/js/default.min.js",array(),false,true); if (file_exists(dirname(__FILE__) ."/js/custom_js.js") && qode_is_js_folder_writable() && !is_multisite()) { wp_enqueue_script("custom_js", QODE_ROOT."/js/custom_js.js",array(), filemtime(dirname(__FILE__) ."/js/custom_js.js"),true); } else if (file_exists(QODE_ROOT_DIR . '/js/custom_js_ms_id_' . qode_get_multisite_blog_id() . '.js') && qode_is_css_folder_writable() && is_multisite()) { wp_enqueue_script('custom_js', QODE_ROOT . '/js/custom_js_ms_id_' . qode_get_multisite_blog_id() . '.js', array(), filemtime(QODE_ROOT_DIR . '/js/custom_js_ms_id_' . qode_get_multisite_blog_id() . '.js'), true); } else { wp_enqueue_script("custom_js", QODE_ROOT."/js/custom_js.php",array(),false,true); } global $wp_scripts; $wp_scripts->add_data('comment-reply', 'group', 1 ); if ( is_singular() ) wp_enqueue_script( "comment-reply"); $has_ajax = false; $qode_animation = ""; if (isset($_SESSION['qode_proya_page_transitions'])) $qode_animation = $_SESSION['qode_proya_page_transitions']; if (($qode_options_proya['page_transitions'] != "0") && (empty($qode_animation) || ($qode_animation != "no"))) $has_ajax = true; elseif (!empty($qode_animation) && ($qode_animation != "no")) $has_ajax = true; if ($has_ajax) : wp_enqueue_script("ajax", QODE_ROOT."/js/ajax.min.js",array(),false,true); endif; wp_enqueue_script( 'wpb_composer_front_js' ); if(isset($qode_options_proya['use_recaptcha']) && $qode_options_proya['use_recaptcha'] == "yes") : $url = 'https://www.google.com/recaptcha/api.js'; $url = add_query_arg( array( 'onload' => 'qodeRecaptchaCallback', 'render' => 'explicit' ), $url ); wp_enqueue_script("qode-recaptcha", $url,array(),false,true); endif; if($woocommerce) { wp_enqueue_script("woocommerce-qode", QODE_ROOT."/js/woocommerce.min.js",array(),false,true); wp_enqueue_script('select2'); } do_action( 'qode_enqueue_third_party_scripts' ); wp_localize_script( 'default', 'QodeAdminAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) ); echo ''; } add_action('wp_enqueue_scripts', 'qode_scripts'); } if (!function_exists('qode_get_global_variables')) { /** * Function that generates global variables and put them in array so they could be used in the theme */ function qode_get_global_variables() { $global_variables = array(); $global_variables['qodeAddingToCartLabel'] = esc_html__('Adding to Cart...', 'qode'); $global_variables = apply_filters('qode_js_global_variables', $global_variables); wp_localize_script('default', 'qodeGlobalVars', array( 'vars' => $global_variables )); } add_action('wp_enqueue_scripts', 'qode_get_global_variables'); } /*Because of the bug when Revolution slider, Layer Slider and Smooth Scroll are enabled together (greensock.js doesn't have included ScrollTo so it need to be included before)*/ if(!function_exists('qode_scrollto_script')) { function qode_scrollto_script(){ global $qode_options_proya; $smooth_scroll = true; if(isset($qode_options_proya['smooth_scroll']) && $qode_options_proya['smooth_scroll'] == "no"){ $smooth_scroll = false; } $mac_os = strpos($_SERVER['HTTP_USER_AGENT'], "Macintosh; Intel Mac OS X"); if($smooth_scroll && $mac_os == false && qode_layer_slider_installed() && qode_revolution_slider_installed()) { wp_enqueue_script("ScrollToPlugin", QODE_ROOT . "/js/plugins/ScrollToPlugin.min.js", array(), false, false); } } add_action('wp_enqueue_scripts', 'qode_scrollto_script', 1); } if(!function_exists('qode_init_page_id')) { /** * Function that sets global $qode_page_id variable */ function qode_init_page_id() { global $wp_query; global $qode_page_id; $qode_page_id = $wp_query->get_queried_object_id(); } add_action('get_header', 'qode_init_page_id'); } /* Add admin js and css */ if (!function_exists('qode_admin_jquery')) { function qode_admin_jquery() { wp_enqueue_script('jquery'); wp_enqueue_style('style', QODE_ROOT.'/css/admin/admin-style.css', false, '1.0', 'screen'); wp_enqueue_style('colorstyle', QODE_ROOT.'/css/admin/colorpicker.css', false, '1.0', 'screen'); wp_register_script('colorpickerss', QODE_ROOT.'/js/admin/colorpicker.js', array('jquery'), '1.0.0', false ); wp_enqueue_script('colorpickerss'); wp_enqueue_style('thickbox'); wp_enqueue_script('media-upload'); wp_enqueue_media(); wp_enqueue_script('thickbox'); wp_enqueue_script('jquery-ui-datepicker'); wp_enqueue_script('jquery-ui-accordion'); wp_register_script('default', QODE_ROOT.'/js/admin/default.js', array('jquery'), '1.0.0', false ); wp_enqueue_script('default'); wp_enqueue_script('common'); wp_enqueue_script('wp-lists'); wp_enqueue_script('postbox'); } } add_action('admin_enqueue_scripts', 'qode_admin_jquery'); if (!isset( $content_width )) $content_width = 1060; /* Register Menus */ if (!function_exists('qode_register_menus')) { /** * Function that registers menu positions */ function qode_register_menus() { global $qode_options_proya; if((isset($qode_options_proya['header_bottom_appearance']) && $qode_options_proya['header_bottom_appearance'] != "stick_with_left_right_menu") || (isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "yes")){ //header and left menu location register_nav_menus( array('top-navigation' => __( 'Top Navigation', 'qode') ) ); } //mobile menu register_nav_menus( array('mobile-navigation' => __( 'Mobile Navigation', 'qode') ) ); //popup menu location register_nav_menus( array('popup-navigation' => __( 'Fullscreen Navigation', 'qode') ) ); if((isset($qode_options_proya['header_bottom_appearance']) && $qode_options_proya['header_bottom_appearance'] == "stick_with_left_right_menu") && (isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "no")){ //header left menu location register_nav_menus( array('left-top-navigation' => __( 'Left Top Navigation', 'qode') ) ); //header right menu location register_nav_menus( array('right-top-navigation' => __( 'Right Top Navigation', 'qode') ) ); } } add_action( 'after_setup_theme', 'qode_register_menus' ); } if(!function_exists('qode_theme_setup')) { /** * Function that adds various features to theme. Also defines image sizes that are used in a theme */ function qode_theme_setup() { //add post formats support add_theme_support('post-formats', array('gallery', 'link', 'quote', 'video', 'audio')); //add feedlinks support add_theme_support( 'automatic-feed-links' ); //add theme support for post thumbnails add_theme_support( 'post-thumbnails' ); add_image_size( 'portfolio-square', 570, 570, true ); add_image_size( 'portfolio-portrait', 600, 800, true ); add_image_size( 'portfolio-landscape', 800, 600, true ); add_image_size( 'menu-featured-post', 345, 198, true ); add_image_size( 'qode-carousel_slider', 400, 260, true ); add_image_size( 'portfolio_slider', 500, 380, true ); add_image_size( 'portfolio_masonry_regular', 500, 500, true ); add_image_size( 'portfolio_masonry_wide', 1000, 500, true ); add_image_size( 'portfolio_masonry_tall', 500, 1000, true ); add_image_size( 'portfolio_masonry_large', 1000, 1000, true ); add_image_size( 'portfolio_masonry_with_space', 700); add_image_size( 'latest_post_boxes', 539, 303, true ); //enable rendering shortcodes in widgets add_filter('widget_text', 'do_shortcode'); //enable rendering shortcodes in post excerpt //add_filter( 'the_excerpt', 'do_shortcode'); //enable rendering shortcodes in call to action add_filter( 'call_to_action_widget', 'do_shortcode'); load_theme_textdomain( 'qode', get_template_directory().'/languages' ); } add_action('after_setup_theme', 'qode_theme_setup'); } if (!function_exists('ajax_classes')) { /** * Function that adds classes for ajax animation on body element * @param $classes array of current body classes * @return array array of changed body classes */ function ajax_classes($classes) { global $qode_options_proya; $qode_animation=""; if (isset($_SESSION['qode_animation'])) $qode_animation = $_SESSION['qode_animation']; if(($qode_options_proya['page_transitions'] === "0") && ($qode_animation == "no")) : $classes[] = ''; elseif($qode_options_proya['page_transitions'] === "1" && (empty($qode_animation) || ($qode_animation != "no"))) : $classes[] = 'ajax_updown'; $classes[] = 'page_not_loaded'; elseif($qode_options_proya['page_transitions'] === "2" && (empty($qode_animation) || ($qode_animation != "no"))) : $classes[] = 'ajax_fade'; $classes[] = 'page_not_loaded'; elseif($qode_options_proya['page_transitions'] === "3" && (empty($qode_animation) || ($qode_animation != "no"))) : $classes[] = 'ajax_updown_fade'; $classes[] = 'page_not_loaded'; elseif($qode_options_proya['page_transitions'] === "4" && (empty($qode_animation) || ($qode_animation != "no"))) : $classes[] = 'ajax_leftright'; $classes[] = 'page_not_loaded'; elseif(!empty($qode_animation) && $qode_animation != "no") : $classes[] = 'page_not_loaded'; else: $classes[] =""; endif; return $classes; } add_filter('body_class','ajax_classes'); } /* Add class on body boxed layout */ if (!function_exists('qode_page_loading_effect_classes')) { /** * Function that adds class on body for page loading effect * @param $classes array of current body classes * @return array array of changed body classes */ function qode_page_loading_effect_classes($classes) { if(qode_options()->getOptionValue('page_loading_effect') == 'yes') : $classes[] = 'qode-page-loading-effect-enabled'; endif; return $classes; } add_filter('body_class','qode_page_loading_effect_classes'); } /* Add class on body boxed layout */ if (!function_exists('boxed_class')) { /** * Function that adds class on body for boxed layout * @param $classes array of current body classes * @return array array of changed body classes */ function boxed_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['boxed']) && $qode_options_proya['boxed'] == "yes" && isset($qode_options_proya['transparent_content']) && $qode_options_proya['transparent_content'] == 'no') : $classes[] = 'boxed'; else: $classes[] =""; endif; return $classes; } add_filter('body_class','boxed_class'); } /* Add class on body for vertical menu */ if (!function_exists('vertical_menu_class')) { /** * Function that adds classes on body element for vertical menu * @param $classes array of current body classes * @return array array of changed body classes */ function vertical_menu_class($classes) { global $qode_options_proya; global $wp_query; if(isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] =='yes') { $classes[] = 'vertical_menu_enabled'; //left menu type class? if(isset($qode_options_proya['vertical_area_type']) && $qode_options_proya['vertical_area_type'] != '') { switch ($qode_options_proya['vertical_area_type']) { case 'hidden': $classes[] = ' vertical_menu_hidden'; if(isset($qode_options_proya['vertical_logo_bottom']) && $qode_options_proya['vertical_logo_bottom'] !== '') { $classes[] = 'vertical_menu_hidden_with_logo'; } break; } } if(isset($qode_options_proya['vertical_area_type']) && $qode_options_proya['vertical_area_type'] =='hidden') { if(isset($qode_options_proya['vertical_area_width']) && $qode_options_proya['vertical_area_width']=='width_290'){ $classes[] = ' vertical_menu_width_290'; } elseif(isset($qode_options_proya['vertical_area_width']) && $qode_options_proya['vertical_area_width']=='width_350'){ $classes[] = ' vertical_menu_width_350'; } elseif(isset($qode_options_proya['vertical_area_width']) && $qode_options_proya['vertical_area_width']=='width_400'){ $classes[] = ' vertical_menu_width_400'; } else{ $classes[] = ' vertical_menu_width_260'; } } } $id = $wp_query->get_queried_object_id(); if(qode_is_woocommerce_page()) { $id = get_option('woocommerce_shop_page_id'); } if(isset($qode_options_proya['vertical_area_transparency']) && $qode_options_proya['vertical_area_transparency'] =='yes' && get_post_meta($id, "qode_page_vertical_area_transparency", true) != "no"){ $classes[] = ' vertical_menu_transparency vertical_menu_transparency_on'; }else if(get_post_meta($id, "qode_page_vertical_area_transparency", true) == "yes"){ $classes[] = ' vertical_menu_transparency vertical_menu_transparency_on'; } return $classes; } add_filter('body_class','vertical_menu_class'); } if (!function_exists('elements_animation_on_touch_class')) { /** * Function that adds classes on body element for disabled animations on touch devices * @param $classes array of current body classes * @return array array of changed body classes */ function elements_animation_on_touch_class($classes) { global $qode_options_proya; $isMobile = (bool)preg_match('#\b(ip(hone|od|ad)|android|opera m(ob|in)i|windows (phone|ce)|blackberry|tablet'. '|s(ymbian|eries60|amsung)|p(laybook|alm|rofile/midp|laystation portable)|nokia|fennec|htc[\-_]'. '|mobile|up\.browser|[1-4][0-9]{2}x[1-4][0-9]{2})\b#i', $_SERVER['HTTP_USER_AGENT'] ); if(isset($qode_options_proya['elements_animation_on_touch']) && $qode_options_proya['elements_animation_on_touch'] == "no" && $isMobile == true) : $classes[] = 'no_animation_on_touch'; else: $classes[] =""; endif; return $classes; } add_filter('body_class','elements_animation_on_touch_class'); } /* Add class on body for content negative margin */ if (!function_exists('content_negative_margin')) { /** * Function that adds classes on body element for negative margin for content * @param $classes array of current body classes * @return array array of changed body classes */ function content_negative_margin($classes) { global $qode_options_proya; if(isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] =='no' && isset($qode_options_proya['move_content_up']) && $qode_options_proya['move_content_up'] == 'yes'){ $classes[] = 'content_top_margin'; } return $classes; } add_filter('body_class','content_negative_margin'); } if(!function_exists('qode_hidden_title_body_class')) { /** * Function that adds class to body element if title is hidden for current page * @param $classes array of currently added classes for body element * @return array array of modified classes */ function qode_hidden_title_body_class($classes) { $page_id = qode_get_page_id(); if($page_id) { if(qode_is_title_hidden()) { $classes[] = 'qode-title-hidden'; } } return $classes; } add_filter('body_class', 'qode_hidden_title_body_class'); } if(!function_exists('qode_paspartu_body_class')) { /** * Function that adds paspartu class to body. * @param $classes array of body classes * @return array with paspartu body class added */ function qode_paspartu_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['paspartu']) && $qode_options_proya['paspartu'] == 'yes') { $classes[] = 'paspartu_enabled'; if((isset($qode_options_proya['paspartu_on_top']) && $qode_options_proya['paspartu_on_top'] == 'yes' && isset($qode_options_proya['paspartu_on_top_fixed']) && $qode_options_proya['paspartu_on_top_fixed'] == 'yes') || (isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "yes" && isset($qode_options_proya['vertical_menu_inside_paspartu']) && $qode_options_proya['vertical_menu_inside_paspartu'] == 'yes')) { $classes[] = 'paspartu_on_top_fixed'; } if((isset($qode_options_proya['paspartu_on_bottom']) && $qode_options_proya['paspartu_on_bottom'] == 'yes' && isset($qode_options_proya['paspartu_on_bottom_fixed']) && $qode_options_proya['paspartu_on_bottom_fixed'] == 'yes') || (isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "yes" && isset($qode_options_proya['vertical_menu_inside_paspartu']) && $qode_options_proya['vertical_menu_inside_paspartu'] == 'yes')) { $classes[] = 'paspartu_on_bottom_fixed'; } if(isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "yes" && isset($qode_options_proya['vertical_menu_inside_paspartu']) && $qode_options_proya['vertical_menu_inside_paspartu'] == 'no') { $classes[] = 'vertical_menu_outside_paspartu'; } if(isset($qode_options_proya['vertical_area']) && $qode_options_proya['vertical_area'] == "yes" && isset($qode_options_proya['vertical_menu_inside_paspartu']) && $qode_options_proya['vertical_menu_inside_paspartu'] == 'yes') { $classes[] = 'vertical_menu_inside_paspartu'; } } return $classes; } add_filter('body_class', 'qode_paspartu_body_class'); } /* Add class on body depending on content width */ if (!function_exists('qode_content_width_class')) { /** * Function that adds class on body depending on content width * @param $classes array of current body classes * @return array array of changed body classes */ function qode_content_width_class($classes){ global $qode_options_proya; $classes[] = ""; if (isset($qode_options_proya['initial_content_width']) && $qode_options_proya['initial_content_width'] !== "grid_1100") { $classes[] = 'qode_' . $qode_options_proya['initial_content_width']; } return $classes; } add_filter('body_class','qode_content_width_class'); } if(!function_exists('qode_side_menu_body_class')) { /** * Function that adds body classes for different side menu styles * @param $classes array original array of body classes * @return array modified array of classes */ function qode_side_menu_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['enable_side_area']) && $qode_options_proya['enable_side_area'] == 'yes') { if(isset($qode_options_proya['side_area_type']) && $qode_options_proya['side_area_type'] == 'side_menu_slide_from_right') { $classes[] = 'side_menu_slide_from_right'; } else if(isset($qode_options_proya['side_area_type']) && $qode_options_proya['side_area_type'] == 'side_menu_slide_with_content') { $classes[] = 'side_menu_slide_with_content'; $classes[] = $qode_options_proya['side_area_slide_with_content_width']; } else { $classes[] = 'side_area_uncovered_from_content'; } } return $classes; } add_filter('body_class', 'qode_side_menu_body_class'); } if(!function_exists('qode_full_screen_menu_body_class')) { /** * Function that adds body classes for different full screen menu types * @param $classes array original array of body classes * @return array modified array of classes */ function qode_full_screen_menu_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['enable_popup_menu']) && $qode_options_proya['enable_popup_menu'] == 'yes') { if(isset($qode_options_proya['popup_menu_animation_style']) && !empty($qode_options_proya['popup_menu_animation_style'])) { $classes[] = 'qode_' . $qode_options_proya['popup_menu_animation_style']; } } return $classes; } add_filter('body_class', 'qode_full_screen_menu_body_class'); } if(!function_exists('qode_overlapping_content_body_class')) { /** * Function that adds transparent content class to body. * @param $classes array of body classes * @return array with transparent content body class added */ function qode_overlapping_content_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['overlapping_content']) && $qode_options_proya['overlapping_content'] == 'yes') { $classes[] = 'overlapping_content'; } return $classes; } add_filter('body_class', 'qode_overlapping_content_body_class'); } if(!function_exists('qode_vss_responsive_body_class')) { /** * Function that adds vertical split slider responsive class to body. * @param $classes array of body classes * @return array with vertical split slider responsive body class added */ function qode_vss_responsive_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['vss_responsive_advanced']) && $qode_options_proya['vss_responsive_advanced'] == 'yes') { $classes[] = 'vss_responsive_adv'; $advanced_width = qode_options()->getOptionValue('vss_responsive_advanced_width'); if( !empty($advanced_width)) { $classes[] = "vss_width_" . $advanced_width; } } return $classes; } add_filter('body_class', 'qode_vss_responsive_body_class'); } if(!function_exists('qode_footer_responsive_body_class')) { /** * Function that adds footer responsive class to body. * @param $classes array of body classes */ function qode_footer_responsive_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['footer_top_responsive']) && $qode_options_proya['footer_top_responsive'] === 'yes') { $classes[] = 'footer_responsive_adv'; } return $classes; } add_filter('body_class', 'qode_footer_responsive_body_class'); } if(!function_exists('qode_top_header_responsive_body_class')) { function qode_top_header_responsive_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['hide_top_bar_on_mobile']) && $qode_options_proya['hide_top_bar_on_mobile'] === 'yes') { $classes[] = 'hide_top_bar_on_mobile_header'; } return $classes; } add_filter('body_class', 'qode_top_header_responsive_body_class'); } if(!function_exists('qode_content_sidebar_responsive_body_class')) { function qode_content_sidebar_responsive_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['content_sidebar_responsiveness']) && $qode_options_proya['content_sidebar_responsiveness'] === 'yes') { $classes[] = 'qode-content-sidebar-responsive'; } return $classes; } add_filter('body_class', 'qode_content_sidebar_responsive_body_class'); } if(!function_exists('qode_transparent_content_body_class')) { /** * Function that adds transparent content class to body. * @param $classes array of body classes * @return array with transparent content body class added */ function qode_transparent_content_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['transparent_content']) && $qode_options_proya['transparent_content'] == 'yes') { $classes[] = 'transparent_content'; } return $classes; } add_filter('body_class', 'qode_transparent_content_body_class'); } if(!function_exists('qode_is_title_hidden')) { /** * Function that check is title hidden on current page * @param none * @return true/false */ function qode_is_title_hidden() { global $qode_options_proya; $page_id = qode_get_page_id(); $hide_page_title_area = false; if(get_post_meta($page_id, "qode_show-page-title", true) === 'yes'){ $hide_page_title_area = true; }elseif(get_post_meta($page_id, "qode_show-page-title", true) === 'no'){ $hide_page_title_area = false; }else{ if(isset($qode_options_proya['dont_show_page_title']) && ($qode_options_proya['dont_show_page_title'] === 'yes')){ $hide_page_title_area = true; }elseif(isset($qode_options_proya['dont_show_page_title']) && ($qode_options_proya['dont_show_page_title'] === 'no')){ $hide_page_title_area = false; } } return $hide_page_title_area; } } if(!function_exists('qode_is_title_text_hidden')) { /** * Function that check is title text hidden on current page * @param none * @return true/false */ function qode_is_title_text_hidden() { global $qode_options_proya; $page_id = qode_get_page_id(); $hide_page_title_text = false; if(get_post_meta($page_id, "qode_show-page-title-text", true) === 'yes'){ $hide_page_title_text = true; }elseif(get_post_meta($page_id, "qode_show-page-title-text", true) === 'no'){ $hide_page_title_text = false; }else{ if(isset($qode_options_proya['dont_show_page_title_text']) && ($qode_options_proya['dont_show_page_title_text'] === 'yes')){ $hide_page_title_text = true; }elseif(isset($qode_options_proya['dont_show_page_title_text']) && ($qode_options_proya['dont_show_page_title_text'] === 'no')){ $hide_page_title_text = false; } } return $hide_page_title_text; } } if(!function_exists('qode_is_content_below_header')) { /** * Function that check is content below header on page * @param none * @return true/false */ function qode_is_content_below_header() { global $qode_options_proya; $page_id = qode_get_page_id(); $content_below_header = false; if(get_post_meta($page_id, "qode_enable_content_top_margin", true) === 'yes'){ $content_below_header = true; }elseif(get_post_meta($page_id, "qode_enable_content_top_margin", true) === 'no'){ $content_below_header = false; }else{ if(isset($qode_options_proya['enable_content_top_margin']) && ($qode_options_proya['enable_content_top_margin'] === 'yes')){ $content_below_header = true; }elseif(isset($qode_options_proya['enable_content_top_margin']) && ($qode_options_proya['enable_content_top_margin'] === 'no')){ $content_below_header = false; } } return $content_below_header; } } /* Excerpt more */ if (!function_exists('qode_excerpt_more')) { /** * Function that adds three dots on excerpt * @param $more string current more string * @return string changed more string */ function qode_excerpt_more( $more ) { return '...'; } add_filter('excerpt_more', 'qode_excerpt_more'); } if (!function_exists('qode_excerpt_length')) { /** * Function that changes excerpt length based on theme options * @param $length int original value * @return int changed value */ function qode_excerpt_length( $length ) { global $qode_options_proya; if($qode_options_proya['number_of_chars']){ return $qode_options_proya['number_of_chars']; } else { return 45; } } add_filter( 'excerpt_length', 'qode_excerpt_length', 999 ); } if (!function_exists('the_excerpt_max_charlength')) { /** * Function that sets character length for social share shortcode * @param $charlength string original text * @return string shortened text */ function the_excerpt_max_charlength($charlength) { global $qode_options_proya; if(isset($qode_options_proya['twitter_via']) && !empty($qode_options_proya['twitter_via'])) { $via = " via " . $qode_options_proya['twitter_via'] . " "; } else { $via = ""; } $excerpt = get_the_excerpt(); $charlength = 140 - (mb_strlen($via) + $charlength); if ( mb_strlen( $excerpt ) > $charlength ) { $subex = mb_substr( $excerpt, 0, $charlength); $exwords = explode( ' ', $subex ); $excut = - ( mb_strlen( $exwords[ count( $exwords ) - 1 ] ) ); if ( $excut < 0 ) { return mb_substr( $subex, 0, $excut ); } else { return $subex; } } else { return $excerpt; } } } if(!function_exists('qode_excerpt')) { /** * Function that cuts post excerpt to the number of word based on previosly set global * variable $word_count, which is defined in qode_set_blog_word_count function. * * It current post has read more tag set it will return content of the post, else it will return post excerpt * * @changed in 4.3 version */ function qode_excerpt() { global $qode_options_proya, $word_count, $post; //does current post has read more tag set? if(qode_post_has_read_more()) { global $more; //override global $more variable so this can be used in blog templates $more = 0; echo get_the_content(''); } //is word count set to something different that 0? elseif($word_count != '0') { //if word count is set and different than empty take that value, else that general option from theme options $word_count = isset($word_count) && $word_count !== "" ? $word_count : $qode_options_proya['number_of_chars']; //if post excerpt field is filled take that as post excerpt, else that content of the post $post_excerpt = $post->post_excerpt != "" ? $post->post_excerpt : strip_tags($post->post_content); //remove leading dots if those exists $clean_excerpt = strlen($post_excerpt) && strpos($post_excerpt, '...') ? strstr($post_excerpt, '...', true) : $post_excerpt; //if clean excerpt has text left if($clean_excerpt !== '') { //explode current excerpt to words $excerpt_word_array = explode (' ', $clean_excerpt); //cut down that array based on the number of the words option $excerpt_word_array = array_slice ($excerpt_word_array, 0, $word_count); //add exerpt postfix $excert_postfix = apply_filters('qode_excerpt_postfix', '...'); //and finally implode words together $excerpt = implode (' ', $excerpt_word_array).$excert_postfix; //is excerpt different than empty string? if($excerpt !== '') { echo '

'.$excerpt.'

'; } } } } } if(!function_exists('qode_set_blog_word_count')) { /** * Function that sets global blog word count variable used by qode_excerpt function */ function qode_set_blog_word_count($word_count_param) { global $word_count; $word_count = $word_count_param; } } /* Use slider instead of image for post */ if (!function_exists('slider_blog')) { function slider_blog($post_id) { $sliders = get_post_meta($post_id, "qode_sliders", true); $slider = $sliders[1]; if($slider) { $html = ""; $html .= '
'; } return $html; } } if (!function_exists('compareSlides')) { function compareSlides($a, $b){ if (isset($a['ordernumber']) && isset($b['ordernumber'])) { if ($a['ordernumber'] == $b['ordernumber']) { return 0; } return ($a['ordernumber'] < $b['ordernumber']) ? -1 : 1; } return 0; } } if (!function_exists('comparePortfolioImages')) { /** * Function that compares two portfolio image for sorting * @param $a int first image * @param $b int second image * @return int result of comparison */ function comparePortfolioImages($a, $b) { if (isset($a['portfolioimgordernumber']) && isset($b['portfolioimgordernumber'])) { if ($a['portfolioimgordernumber'] == $b['portfolioimgordernumber']) { return 0; } return ($a['portfolioimgordernumber'] < $b['portfolioimgordernumber']) ? -1 : 1; } return 0; } } if (!function_exists('comparePortfolioOptions')) { /** * Function that compares two portfolio options for sorting * @param $a int first option * @param $b int second option * @return int result of comparison */ function comparePortfolioOptions($a, $b){ if (isset($a['optionlabelordernumber']) && isset($b['optionlabelordernumber'])) { if ($a['optionlabelordernumber'] == $b['optionlabelordernumber']) { return 0; } return ($a['optionlabelordernumber'] < $b['optionlabelordernumber']) ? -1 : 1; } return 0; } } if (!function_exists('getPortfolionavigationPostCategoryAndTitle')) { /** * Function that compares two portfolio options for sorting * @param $post * @return html of navigation */ function getPortfolionavigationPostCategoryAndTitle($post){ $html_info = ''; $categories = wp_get_post_terms($post->ID, 'portfolio_category'); $html_info .= ''; $k = 1; foreach ($categories as $cat) { $html_info .= $cat->name; if (count($categories) != $k) { $html_info .= ', '; } $k++; } $html_info .= ''; if($post->post_title != '') { $html_info .= ''.$post->post_title.''; } $html_info .= ''; return $html_info; } } if (!function_exists('qode_gallery_upload_get_images')) { /** * Function that outputs gallery list item for portfolio in portfolio admin page * */ function qode_gallery_upload_get_images() { $ids=$_POST['ids']; $ids=explode(",",$ids); foreach($ids as $id): $image = wp_get_attachment_image_src($id,'thumbnail', true); echo ''; endforeach; exit; } add_action( 'wp_ajax_qode_gallery_upload_get_images', 'qode_gallery_upload_get_images'); } if (!function_exists('qode_generate_dynamic_css_and_js')){ /** * Function that gets content of dynamic assets files and puts that in static ones */ function qode_generate_dynamic_css_and_js() { $qode_options_proya = get_option('qode_options_proya'); if(qode_is_css_folder_writable()) { $css_dir = get_template_directory().'/css/'; ob_start(); include_once('css/style_dynamic.php'); $css = ob_get_clean(); if ( is_multisite() ) { file_put_contents( $css_dir . 'style_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.css', $css ); } else { file_put_contents($css_dir . 'style_dynamic.css', $css, LOCK_EX); } ob_start(); include_once('css/style_dynamic_responsive.php'); $css = ob_get_clean(); if ( is_multisite() ) { file_put_contents( $css_dir . 'style_dynamic_responsive_ms_id_' . qode_get_multisite_blog_id() . '.css', $css ); } else { file_put_contents($css_dir . 'style_dynamic_responsive.css', $css, LOCK_EX); } ob_start(); include_once('css/custom_css.php'); $css = ob_get_clean(); if ( is_multisite() ) { file_put_contents( $css_dir . 'custom_css_ms_id_' . qode_get_multisite_blog_id() . '.css', $css ); } else { file_put_contents($css_dir . 'custom_css.css', $css, LOCK_EX); } } if(qode_is_js_folder_writable()) { $js_dir = get_template_directory().'/js/'; ob_start(); include_once('js/default_dynamic.php'); $js = ob_get_clean(); if ( is_multisite() ) { file_put_contents( $js_dir . 'default_dynamic_ms_id_' . qode_get_multisite_blog_id() . '.js', $js ); } else { file_put_contents($js_dir . 'default_dynamic.js', $js, LOCK_EX); } ob_start(); include_once('js/custom_js.php'); $js = ob_get_clean(); if ( is_multisite() ) { file_put_contents( $js_dir . 'custom_js_ms_id_' . qode_get_multisite_blog_id() . '.js', $js ); } else { file_put_contents($js_dir . 'custom_js.js', $js, LOCK_EX); } } } add_action('qode_after_theme_option_save', 'qode_generate_dynamic_css_and_js'); } if (!function_exists('qode_hex2rgb')) { /** * Function that transforms hex color to rgb color * @param $hex string original hex string * @return array array containing three elements (r, g, b) */ function qode_hex2rgb($hex) { $hex = str_replace("#", "", $hex); if(strlen($hex) == 3) { $r = hexdec(substr($hex,0,1).substr($hex,0,1)); $g = hexdec(substr($hex,1,1).substr($hex,1,1)); $b = hexdec(substr($hex,2,1).substr($hex,2,1)); } else { $r = hexdec(substr($hex,0,2)); $g = hexdec(substr($hex,2,2)); $b = hexdec(substr($hex,4,2)); } $rgb = array($r, $g, $b); //return implode(",", $rgb); // returns the rgb values separated by commas return $rgb; // returns an array with the rgb values } } if(!function_exists('qode_addslashes')) { /** * Function that checks if magic quotes are turned on (for older versions of php) and returns escaped string * @param $str string string to be escaped * @return string escaped string */ function qode_addslashes($str) { $str = addslashes($str); return $str; } } if(!function_exists('qode_is_archive_page')) { /** * Function that checks if current page archive page, search, 404 or default home blog page * @return bool * * @see is_archive() * @see is_search() * @see is_404() * @see is_front_page() * @see is_home() */ function qode_is_archive_page() { return is_archive() || is_search() || is_404() || (is_front_page() && is_home()); } } if(!function_exists('qode_is_woocommerce_installed')) { /** * Function that checks if woocommerce is installed * @return bool */ function qode_is_woocommerce_installed() { return function_exists('is_woocommerce'); } } if(!function_exists('qode_is_woocommerce_page')) { /** * Function that checks if current page is woocommerce shop, product or product taxonomy * @return bool * * @see is_woocommerce() */ function qode_is_woocommerce_page() { return function_exists('is_woocommerce') && is_woocommerce(); } } if(!function_exists('qode_is_woocommerce_shop')) { /** * Function that checks if current page is shop or product page * @return bool * * @see is_shop() */ function qode_is_woocommerce_shop() { return function_exists('is_shop') && is_shop(); } } if(!function_exists('qode_is_product_category')) { function qode_is_product_category() { return function_exists('is_product_category') && is_product_category(); } } if(!function_exists('qode_get_woo_shop_page_id')) { /** * Function that returns shop page id that is set in WooCommerce settings page * @return int id of shop page */ function qode_get_woo_shop_page_id() { if(qode_is_woocommerce_installed()) { return get_option('woocommerce_shop_page_id'); } } } if(!function_exists('qode_woocommerce_columns_class')) { /** * Function that adds number of columns class to header tag * @param array array of classes from main filter * @return array array of classes with added bottom header appearance class */ function qode_woocommerce_columns_class($classes) { global $qode_options_proya; if (qode_is_woocommerce_installed()) { $products_list_number = 'columns-4'; if(isset($qode_options_proya['woo_products_list_number'])){ $products_list_number = $qode_options_proya['woo_products_list_number']; } $classes[]= $products_list_number; } return $classes; } add_filter('body_class', 'qode_woocommerce_columns_class'); } if(!function_exists('qode_woocommerce_single_type')) { function qode_woocommerce_single_type() { $type = ''; if (qode_is_woocommerce_installed()) { $type = qode_options()->getOptionValue('woo_product_single_type'); } return $type; } } if(!function_exists('qode_woocommerce_single_type_class')) { /** * Function that adds single type on body * @param array array of classes from main filter * @return array array of classes with added single type class */ function qode_woocommerce_single_type_class($classes) { if (qode_is_woocommerce_installed()) { $type = qode_woocommerce_single_type(); if(!empty($type)) { $class = 'qode-product-single-' . $type; $classes[]= $class; } } return $classes; } add_filter('body_class', 'qode_woocommerce_single_type_class'); } if(!function_exists('qode_get_page_template_name')) { /** * Returns current template file name without extension * @return string name of current template file */ function qode_get_page_template_name() { $file_name = ''; $file_name_without_ext = preg_replace('/\\.[^.\\s]{3,4}$/', '', basename(get_page_template())); if($file_name_without_ext !== '') { $file_name = $file_name_without_ext; } return $file_name; } } if(!function_exists('qode_is_contact_page_template')) { /** * Checks if current template page is contact page. * @param string current page. Optional parameter. If not passed qode_get_page_template_name() function will be used * @return bool * * @see qode_get_page_template_name() */ function qode_is_contact_page_template($current_page = '') { if($current_page == '') { $current_page = qode_get_page_template_name(); } return in_array($current_page, array('contact-page')); } } if(!function_exists('qode_has_shortcode')) { /** * Function that checks whether shortcode exists on current page / post * @param string shortcode to find * @param string content to check. If isn't passed current post content will be used * @return bool whether content has shortcode or not */ function qode_has_shortcode($shortcode, $content = '') { $has_shortcode = false; if ($shortcode) { //if content variable isn't past if($content == '') { //take content from current post $current_post = get_post(get_the_ID()); $content = $current_post->post_content; } //does content has shortcode added? if (stripos($content, '[' . $shortcode) !== false) { $has_shortcode = true; } } return $has_shortcode; } } if(!function_exists('qode_has_google_map_shortcode')) { /** * Function that checks Qode Google Map shortcode exists on a page * @return bool */ function qode_has_google_map_shortcode() { $google_map_shortcode = 'qode_google_map'; $slider_field = get_post_meta(qode_get_page_id(), 'qode_revolution-slider', true); $has_shortcode = qode_has_shortcode($google_map_shortcode) || qode_has_shortcode($google_map_shortcode, $slider_field); if($has_shortcode) { return true; } return false; } } if ( ! function_exists( 'qode_is_responsive_on' ) ) { /** * Checks whether responsive mode is enabled in theme options * @return bool */ function qode_is_responsive_on() { return qode_options()->getOptionValue( 'responsiveness' ) !== 'no'; } } if(!function_exists('qode_rgba_color')) { /** * Function that generates rgba part of css color property * @param $color string hex color * @param $transparency float transparency value between 0 and 1 * @return string generated rgba string */ function qode_rgba_color($color, $transparency) { if($color !== '' && $transparency !== '') { $rgba_color = ''; $rgb_color_array = qode_hex2rgb($color); $rgba_color .= 'rgba('.implode(', ', $rgb_color_array).', '.$transparency.')'; return $rgba_color; } } } if (!function_exists('theme_version_class')) { /** * Function that adds classes on body for version of theme * */ function theme_version_class($classes) { $current_theme = wp_get_theme(); $theme_prefix = 'qode'; //is child theme activated? if($current_theme->parent()) { //add child theme version $classes[] = $theme_prefix.'-child-theme-ver-'.$current_theme->get('Version'); //get parent theme $current_theme = $current_theme->parent(); } if($current_theme->exists() && $current_theme->get('Version') != "") { $classes[] = $theme_prefix.'-theme-ver-'.$current_theme->get('Version'); $classes[] = $theme_prefix.'-theme-'. strtolower($current_theme->get('Name')); } return $classes; } add_filter('body_class','theme_version_class'); } if(!function_exists('qode_get_title_text')) { /** * Function that returns current page title text. Defines qode_title_text filter * @return string current page title text * * @see is_tag() * @see is_date() * @see is_author() * @see is_category() * @see is_home() * @see is_search() * @see is_404() * @see get_queried_object_id() * @see qode_is_woocommerce_installed() * * @since 4.3 * @version 0.1 * */ function qode_get_title_text() { global $qode_options_proya; $id = get_queried_object_id(); $title = ''; //is current page tag archive? if (is_tag()) { //get title of current tag $title = single_term_title("", false)." Tag"; } //is current page date archive? elseif (is_date()) { //get current date archive format $title = get_the_time('F Y'); } //is current page author archive? elseif (is_author()) { //get current author name $title = __('Author:', 'qode') . " " . get_the_author(); } //us current page category archive elseif (is_category()) { //get current page category title $title = single_cat_title('', false); } //is current page blog post page and front page? Latest posts option is set in Settings -> Reading elseif (is_home() && is_front_page()) { //get site name from options $title = get_option('blogname'); } //is current page search page? elseif (is_search()) { //get title for search page $title = __('Search', 'qode'); } //is current page 404? elseif (is_404()) { //is 404 title text set in theme options? if($qode_options_proya['404_title'] != "") { //get it from options $title = $qode_options_proya['404_title']; } else { //get default 404 page title $title = __('404 - Page not found', 'qode'); } } //is WooCommerce installed and is shop or single product page? elseif(qode_is_woocommerce_installed() && (qode_is_woocommerce_shop() || is_singular('product'))) { //get shop page id from options table $shop_id = get_option('woocommerce_shop_page_id'); //get shop page and get it's title if set $shop = get_post($shop_id); if(isset($shop->post_title) && $shop->post_title !== '') { $title = $shop->post_title; } } //is WooCommerce installed and is current page product archive page? elseif(qode_is_woocommerce_installed() && (is_product_category() || is_product_tag())) { global $wp_query; //get current taxonomy and it's name and assign to title $tax = $wp_query->get_queried_object(); $category_title = $tax->name; $title = $category_title; } //is current page some archive page? elseif (is_archive()) { $title = __('Archive','qode'); } //current page is regular page else { $title = get_the_title($id); } $title = apply_filters('qode_title_text', $title); return $title; } } if(!function_exists('qode_title_text')) { /** * Function that echoes title text. * * @see qode_get_title_text() * * @since 4.3 * @version 0.1 */ function qode_title_text() { echo qode_get_title_text(); } } if(!function_exists('qode_wp_title')) { /** * Function that sets page's title. Hooks to wp_title filter * @param $title string current page title * @param $sep string title separator * @return string changed title text if SEO plugins aren't installed * * @since 5.0 * @version 0.3 */ function qode_wp_title($title, $sep) { global $qode_options_proya; //is SEO plugin installed? if(qode_seo_plugin_installed()) { //don't do anything, seo plugin will take care of it } else { //get current post id $id = qode_get_page_id(); $sep = ' | '; $title_prefix = get_bloginfo('name'); $title_suffix = ''; //set unchanged title variable so we can use it later $unchanged_title = $title; //is qode seo enabled? if(isset($qode_options_proya['disable_qode_seo']) && $qode_options_proya['disable_qode_seo'] !== 'yes') { //get current post seo title $seo_title = get_post_meta($id, "qode_seo_title", true); //is current post seo title set? if($seo_title !== '') { $title_suffix = $seo_title; } } //title suffix is empty, which means that it wasn't set by qode seo if(empty($title_suffix)) { //if current page is front page append site description, else take original title string $title_suffix = is_front_page() ? get_bloginfo('description') : $unchanged_title; } //concatenate title string $title = $title_prefix.$sep.$title_suffix; //return generated title string return $title; } } add_filter('wp_title', 'qode_wp_title', 10, 2); } if(!function_exists('qode_ajax_meta')) { /** * Function that echoes meta data for ajax * * @since 5.0 * @version 0.2 */ function qode_ajax_meta() { global $qode_options_proya; ?>
posts} WHERE guid='$attachment_url'"; //get attachment id $attachment_id = $wpdb->get_var($query); } //return it return $attachment_id; } } if(!function_exists('qode_get_attachment_meta_from_url')) { /** * Function that returns meta array for give attachment url * @param $attachment_url * @param array $keys sub array of attachment meta * @return array|mixed * * @see qode_get_attachment_id_from_url() * @see qode_get_attachment_meta() * * @version 0.1 */ function qode_get_attachment_meta_from_url($attachment_url, $keys = array()) { $attachment_meta = array(); //get attachment id for attachment url $attachment_id = qode_get_attachment_id_from_url($attachment_url); //is attachment id set? if(!empty($attachment_id)) { //get post meta $attachment_meta = qode_get_attachment_meta($attachment_id, $keys); } //return post meta return $attachment_meta; } } if(!function_exists('qode_get_image_dimensions')) { /** * Function that returns image sizes array. First looks in post_meta table if attachment exists in the database, * if it doesn't than it uses getimagesize PHP function to get image sizes * @param $url string url of the image * @return array array of image sizes that containes height and width * * @see qode_get_attachment_meta_from_url() * @uses getimagesize * * @version 0.1 */ function qode_get_image_dimensions($url) { $image_sizes = array(); //is url passed? if($url !== '') { //get image sizes from posts meta if attachment exists $image_sizes = qode_get_attachment_meta_from_url($url, array('width', 'height')); //image does not exists in post table, we have to use PHP way of getting image size if(!count($image_sizes)) { //can we open file by url? if(ini_get('allow_url_fopen') == 1 && file_exists($url)) { list($width, $height, $type, $attr) = getimagesize($url); } else { //we can't open file directly, have to locate it with relative path. $image_obj = parse_url($url); $image_relative_path = $_SERVER['DOCUMENT_ROOT'].$image_obj['path']; if(file_exists($image_relative_path)) { list($width, $height, $type, $attr) = getimagesize($image_relative_path); } } //did we get width and height from some of above methods? if(isset($width) && isset($height)) { //set them to our image sizes array $image_sizes = array( 'width' => $width, 'height' => $height ); } } } return $image_sizes; } } if(!function_exists('qode_set_logo_sizes')) { /** * Function that sets logo image dimensions to global qode options array so it can be used in the theme */ function qode_set_logo_sizes() { global $qode_options_proya; //get logo image size $logo_image_sizes = qode_get_image_dimensions($qode_options_proya['logo_image']); $qode_options_proya['logo_width'] = 280; $qode_options_proya['logo_height'] = 130; //is image width and height set? if(isset($logo_image_sizes['width']) && isset($logo_image_sizes['height'])) { //set those variables in global array $qode_options_proya['logo_width'] = $logo_image_sizes['width']; $qode_options_proya['logo_height'] = $logo_image_sizes['height']; } } //not used at the moment, so there is no need for action //add_action('init', 'qode_set_logo_sizes', 0); } if(!function_exists('qode_hide_initial_sticky_body_class')) { /** * Function that adds hidden initial sticky class to body. * @param $classes array of body classes * @return hidden initial sticky body class */ function qode_hide_initial_sticky_body_class($classes) { global $qode_options_proya; if(isset($qode_options_proya['header_bottom_appearance']) && ($qode_options_proya['header_bottom_appearance'] == "stick" || $qode_options_proya['header_bottom_appearance'] == "stick menu_bottom" || $qode_options_proya['header_bottom_appearance'] == "stick_with_left_right_menu")){ if(get_post_meta(qode_get_page_id(), "qode_page_hide_initial_sticky", true) !== ''){ if(get_post_meta(qode_get_page_id(), "qode_page_hide_initial_sticky", true) == 'yes'){ $classes[] = 'hide_inital_sticky'; } }else if(isset($qode_options_proya['hide_initial_sticky']) && $qode_options_proya['hide_initial_sticky'] == 'yes') { $classes[] = 'hide_inital_sticky'; } } return $classes; } add_filter('body_class', 'qode_hide_initial_sticky_body_class'); } if(!function_exists('qode_seo_plugin_installed')) { /** * Function that checks if popular seo plugins are installed * @return bool */ function qode_seo_plugin_installed() { //is YOAST installed? if(defined('WPSEO_VERSION')) { return true; } return false; } } if(!function_exists('qode_contact_form_7_installed')) { /** * Function that checks if contact form 7 installed * @return bool */ function qode_contact_form_7_installed() { //is Contact Form 7 installed? if(defined('WPCF7_VERSION')) { return true; } return false; } } if(!function_exists('qode_revolution_slider_installed')) { /** * Function that checks if revolution slider installed * @return bool */ function qode_revolution_slider_installed() { //is Revolution Slider installed? if(class_exists('RevSliderFront')) { return true; } return false; } } if(!function_exists('qode_layer_slider_installed')) { /** * Function that checks if layer slider installed * @return bool */ function qode_layer_slider_installed() { //is Layer Slider installed? if(defined('LS_PLUGIN_VERSION')) { return true; } return false; } } if(!function_exists('qode_envato_wordpress_toolkit_installed')) { /** * Function that checks if layer slider installed * @return bool */ function qode_envato_wordpress_toolkit_installed() { //is Envato WordPress Toolkit plugin installed? if(defined('EWPT_PLUGIN_VER')) { return true; } return false; } } if(!function_exists('qode_qode_listing_installed')) { /** * Function that checks if qode listing installed * @return bool */ function qode_qode_listing_installed() { //is Qode Listing installed? if(defined('QODE_LISTING_VERSION')) { return true; } return false; } } if(!function_exists('qode_qode_tours_installed')) { /** * Function that checks if qode tours installed * @return bool */ function qode_qode_tours_installed() { //is Qode Tours installed? if(defined('QODE_TOURS_VERSION')) { return true; } return false; } } if(!function_exists('qode_qode_music_installed')) { /** * Function that checks if qode music is installed * @return bool */ function qode_qode_music_installed() { //is Qode Music installed? if(defined('QODE_MUSIC_VERSION')) { return true; } return false; } } if(!function_exists('qode_qode_lms_installed')) { /** * Function that checks if qode lms is installed * @return bool */ function qode_qode_lms_installed() { //is Qode Music installed? if(defined('QODE_LMS_VERSION')) { return true; } return false; } } if(!function_exists('qode_timetable_schedule_installed')) { /** * Function that checks if timetable installed * @return bool */ function qode_timetable_schedule_installed() { //checking for this dummy function because plugin doesn't have constant or class //that we can hook to. Poorly coded plugin return function_exists('timetable_load_textdomain'); } } if(!function_exists('qode_post_has_read_more')) { /** * Function that checks if current post has read more tag set * @return int position of read more tag text. It will return false if read more tag isn't set */ function qode_post_has_read_more() { global $post; return strpos($post->post_content, ''); } } if(!function_exists('qode_is_main_menu_set')) { /** * Function that checks if any of main menu locations are set. * Checks whether top-navigation location is set, or left-top-navigation and right-top-navigation is set * @return bool * * @version 0.1 */ function qode_is_main_menu_set() { $has_top_nav = has_nav_menu('top-navigation'); $has_divided_nav = has_nav_menu('left-top-navigation') && has_nav_menu('right-top-navigation'); return $has_top_nav || $has_divided_nav; } } if(!function_exists('qode_remove_yoast_json_on_ajax')) { /** * Function that removes yoast json ld script * that stops page transition to work on home page * Hooks to wpseo_json_ld_output in order to disable json ld script * @return bool * * @param $data array json ld data that is being passed to filter * * @version 0.2 */ function qode_remove_yoast_json_on_ajax($data) { //is current request made through ajax? if(qode_is_ajax()) { //disable json ld script return array(); } return $data; } //is yoast installed and it's version is greater or equal of 1.6? if(defined('WPSEO_VERSION') && version_compare(WPSEO_VERSION, '1.6') >= 0) { add_filter('wpseo_json_ld_output', 'qode_remove_yoast_json_on_ajax'); } } if(!function_exists('qode_is_ajax')) { /** * Function that checks if current request is ajax request * @return bool whether it's ajax request or not * * @version 0.1 */ function qode_is_ajax() { return !empty( $_SERVER[ 'HTTP_X_REQUESTED_WITH' ]) && strtolower( $_SERVER[ 'HTTP_X_REQUESTED_WITH' ]) == 'xmlhttprequest'; } } if(!function_exists('qode_is_wpml_installed')) { /** * Function that checks if WPML plugin is installed * @return bool * * @version 0.1 */ function qode_is_wpml_installed() { return defined('ICL_SITEPRESS_VERSION'); } } if(!function_exists('qode_is_css_folder_writable')) { /** * Function that checks if css folder is writable * @return bool * * @version 0.1 * @uses is_writable() */ function qode_is_css_folder_writable() { $css_dir = get_template_directory().'/css'; return is_writable($css_dir); } } if(!function_exists('qode_is_js_folder_writable')) { /** * Function that checks if js folder is writable * @return bool * * @version 0.1 * @uses is_writable() */ function qode_is_js_folder_writable() { $js_dir = get_template_directory().'/js'; return is_writable($js_dir); } } if(!function_exists('qode_assets_folders_writable')) { /** * Function that if css and js folders are writable * @return bool * * @version 0.1 * @see qode_is_css_folder_writable() * @see qode_is_js_folder_writable() */ function qode_assets_folders_writable() { return qode_is_css_folder_writable() && qode_is_js_folder_writable(); } } if(!function_exists('qode_writable_assets_folders_notice')) { /** * Function that prints notice that css and js folders aren't writable. Hooks to admin_notices action * * @version 0.1 * @link http://codex.wordpress.org/Plugin_API/Action_Reference/admin_notices */ function qode_writable_assets_folders_notice() { global $pagenow; $is_theme_options_page = isset($_GET['page']) && strstr($_GET['page'], 'qode_theme_menu'); if($pagenow === 'admin.php' && $is_theme_options_page) { if(!qode_assets_folders_writable()) { ?>

documentation.', 'qode'); ?>

$no_ajax_pages )); } } add_action('wp_enqueue_scripts', 'qode_localize_no_ajax_pages'); } if(!function_exists('qode_get_woocommerce_pages')) { /** * Function that returns all url woocommerce pages * @return array array of WooCommerce pages * * @version 0.1 */ function qode_get_woocommerce_pages() { $woo_pages_array = array(); if(qode_is_woocommerce_installed()) { if(get_option('woocommerce_shop_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option('woocommerce_shop_page_id')); } if(get_option('woocommerce_cart_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option('woocommerce_cart_page_id')); } if(get_option('woocommerce_checkout_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option('woocommerce_checkout_page_id')); } if(get_option('woocommerce_pay_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_pay_page_id ')); } if(get_option('woocommerce_thanks_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_thanks_page_id ')); } if(get_option('woocommerce_myaccount_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_myaccount_page_id ')); } if(get_option('woocommerce_edit_address_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_edit_address_page_id ')); } if(get_option('woocommerce_view_order_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_view_order_page_id ')); } if(get_option('woocommerce_terms_page_id') != ''){ $woo_pages_array[] = get_permalink(get_option(' woocommerce_terms_page_id ')); } $woo_products = get_posts(array('post_type' => 'product','post_status' => 'publish', 'posts_per_page' => '-1') ); foreach($woo_products as $product) { $woo_pages_array[] = get_permalink($product->ID); } } return $woo_pages_array; } } if(!function_exists('qode_get_woocommerce_archive_pages')) { /** * Function that returns all url woocommerce pages * @return array array of WooCommerce pages * * @version 0.1 */ function qode_get_woocommerce_archive_pages() { $woo_pages_array = array(); if(qode_is_woocommerce_installed()) { $terms = get_terms( array( 'taxonomy' => array('product_cat','product_tag'), 'hide_empty' => false, ) ); foreach($terms as $term) { $woo_pages_array[] = get_term_link($term->term_id); } } return $woo_pages_array; } } if(!function_exists('qode_get_objects_without_ajax')) { /** * Function that returns urls of objects that have ajax disabled. * Works for posts, pages and portfolio pages. * @return array array of urls of posts that have ajax disabled * * @version 0.2 */ function qode_get_objects_without_ajax() { $posts_without_ajax = array(); $posts_args = array( 'post_type' => array('post', 'portfolio_page', 'page'), 'post_status' => 'publish', 'meta_key' => 'qode_show-animation', 'meta_value' => 'no_animation' ); $posts_query = new WP_Query($posts_args); if($posts_query->have_posts()) { while($posts_query->have_posts()) { $posts_query->the_post(); $posts_without_ajax[] = get_permalink(get_the_ID()); } } wp_reset_postdata(); return $posts_without_ajax; } } if(!function_exists('qode_get_pages_without_ajax')) { /** * Function that returns urls of pages that have ajax disabled * @return array array of urls of pages that have ajax disabled * * @version 0.1 */ function qode_get_pages_without_ajax() { $pages_without_ajax = array(); $pages_args = array( 'post_type' => 'page', 'post_status' => 'publish', 'meta_key' => 'qode_show-animation', 'meta_value' => 'no_animation' ); $pages_query = new WP_Query($pages_args); if($pages_query->have_posts()) { while($pages_query->have_posts()) { $pages_query->the_post(); $pages_without_ajax[] = get_permalink(get_the_ID()); } } wp_reset_postdata(); return $pages_without_ajax; } } if(!function_exists('qode_get_wpml_pages_for_current_page')) { /** * Function that returns urls translated pages for current page. * @return array array of url urls translated pages for current page. * * @version 0.1 */ function qode_get_wpml_pages_for_current_page() { $wpml_pages_for_current_page = array(); if(qode_is_wpml_installed()) { $language_pages = icl_get_languages('skip_missing=0'); foreach($language_pages as $key => $language_page) { $wpml_pages_for_current_page[] = $language_page["url"]; } } return $wpml_pages_for_current_page; } } if(!function_exists('qode_is_ajax_enabled')) { /** * Function that checks if ajax is enabled. * @return bool * * @version 0.1 */ function qode_is_ajax_enabled() { global $qode_options_proya; $has_ajax = false; if(isset($qode_options_proya['page_transitions']) && $qode_options_proya['page_transitions'] !== '0') { $has_ajax = true; } return $has_ajax; } } if(!function_exists('qode_is_ajax_header_animation_enabled')) { /** * Function that checks if header animation with ajax is enabled. * @return boolean * * @version 0.1 */ function qode_is_ajax_header_animation_enabled() { global $qode_options_proya; $has_header_animation = false; if(isset($qode_options_proya['page_transitions']) && $qode_options_proya['page_transitions'] !== '0' && isset($qode_options_proya['ajax_animate_header']) && $qode_options_proya['ajax_animate_header'] == 'yes') { $has_header_animation = true; } return $has_header_animation; } } if(!function_exists('qode_get_page_id')) { /** * Function that returns current page / post id. * Checks if current page is woocommerce page and returns that id if it is. * Checks if current page is any archive page (category, tag, date, author etc.) and returns -1 because that isn't * page that is created in WP admin. * * @return int * * @version 0.1 * * @see qode_is_woocommerce_installed() * @see qode_is_woocommerce_shop() */ function qode_get_page_id() { if(qode_is_woocommerce_installed() && (qode_is_woocommerce_shop() || is_singular('product'))) { return qode_get_woo_shop_page_id(); } if(is_archive() || is_search() || is_404() || (is_home() && is_front_page())) { return -1; } return get_queried_object_id(); } } if ( ! function_exists( 'qode_get_unique_page_class' ) ) { /** * Returns unique page class based on post type and page id * * $params int $id is page id * $params bool $allowSingleProductOption * @return string */ function qode_get_unique_page_class( $id, $allowSingleProductOption = false ) { $page_class = ''; if ( qode_is_woocommerce_installed() && $allowSingleProductOption ) { if ( is_product() ) { $id = get_the_ID(); } } if ( is_single() ) { $page_class = '.postid-' . $id; } elseif ( is_home() ) { $page_class .= '.home'; } elseif ( is_archive() || $id === qode_get_woo_shop_page_id() ) { $page_class .= '.archive'; } elseif ( is_search() ) { $page_class .= '.search'; } elseif ( is_404() ) { $page_class .= '.error404'; } else { $page_class .= '.page-id-' . $id; } return $page_class; } } if ( ! function_exists( 'qode_get_multisite_blog_id' ) ) { /** * Check is multisite and return blog id * * @return int */ function qode_get_multisite_blog_id() { if ( is_multisite() ) { return get_blog_details()->blog_id; } } } if(!function_exists('rewrite_rules_on_theme_activation')) { /** * Function that sets rewrite rules when our theme is activated */ function rewrite_rules_on_theme_activation() { flush_rewrite_rules(); } add_action( 'after_switch_theme', 'rewrite_rules_on_theme_activation' ); } if(!function_exists('qode_maintenance_mode')) { /** * Function that redirects user to desired landing page if maintenance mode is turned on in options */ function qode_maintenance_mode() { global $qode_options_proya; $protocol = is_ssl() ? "https://" : "http://"; if(isset($qode_options_proya['qode_maintenance_mode']) && $qode_options_proya['qode_maintenance_mode'] == 'yes' && isset($qode_options_proya['qode_maintenance_page']) && $qode_options_proya['qode_maintenance_page'] != "" && !in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php')) && !is_admin() && !is_user_logged_in() && $protocol.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] != get_permalink($qode_options_proya['qode_maintenance_page']) ) { wp_redirect(get_permalink($qode_options_proya['qode_maintenance_page'])); exit; } } if(isset($qode_options_proya['qode_maintenance_mode']) && $qode_options_proya['qode_maintenance_mode'] == 'yes') { add_action('init', 'qode_maintenance_mode', 1); } } if(!function_exists('qode_visual_composer_installed')) { /** * Function that checks if visual composer installed * @return bool */ function qode_visual_composer_installed() { //is Visual Composer installed? if(class_exists('WPBakeryVisualComposerAbstract')) { return true; } return false; } } if(!function_exists('qode_visual_composer_custom_shortcodce_css')){ function qode_visual_composer_custom_shortcodce_css(){ if(qode_visual_composer_installed()){ if(is_page() || is_single() || is_singular('portfolio_page')){ $shortcodes_custom_css = get_post_meta( qode_get_page_id(), '_wpb_shortcodes_custom_css', true ); if ( ! empty( $shortcodes_custom_css ) ) { echo ''; } $post_custom_css = get_post_meta( qode_get_page_id(), '_wpb_post_custom_css', true ); if ( ! empty( $post_custom_css ) ) { echo ''; } } } } add_action('qode_visual_composer_custom_shortcodce_css', 'qode_visual_composer_custom_shortcodce_css'); } if (!function_exists('qode_vc_grid_elements_enabled')) { /** * Function that checks if Visual Composer Grid Elements are enabled * * @return bool */ function qode_vc_grid_elements_enabled() { global $qode_options_proya; $vc_grid_enabled = false; if (isset($qode_options_proya['enable_grid_elements']) && $qode_options_proya['enable_grid_elements'] == 'yes') { $vc_grid_enabled = true; } return $vc_grid_enabled; } } if(!function_exists('qode_visual_composer_grid_elements')) { /** * Removes Visual Composer Grid Elements post type if VC Grid option disabled * and enables Visual Composer Grid Elements post type * if VC Grid option enabled */ function qode_visual_composer_grid_elements() { global $qode_options_proya; if(!qode_vc_grid_elements_enabled()){ remove_action( 'init', 'vc_grid_item_editor_create_post_type' ); } } add_action('vc_after_init', 'qode_visual_composer_grid_elements', 12); } if(!function_exists('qode_grid_elements_ajax_disable')) { /** * Function that disables ajax transitions if grid elements are enabled in theme options */ function qode_grid_elements_ajax_disable() { global $qode_options_proya; if(qode_vc_grid_elements_enabled()) { $qode_options_proya['page_transitions'] = '0'; } } add_action('wp', 'qode_grid_elements_ajax_disable'); } if(!function_exists('qode_get_vc_version')) { /** * Return Visual Composer version string * * @return bool|string */ function qode_get_vc_version() { if (qode_visual_composer_installed()) { return WPB_VC_VERSION; } return false; } } if ( ! function_exists( 'qode_is_gutenberg_installed' ) ) { /** * Function that checks if Gutenberg plugin installed * @return bool */ function qode_is_gutenberg_installed() { return function_exists( 'is_gutenberg_page' ) && is_gutenberg_page(); } } if ( ! function_exists( 'qode_is_wp_gutenberg_installed' ) ) { /** * Function that checks if WordPress 5.x with Gutenberg editor installed * * @return bool */ function qode_is_wp_gutenberg_installed() { return class_exists( 'WP_Block_Type' ); } } if(!function_exists('qode_get_side_menu_icon_html')) { /** * Function that outputs html for side area icon opener. * Uses $qodeIconCollections global variable * @return string generated html */ function qode_get_side_menu_icon_html() { global $qodeIconCollections, $qode_options_proya; $icon_html = ''; $icon_pack = qodef_option_get_value('side_area_button_icon_pack'); if(isset($icon_pack) && $icon_pack !== '') { $icon_collection_obj = $qodeIconCollections->getIconCollection($icon_pack); $icon_field_name = 'side_area_icon_'. $icon_collection_obj->param; $side_area_icon = qodef_option_get_value($icon_field_name); if(isset($side_area_icon) && $side_area_icon !== ''){ if (method_exists($icon_collection_obj, 'render')) { $icon_html = $icon_collection_obj->render($side_area_icon); } } } return $icon_html; } } if(!function_exists('qode_get_mobile_menu_icon_html')) { /** * Function that outputs html for side area icon opener. * Uses $qodeIconCollections global variable * @return string generated html */ function qode_get_mobile_menu_icon_html() { global $qodeIconCollections, $qode_options_proya; $icon_html = ''; $icon_pack = qodef_option_get_value('mobile_menu_button_icon_pack'); if(isset($icon_pack) && $icon_pack !== '') { $icon_collection_obj = $qodeIconCollections->getIconCollection($icon_pack); $icon_field_name = 'mobile_menu_icon_'. $icon_collection_obj->param; $mobile_menu_icon = qodef_option_get_value($icon_field_name); if(isset($mobile_menu_icon) && $mobile_menu_icon !== ''){ if (method_exists($icon_collection_obj, 'render')) { $icon_html = $icon_collection_obj->render($mobile_menu_icon); } } } return $icon_html; } } if ( ! function_exists( 'qode_page_custom_style' ) ) { /** * Function that print custom page style */ function qode_page_custom_style() { $style = apply_filters( 'qode_add_page_custom_style', $style = array() ); if ( $style !== '' ) { if(!qode_is_ajax_enabled()) { wp_add_inline_style('stylesheet', implode(' ', $style)); } else { echo ''; } } } if(!qode_is_ajax_enabled()) { add_action( 'wp_enqueue_scripts', 'qode_page_custom_style' ); } else { add_action( 'qode_visual_composer_custom_shortcodce_css', 'qode_page_custom_style' ); } } if ( ! function_exists( 'qode_container_style' ) ) { /** * Function that return container style */ function qode_container_style( $style ) { $page_id = qode_get_page_id(); $class_prefix = qode_get_unique_page_class( $page_id, true ); $container_selector = array( $class_prefix . '.transparent_content', $class_prefix . '.transparent_content.overlapping_content .content .content_inner > .container', $class_prefix . '.transparent_content.overlapping_content .content .content_inner > .full_width' ); $container_class = array(); $page_background_image_url = get_post_meta( $page_id, 'qode_page_background_image', true ); $page_background_color = get_post_meta( $page_id, 'qode_body_page_background_image', true ); $page_background_pattern_image_url = get_post_meta( $page_id, 'qode_page_background_pattern_image', true ); $page_background_image_fixed = get_post_meta( $page_id, 'qode_page_background_image_fixed', true ); if ( !empty($page_background_image_url) ) { $container_class['background-image'] = "url(" . $page_background_image_url . ")"; $container_class['background-size'] = "cover"; $container_class['background-position'] = 'center 0px'; $container_class['background-repeat'] = 'no-repeat'; if( !empty($page_background_image_fixed) && $page_background_image_fixed == 'no' ){ $container_class['background-attachment'] = 'initial'; } else { $container_class['background-attachment'] = 'fixed'; } } else if( !empty($page_background_pattern_image_url) ){ $container_class['background-image'] = "url(" . $page_background_pattern_image_url . ")"; $container_class['background-position'] = '0 0'; $container_class['background-repeat'] = 'repeat'; } $current_style = qode_dynamic_css( $container_selector, $container_class ); $style[] = $current_style; return $style; } add_filter( 'qode_add_page_custom_style', 'qode_container_style' ); } if ( ! function_exists( 'qode_container_background_color_style' ) ) { /** * Function that return container style */ function qode_container_background_color_style( $style ) { $page_id = qode_get_page_id(); $class_prefix = qode_get_unique_page_class( $page_id, true ); $container_selector = array( $class_prefix . ' .content > .content_inner > .container', $class_prefix . ' .content > .content_inner > .full_width' ); $container_class = array(); $page_background_color = get_post_meta( $page_id, 'qode_page_background_color', true ); if ( !empty($page_background_color) ) { $container_class['background-color'] = $page_background_color; } $current_style = qode_dynamic_css( $container_selector, $container_class ); $style[] = $current_style; return $style; } add_filter( 'qode_add_page_custom_style', 'qode_container_background_color_style' ); } if ( ! function_exists( 'qode_container_inner_style' ) ) { /** * Function that return container style */ function qode_container_inner_style( $style ) { $page_id = qode_get_page_id(); $class_prefix = qode_get_unique_page_class( $page_id, true ); $container_selector = array( $class_prefix . ' .content > .content_inner > .container > .container_inner', $class_prefix . ' .content > .content_inner > .full_width > .full_width_inner' ); $page_margin = get_post_meta( $page_id, 'qode_margin_after_title', true ); $page_mobile_margin = get_post_meta( $page_id, 'qode_margin_after_title_mobile', true ); $container_inner_class = array(); if ( !empty($page_margin) ) { if ( !empty($page_mobile_margin) && $page_mobile_margin == 'yes' ) { $container_inner_class['padding-top'] = $page_margin . "px !important"; } else { $container_inner_class['padding-top'] = $page_margin . "px"; } } $current_style = qode_dynamic_css( $container_selector, $container_inner_class ); $style[] = $current_style; return $style; } add_filter( 'qode_add_page_custom_style', 'qode_container_inner_style' ); } if ( ! function_exists( 'qode_page_transparent_content' ) ) { function qode_page_transparent_content( $classes ) { $page_id = qode_get_page_id(); $page_transparent_content = get_post_meta( $page_id, 'qode_transparent_content_page', true ); $class_value = 'transparent_content'; if( !empty($page_transparent_content) && $page_transparent_content == 'yes'){ $classes[] = $class_value; } else if($page_transparent_content == 'no'){ if (($key = array_search($class_value, $classes)) !== false) { unset($classes[$key]); } } return $classes; } add_filter('body_class','qode_page_transparent_content'); } if ( ! function_exists( 'qode_footer_style' ) ) { /** * Function that return container style */ function qode_footer_style( $style ) { $page_id = qode_get_page_id(); $class_prefix = qode_get_unique_page_class( $page_id, true ); $container_selector = array( $class_prefix . '.disabled_footer_top .footer_top_holder', $class_prefix . '.disabled_footer_bottom .footer_bottom_holder' ); $container_class = array(); $container_class['display'] = "none"; $current_style = qode_dynamic_css( $container_selector, $container_class ); $style[] = $current_style; return $style; } add_filter( 'qode_add_page_custom_style', 'qode_footer_style' ); } if ( ! function_exists( 'qode_footer_top_disabled_class' ) ) { function qode_footer_top_disabled_class( $classes ) { $page_id = qode_get_page_id(); $footer_top_global = qode_options()->getOptionValue('show_footer_top'); $footer_top_per_page_option = get_post_meta($page_id, "footer_top_per_page", true); $footer_option = true; if(isset($footer_top_per_page_option) && $footer_top_per_page_option == 'no'){ $footer_option = false; } else if(isset($footer_top_per_page_option) && $footer_top_per_page_option == ''){ if(isset($footer_top_global) && $footer_top_global == 'no'){ $footer_option = false; } } if($footer_option == false){ $classes[] = 'disabled_footer_top'; } return $classes; } add_filter('body_class','qode_footer_top_disabled_class'); } if ( ! function_exists( 'qode_footer_bottom_disabled_class' ) ) { function qode_footer_bottom_disabled_class( $classes ) { $page_id = qode_get_page_id(); $footer_bottom_global = qode_options()->getOptionValue('footer_text'); $footer_bottom_per_page_option = get_post_meta($page_id, "footer_bottom_per_page", true); $footer_option = true; if(isset($footer_bottom_per_page_option) && $footer_bottom_per_page_option == 'no'){ $footer_option = false; } else if(isset($footer_bottom_per_page_option) && $footer_bottom_per_page_option == ''){ if(isset($footer_bottom_global) && $footer_bottom_global == 'no'){ $footer_option = false; } } if($footer_option == false){ $classes[] = 'disabled_footer_bottom'; } return $classes; } add_filter('body_class','qode_footer_bottom_disabled_class'); } if ( ! function_exists( 'qode_advanced_footer_responsive' ) ) { function qode_advanced_footer_responsive( $classes ) { $advanced_footer_top_responsive = qode_options()->getOptionValue('advanced_footer_top_responsive'); if (! empty($advanced_footer_top_responsive) && $advanced_footer_top_responsive == 'yes' ) { $advanced_footer_top_responsive_width = qode_options()->getOptionValue('footer_top_responsive_advanced_width'); $classes[] = 'qode_advanced_footer_responsive' . '_' . $advanced_footer_top_responsive_width; } return $classes; } add_filter('body_class','qode_advanced_footer_responsive'); } if( ! function_exists('qode_header_in_grid_body_class') ){ function qode_header_in_grid_body_class( $classes ){ $header_in_grid = qode_options()->getOptionValue('header_in_grid'); if( ! empty($header_in_grid) && $header_in_grid == 'yes' ){ $classes[] = 'qode_header_in_grid'; } return $classes; } add_filter('body_class','qode_header_in_grid_body_class'); } if(!function_exists('qode_add_grid_lines')) { function qode_add_grid_lines() { $id = qode_get_page_id(); $number_of_lines_page = get_post_meta( $id, 'qode_content_grid_lines_meta', true ); $lines_skin_page = get_post_meta( $id, 'qode_content_grid_lines_skin_meta', true ); $number_of_lines_global = qode_options()->getOptionValue('content_grid_lines'); $lines_skin_global = qode_options()->getOptionValue('content_grid_lines_skin'); $number_of_lines = 'none'; if( $number_of_lines_page != '' && $number_of_lines_page != 'none' ){ $number_of_lines = $number_of_lines_page; $lines_skin = $lines_skin_page; } else if( $number_of_lines_page == '' ){ $number_of_lines = $number_of_lines_global; $lines_skin = $lines_skin_global; } $html = ''; if($number_of_lines !== 'none'){ $html .= '
'; for ($i = 1; $i <= $number_of_lines; $i++) { $html .= '
'; } $html .= '
'; } print $html; } add_filter('qode_after_container_inner_open', 'qode_add_grid_lines'); }