<?php if (!function_exists('pp_get_page_templates')) { function pp_get_page_templates($type = '') { $args = ['post_type' => 'elementor_library', 'posts_per_page' => -1]; if ($type) { $args['tax_query'] = [['taxonomy' => 'elementor_library_type', 'field' => 'slug', 'terms' => $type]]; } $page_templates = get_posts($args); $options = array(); if (!empty($page_templates) && !is_wp_error($page_templates)) { foreach ($page_templates as $post) { $options[$post->ID] = $post->post_title; } } return $options; } } if (!function_exists('pp_get_contact_form_7_forms')) { function pp_get_contact_form_7_forms() { if (function_exists('wpcf7')) { $options = array(); $args = array('post_type' => 'wpcf7_contact_form', 'posts_per_page' => -1); $contact_forms = get_posts($args); if (!empty($contact_forms) && !is_wp_error($contact_forms)) { $i = 0; foreach ($contact_forms as $post) { if ($i == 0) { $options[0] = esc_html__('Select a Contact form', 'powerpack'); } $options[$post->ID] = $post->post_title; $i++; } } } else { $options = array(); } return $options; } } if (!function_exists('pp_get_gravity_forms')) { function pp_get_gravity_forms() { if (class_exists('GFCommon')) { $options = array(); $contact_forms = RGFormsModel::get_forms(null, 'title'); if (!empty($contact_forms) && !is_wp_error($contact_forms)) { $i = 0; foreach ($contact_forms as $form) { if ($i == 0) { $options[0] = esc_html__('Select a Contact form', 'powerpack'); } $options[$form->id] = $form->title; $i++; } } } else { $options = array(); } return $options; } } if (!function_exists('pp_get_ninja_forms')) { function pp_get_ninja_forms() { if (class_exists('Ninja_Forms')) { $options = array(); $contact_forms = Ninja_Forms()->form()->get_forms(); if (!empty($contact_forms) && !is_wp_error($contact_forms)) { $i = 0; foreach ($contact_forms as $form) { if ($i == 0) { $options[0] = esc_html__('Select a Contact form', 'powerpack'); } $options[$form->get_id()] = $form->get_setting('title'); $i++; } } } else { $options = array(); } return $options; } } if (!function_exists('pp_get_caldera_forms')) { function pp_get_caldera_forms() { if (class_exists('Caldera_Forms')) { $options = array(); $contact_forms = Caldera_Forms_Forms::get_forms(true, true); if (!empty($contact_forms) && !is_wp_error($contact_forms)) { $i = 0; foreach ($contact_forms as $form) { if ($i == 0) { $options[0] = esc_html__('Select a Contact form', 'powerpack'); } $options[$form['ID']] = $form['name']; $i++; } } } else { $options = array(); } return $options; } } if (!function_exists('pp_get_wpforms_forms')) { function pp_get_wpforms_forms() { if (function_exists('wpforms')) { $options = array(); $args = array('post_type' => 'wpforms', 'posts_per_page' => -1); $contact_forms = get_posts($args); if (!empty($contact_forms) && !is_wp_error($contact_forms)) { $i = 0; foreach ($contact_forms as $post) { if ($i == 0) { $options[0] = esc_html__('Select a Contact form', 'powerpack'); } $options[$post->ID] = $post->post_title; $i++; } } } else { $options = array(); } return $options; } } if (!function_exists('pp_get_post_categories')) { function pp_get_post_categories() { $options = array(); $terms = get_terms(array('taxonomy' => 'category', 'hide_empty' => true)); if (!empty($terms) && !is_wp_error($terms)) { foreach ($terms as $term) { $options[$term->term_id] = $term->name; } } return $options; } } if (!function_exists('pp_get_post_types')) { function pp_get_post_types() { $post_types = get_post_types(array('public' => true, 'show_in_nav_menus' => true), 'objects'); $options = array(); foreach ($post_types as $post_type) { $options[$post_type->name] = $post_type->label; } return $options; } } if (!function_exists('pp_get_post_taxonomies')) { function pp_get_post_taxonomies($post_type) { $taxonomies = get_object_taxonomies($post_type, 'objects'); $data = array(); foreach ($taxonomies as $tax_slug => $tax) { if (!$tax->public || !$tax->show_ui) { continue; } $data[$tax_slug] = $tax; } return apply_filters('pp_post_loop_taxonomies', $data, $taxonomies, $post_type); } } if (!function_exists('pp_get_auhtors')) { function pp_get_auhtors() { $options = array(); $users = get_users(); foreach ($users as $user) { $options[$user->ID] = $user->display_name; } return $options; } } if (!function_exists('pp_get_tags')) { function pp_get_tags() { $options = array(); $tags = get_tags(); foreach ($tags as $tag) { $options[$tag->term_id] = $tag->name; } return $options; } } if (!function_exists('pp_get_posts')) { function pp_get_posts() { $post_list = get_posts(array('post_type' => 'post', 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page' => -1)); $posts = array(); if (!empty($post_list) && !is_wp_error($post_list)) { foreach ($post_list as $post) { $posts[$post->ID] = $post->post_title; } } return $posts; } } if (!function_exists('pp_get_posts_any')) { function pp_get_posts_any($post_type) { $post_list = get_posts(array('post_type' => $post_type, 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page' => -1)); $posts = array(); if (!empty($post_list) && !is_wp_error($post_list)) { foreach ($post_list as $post) { $posts[$post->ID] = $post->post_title; } } return $posts; } } if (!function_exists('pp_custom_excerpt')) { function pp_custom_excerpt($limit = '') { $excerpt = explode(' ', get_the_excerpt(), $limit); if (count($excerpt) >= $limit) { array_pop($excerpt); $excerpt = implode(" ", $excerpt) . '...'; } else { $excerpt = implode(" ", $excerpt); } $excerpt = preg_replace('`[[^]]*]`', '', $excerpt); return $excerpt; } } add_filter('get_the_excerpt', 'do_shortcode'); if (!function_exists('pp_get_normal_years')) { function pp_get_normal_years() { $options = array('0' => __('Year', 'powerpack')); for ($i = date('Y'); $i < date('Y') + 6; $i++) { $options[$i] = $i; } return $options; } } if (!function_exists('pp_get_normal_month')) { function pp_get_normal_month() { $months = array('1' => __('Jan', 'powerpack'), '2' => __('Feb', 'powerpack'), '3' => __('Mar', 'powerpack'), '4' => __('Apr', 'powerpack'), '5' => __('May', 'powerpack'), '6' => __('Jun', 'powerpack'), '7' => __('Jul', 'powerpack'), '8' => __('Aug', 'powerpack'), '9' => __('Sep', 'powerpack'), '10' => __('Oct', 'powerpack'), '11' => __('Nov', 'powerpack'), '12' => __('Dec', 'powerpack')); $options = array('0' => __('Month', 'powerpack')); for ($i = 1; $i <= 12; $i++) { $options[$i] = $months[$i]; } return $options; } } function pp_get_normal_date() { $options = array('0' => __('Date', 'powerpack')); for ($i = 1; $i <= 31; $i++) { $options[$i] = $i; } return $options; } function pp_get_normal_hour() { $options = array('0' => __('Hour', 'powerpack')); for ($i = 0; $i < 24; $i++) { $options[$i] = $i; } return $options; } function pp_get_normal_minutes() { $options = array('0' => __('Minute', 'powerpack')); for ($i = 0; $i < 60; $i++) { $options[$i] = $i; } return $options; } function pp_get_normal_seconds() { $options = array('0' => __('Seconds', 'powerpack')); for ($i = 0; $i < 60; $i++) { $options[$i] = $i; } return $options; } if (!function_exists('is_plugin_active')) { include_once ABSPATH . 'wp-admin/includes/plugin.php'; } if (class_exists('WooCommerce') || is_plugin_active('woocommerce/woocommerce.php')) { if (!function_exists('pp_get_products')) { function pp_get_products() { $post_list = get_posts(array('post_type' => 'product', 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page' => -1)); $posts = array(); if (!empty($post_list) && !is_wp_error($post_list)) { foreach ($post_list as $post) { $posts[$post->ID] = $post->post_title; } } return $posts; } } if (!function_exists('pp_get_product_categories')) { function pp_get_product_categories() { $options = array(); $terms = get_terms(array('taxonomy' => 'product_cat', 'hide_empty' => true)); if (!empty($terms) && !is_wp_error($terms)) { foreach ($terms as $term) { $options[$term->term_id] = $term->name; } } return $options; } } if (!function_exists('pp_product_get_tags')) { function pp_product_get_tags() { $options = array(); $tags = get_terms('product_tag'); if (!empty($tags) && !is_wp_error($tags)) { foreach ($tags as $tag) { $options[$tag->term_id] = $tag->name; } } return $options; } } } function pp_get_modules() { $modules = array('pp-link-effects' => __('Link Effects', 'powerpack'), 'pp-divider' => __('Divider', 'powerpack'), 'pp-recipe' => __('Recipe', 'powerpack'), 'pp-info-box' => __('Info Box', 'powerpack'), 'pp-info-box-carousel' => __('Info Box Carousel', 'powerpack'), 'pp-info-list' => __('Info List', 'powerpack'), 'pp-info-table' => __('Info Table', 'powerpack'), 'pp-tiled-posts' => __('Tiled Posts', 'powerpack'), 'pp-pricing-table' => __('Pricing Table', 'powerpack'), 'pp-price-menu' => __('Price Menu', 'powerpack'), 'pp-business-hours' => __('Businsess Hours', 'powerpack'), 'pp-team-member' => __('Team Member', 'powerpack'), 'pp-team-member-carousel' => __('Team Member Carousel', 'powerpack'), 'pp-counter' => __('Counter', 'powerpack'), 'pp-hotspots' => __('Image Hotspots', 'powerpack'), 'pp-icon-list' => __('Icon List', 'powerpack'), 'pp-dual-heading' => __('Dual Heading', 'powerpack'), 'pp-promo-box' => __('Promo Box', 'powerpack'), 'pp-logo-carousel' => __('Logo Carousel', 'powerpack'), 'pp-logo-grid' => __('Logo Grid', 'powerpack'), 'pp-modal-popup' => __('Modal Popup', 'powerpack'), 'pp-onepage-nav' => __('One Page Navigation', 'powerpack'), 'pp-table' => __('Table', 'powerpack'), 'pp-toggle' => __('Toggle', 'powerpack'), 'pp-image-comparison' => __('Image Comparison', 'powerpack'), 'pp-instafeed' => __('Instagram Feed', 'powerpack'), 'pp-google-maps' => __('Google Maps', 'powerpack'), 'pp-countdown' => __('Countdown', 'powerpack'), 'pp-buttons' => __('Buttons', 'powerpack'), 'pp-advanced-tabs' => __('Advanced Tabs', 'powerpack'), 'pp-image-gallery' => __('Image Gallery', 'powerpack'), 'pp-image-slider' => __('Image Slider', 'powerpack'), 'pp-advanced-menu' => __('Advanced Menu', 'powerpack'), 'pp-offcanvas-content' => __('Offcanvas Content', 'powerpack'), 'pp-showcase' => __('Showcase', 'powerpack'), 'pp-timeline' => __('Timeline', 'powerpack'), 'pp-card-slider' => __('Card Slider', 'powerpack'), 'pp-flipbox' => __('Flip Box', 'powerpack'), 'pp-image-accordion' => __('Image Accordion', 'powerpack'), 'pp-advanced-accordion' => __('Advanced Accordion', 'powerpack'), 'pp-breadcrumbs' => __('Breadcrumbs', 'powerpack'), 'pp-content-ticker' => __('Content Ticker', 'powerpack'), 'pp-magazine-slider' => __('Magazine Slider', 'powerpack'), 'pp-video' => __('Video', 'powerpack'), 'pp-video-gallery' => __('Video Gallery', 'powerpack'), 'pp-testimonials' => __('Testimonials', 'powerpack'), 'pp-scroll-image' => __('Scroll Image', 'powerpack'), 'pp-album' => __('Album', 'powerpack'), 'pp-twitter-buttons' => __('Twitter Buttons', 'powerpack'), 'pp-twitter-grid' => __('Twitter Grid', 'powerpack'), 'pp-twitter-timeline' => __('Twitter Timeline', 'powerpack'), 'pp-twitter-tweet' => __('Twitter Tweet', 'powerpack'), 'pp-tabbed-gallery' => __('Tabbed Gallery', 'powerpack')); if (function_exists('wpcf7')) { $modules['pp-contact-form-7'] = __('Contact Form 7', 'powerpack'); } if (class_exists('GFCommon')) { $modules['pp-gravity-forms'] = __('Gravity Forms', 'powerpack'); } if (class_exists('Ninja_Forms')) { $modules['pp-ninja-forms'] = __('Ninja Forms', 'powerpack'); } if (class_exists('Caldera_Forms')) { $modules['pp-caldera-forms'] = __('Caldera Forms', 'powerpack'); } if (function_exists('wpforms')) { $modules['pp-wpforms'] = __('WPForms', 'powerpack'); } if (class_exists('WooCommerce') || is_plugin_active('woocommerce/woocommerce.php')) { $modules['pp-woo-add-to-cart'] = __('Woo - Add To Cart', 'powerpack'); $modules['pp-woo-categories'] = __('Woo - Categories', 'powerpack'); $modules['pp-woo-cart'] = __('Woo - Cart', 'powerpack'); $modules['pp-woo-checkout'] = __('Woo - Checkout', 'powerpack'); $modules['pp-woo-products'] = __('Woo - Products', 'powerpack'); } ksort($modules); return $modules; } function pp_get_enabled_modules() { $enabled_modules = \PowerpackElements\Classes\PP_Admin_Settings::get_option('pp_elementor_modules', true); if (!is_array($enabled_modules)) { return array_keys(pp_get_modules()); } else { return $enabled_modules; } } function pp_get_saved_templates($templates = array()) { if (empty($templates)) { return array(); } $options = array(); foreach ($templates as $template) { $options[$template['template_id']] = $template['title']; } return $options; }