Current File : /home/kelaby89/sixpacksecurity.services/wp-content/themes/poket/functions.php |
<?php
/**
* poket functions and definitions
*
* @link https://developer.wordpress.org/themes/basics/theme-functions/
*
* @package poket
*/
if ( ! function_exists( 'poket_setup' ) ) :
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* Note that this function is hooked into the after_setup_theme hook, which
* runs before the init hook. The init hook is too late for some features, such
* as indicating support for post thumbnails.
*/
function poket_setup() {
load_theme_textdomain( 'poket', get_template_directory() . '/languages' );
add_theme_support( 'automatic-feed-links' );
add_theme_support( 'title-tag' );
add_theme_support( 'post-formats', array( 'gallery', 'quote', 'video', 'audio' ) );
add_image_size( 'poket-blog-default', 390, 350, true );
add_image_size( 'poket-blog6-default', 390, 250, true );
add_image_size( 'poket-blog-default2', 370, 430, true );
add_image_size( 'poket-blog-default8', 370, 440, true );
add_image_size( 'poket-event-default', 420, 350, true );
add_image_size( 'poket-event-370-450', 370, 450, true );
add_image_size( 'poket-blog-single', 900, 550, true );
add_image_size( 'poket-event-single', 770, 450, true );
add_image_size( 'poket-blog-both', 570, 350, true );
add_image_size( 'poket-team', 450, 450, true );
add_image_size( 'poket-testimonial', 106, 106, true );
add_image_size( 'poket-single-portfolio', 1170, 600, true );
add_image_size( 'poket-gallery-thumb', 560, 560, true );
add_image_size( 'poket_recent_image', 70, 70, true );
add_theme_support('woocommerce');
add_theme_support( 'wc-product-gallery-zoom' );
add_theme_support( 'wc-product-gallery-lightbox' );
add_theme_support( 'wc-product-gallery-slider' );
add_theme_support( 'post-thumbnails' );
add_editor_style();
add_theme_support( 'align-wide' );
add_theme_support( 'responsive-embeds' );
register_nav_menus( array(
'menu-top' => esc_html__( 'Top Menu', 'poket' ),
'menu-1' => esc_html__( 'Main Menu', 'poket' ),
'one-pages' => esc_html__( 'One Page Menu', 'poket' ),
'menu-2' => esc_html__( 'Footer Menu', 'poket' ),
'menu-3' => esc_html__( 'Mobile Menu', 'poket' ),
) );
add_theme_support( 'html5', array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
) );
add_theme_support( 'custom-background', apply_filters( 'poket_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
add_theme_support( 'customize-selective-refresh-widgets' );
}
endif;
add_action( 'after_setup_theme', 'poket_setup' );
/**
* Implement the Custom Header feature.
*/
require get_template_directory() . '/includes/custom-header.php';
/**
* Custom template tags for this theme.
*/
require get_template_directory() . '/includes/template-tags.php';
/**
* Custom functions that act independently of the theme templates.
*/
require get_template_directory() . '/includes/extras.php';
/**
* Customizer additions.
*/
require get_template_directory() . '/includes/customizer.php';
/**
* Load Jetpack compatibility file.
*/
require get_template_directory() . '/includes/jetpack.php';
/**
*visual composer
*/
// load redux
if ( class_exists('ReduxFrameworkPlugin') ) {
require get_template_directory(). '/includes/twr-option-framework.php';
}
require get_template_directory(). '/includes/twr-global-function.php';
require get_template_directory(). '/includes/twr-breadcrumb.php';
require get_template_directory(). '/includes/twr-tgm-activation.php';
require get_template_directory(). '/includes/twr-wooconfig.php';
/**
* Set the content width in pixels, based on the theme's design and stylesheet.
*
* Priority 0 to make it available to lower priority callbacks.
*
* @global int $content_width
*/
function poket_content_width() {
$GLOBALS['content_width'] = apply_filters( 'poket_content_width', 1140 );
}
add_action( 'after_setup_theme', 'poket_content_width', 0 );
/**
*Register Fonts
*/
if(!function_exists('poket_fonts_url')){
function poket_fonts_url(){
$fonts_url = '';
/* Translators: If there are characters in your language that are not
* supported by Roboto, translate this to 'off'. Do not translate
* into your own language.
*/
$poket_font1 = _x( 'on', 'Montserrat Alternates font: on or off', 'poket' );
$poket_font2 = _x( 'on', 'Mulish Sans font: on or off', 'poket' );
if ( 'off' !== $poket_font1 ) {
$font_families = array();
}
if ( 'off' !== $poket_font1 ) {
$font_families[] = 'Montserrat Alternates:100,200,300,400,500,600,700,800,900';
}
if ( 'off' !== $poket_font2 ) {
$font_families[] = 'Mulish Sans:200,300,400,500,600,700,800,900';
}
if ( $font_families ) {
$fonts_url = add_query_arg( array(
'family' => urlencode( implode( '|', $font_families ) ),
'subset' => urlencode( 'latin,latin-ext' ),
), 'https://fonts.googleapis.com/css' );
}
return esc_url_raw( $fonts_url );
}
}
// load style
if(!function_exists('poket_styles')){
function poket_styles(){
global $poket_opt;
global $post;
$txbdm_header_topa = get_post_meta( get_the_ID(),'_txbdm_header_topa', true );
$toptsst = get_post_meta( get_the_ID(),'_txbdm_toptsst', true );
$twr_menu_header_style = get_post_meta( get_the_ID(),'_txbdm_menu_header_style', true );
if ( is_rtl() ) {
wp_register_style( 'poket-fonts', poket_fonts_url(), array() );
wp_register_style('venobox', get_template_directory_uri() .'/venobox/venobox.css');
wp_register_style('slickcss', get_template_directory_uri() .'/assets/css/slick.min.css');
wp_register_style('niceselect', get_template_directory_uri() .'/assets/css/niceselect.css');
wp_register_style('hamburger', get_template_directory_uri() .'/assets/css/hamburger.rtl.css');
wp_register_style('meanmenu', get_template_directory_uri() .'/assets/css/meanmenu.rtl.css');
wp_register_style('top_menu', get_template_directory_uri() .'/assets/css/top_menu.rtl.css');
wp_register_style('top_middle', get_template_directory_uri() .'/assets/css/top_middle.rtl.css');
wp_register_style('poket_main_style', get_template_directory_uri() .'/assets/css/main_style.rtl.css');
wp_register_style('twr_theme_color', get_template_directory_uri() .'/assets/css/twr_theme_color.rtl.css');
wp_register_style( 'poket_style', get_stylesheet_uri() );
wp_register_style('poket_responsive', get_template_directory_uri() .'/assets/css/responsive.rtl.css');
wp_enqueue_style( 'poket-fonts' );
wp_enqueue_style('bootstrap', get_template_directory_uri() .'/assets/css/bootstrap.min.rtl.css');
if ( !empty($poket_opt['twr_defaulth_menu_layout']) && $poket_opt['twr_defaulth_menu_layout']==16 || $twr_menu_header_style==16 ){
wp_enqueue_style( 'hamburger' );
}
wp_enqueue_style( 'venobox' );
wp_enqueue_style( 'slickcss' );
if ( !empty($poket_opt['poket_header_top_hide']) && $poket_opt['poket_header_top_hide']==true || $txbdm_header_topa==1 ){
wp_enqueue_style( 'top_menu' );
}
if ( !empty($poket_opt['poket_header_top_two_hide']) && $poket_opt['poket_header_top_two_hide']==true || $toptsst==1 ){
wp_enqueue_style( 'top_middle' );
}
/*
* Enqueueing JavaScript Files
*/
wp_enqueue_script( 'modernizr', get_template_directory_uri() . '/assets/js/vendor/modernizr-3.11.2.min.js', array(), '3.11.2', true );
wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/assets/js/bootstrap.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'meanmenu', get_template_directory_uri() . '/assets/js/jquery.meanmenu.min.js', array('jquery'), '3.3.5', true );
wp_register_script( 'headroom', get_template_directory_uri() . '/assets/js/headroom.js', array('jquery'), '3.3.5', true );
wp_register_script( 'slick.min', get_template_directory_uri() . '/assets/js/slick.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'theme-plugin', get_template_directory_uri() . '/assets/js/theme-pluginjs.js', array('jquery'), '3.2.4', true );
wp_enqueue_script( 'imagesloaded');
wp_register_script( 'niceselect', get_template_directory_uri() . '/assets/js/niceselect.js', array('jquery'), '3.3.5', true );
wp_register_script( 'owlcarousel', get_template_directory_uri() . '/assets/js/owl.carousel.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'venobox', get_template_directory_uri() . '/venobox/venobox.min.js', array('jquery'), '3.2.4', true );
wp_enqueue_script( 'slickjs' );
if ( class_exists( 'WooCommerce' ) ) {
wp_register_style('woo_theme', get_template_directory_uri() .'/assets/css/woo_theme.rtl.css');
wp_enqueue_style( 'woo_theme' );
if ( is_shop() || is_tax( 'product_cat' ) || is_singular( 'product' ) || is_tax( 'product_tag' ) || is_checkout() || is_account_page() || is_checkout() || is_checkout()) {
wp_enqueue_style( 'woo_theme' );
}
if ( is_shop() || is_tax( 'product_cat' ) || is_tax( 'product_tag' ) ) {
wp_enqueue_style( 'niceselect' );
wp_enqueue_script( 'niceselect' );
}
}
/* headroom menu js */
if ( !empty($poket_opt['twr_defaulth_menu_layout']) && $poket_opt['twr_defaulth_menu_layout']==11 || $twr_menu_header_style==11 ){
wp_enqueue_script( 'headroom' );
}
/* main theme js */
wp_enqueue_script( 'poket-themes', get_template_directory_uri() . '/assets/js/theme.rtl.js', array('jquery'), '3.2.4', true );
wp_enqueue_style( 'meanmenu' );
wp_enqueue_style( 'poket_main_style' );
wp_enqueue_style( 'twr_theme_color' );
wp_enqueue_style( 'poket_style' );
wp_enqueue_style( 'poket_responsive' );
}else{
wp_register_style( 'poket-fonts', poket_fonts_url(), array() );
wp_register_style('venobox', get_template_directory_uri() .'/venobox/venobox.css');
wp_register_style('slickcss', get_template_directory_uri() .'/assets/css/slick.min.css');
wp_register_style('niceselect', get_template_directory_uri() .'/assets/css/niceselect.css');
wp_register_style('hamburger', get_template_directory_uri() .'/assets/css/hamburger.css');
wp_register_style('meanmenu', get_template_directory_uri() .'/assets/css/meanmenu.css');
wp_register_style('top_menu', get_template_directory_uri() .'/assets/css/top_menu.css');
wp_register_style('top_middle', get_template_directory_uri() .'/assets/css/top_middle.min.css');
wp_register_style('poket_main_style', get_template_directory_uri() .'/assets/css/main_style.min.css');
wp_register_style('twr_theme_color', get_template_directory_uri() .'/assets/css/twr_theme_color.min.css');
wp_register_style( 'poket_style', get_stylesheet_uri() );
wp_register_style('poket_responsive', get_template_directory_uri() .'/assets/css/responsive.min.css');
wp_enqueue_style( 'poket-fonts' );
wp_enqueue_style('bootstrap', get_template_directory_uri() .'/assets/css/bootstrap.min.css');
if ( !empty($poket_opt['twr_defaulth_menu_layout']) && $poket_opt['twr_defaulth_menu_layout']==16 || $twr_menu_header_style==16 ){
wp_enqueue_style( 'hamburger' );
}
wp_enqueue_style( 'venobox' );
wp_enqueue_style( 'slickcss' );
if ( !empty($poket_opt['poket_header_top_hide']) && $poket_opt['poket_header_top_hide']==true || $txbdm_header_topa==1 ){
wp_enqueue_style( 'top_menu' );
}
if ( !empty($poket_opt['poket_header_top_two_hide']) && $poket_opt['poket_header_top_two_hide']==true || $toptsst==1 ){
wp_enqueue_style( 'top_middle' );
}
/*
* Enqueueing JavaScript Files
*/
wp_enqueue_script( 'modernizr', get_template_directory_uri() . '/assets/js/vendor/modernizr-3.11.2.min.js', array(), '3.11.2', true );
wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/assets/js/bootstrap.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'meanmenu', get_template_directory_uri() . '/assets/js/jquery.meanmenu.min.js', array('jquery'), '3.3.5', true );
wp_register_script( 'headroom', get_template_directory_uri() . '/assets/js/headroom.js', array('jquery'), '3.3.5', true );
wp_register_script( 'slick.min', get_template_directory_uri() . '/assets/js/slick.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'theme-plugin', get_template_directory_uri() . '/assets/js/theme-pluginjs.js', array('jquery'), '3.2.4', true );
wp_enqueue_script( 'imagesloaded');
wp_register_script( 'niceselect', get_template_directory_uri() . '/assets/js/niceselect.js', array('jquery'), '3.3.5', true );
wp_register_script( 'owlcarousel', get_template_directory_uri() . '/assets/js/owl.carousel.min.js', array('jquery'), '3.3.5', true );
wp_enqueue_script( 'venobox', get_template_directory_uri() . '/venobox/venobox.min.js', array('jquery'), '3.2.4', true );
wp_enqueue_script( 'slickjs' );
if ( class_exists( 'WooCommerce' ) ) {
wp_register_style('woo_theme', get_template_directory_uri() .'/assets/css/woo_theme.min.css');
wp_enqueue_style( 'woo_theme' );
if ( is_shop() || is_tax( 'product_cat' ) || is_singular( 'product' ) || is_tax( 'product_tag' ) || is_checkout() || is_account_page() || is_checkout() || is_checkout()) {
wp_enqueue_style( 'woo_theme' );
}
if ( is_shop() || is_tax( 'product_cat' ) || is_tax( 'product_tag' ) ) {
wp_enqueue_style( 'niceselect' );
wp_enqueue_script( 'niceselect' );
}
}
/* headroom menu js */
if ( !empty($poket_opt['twr_defaulth_menu_layout']) && $poket_opt['twr_defaulth_menu_layout']==11 || $twr_menu_header_style==11 ){
wp_enqueue_script( 'headroom' );
}
/* main theme js */
wp_enqueue_script( 'poket-themes', get_template_directory_uri() . '/assets/js/theme.js', array('jquery'), '3.2.4', true );
wp_enqueue_style( 'meanmenu' );
wp_enqueue_style( 'poket_main_style' );
wp_enqueue_style( 'twr_theme_color' );
wp_enqueue_style( 'poket_style' );
wp_enqueue_style( 'poket_responsive' );
} /* rtl end */
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
}
add_action( 'wp_enqueue_scripts', 'poket_styles' );
/**
* poket widget js
*/
if(!function_exists('poket_media_scripts')){
function poket_media_scripts() {
wp_enqueue_media();
wp_enqueue_script('poket-uploader', get_template_directory_uri() .'/assets/js/twr_uploader.js', false, '', true );
}
}
add_action('admin_enqueue_scripts', 'poket_media_scripts');
/* Content word count */
if(!function_exists('poket_read_more')){
function poket_read_more($limit){
$content = explode(' ', get_the_content());
$count = array_slice($content, 0 , $limit);
echo implode (' ', $count);
}
}
/* Title word count */
if(!function_exists('the_title')){
function the_title($limit){
$title = explode(' ' , get_the_title());
$titles = array_slice($title , 0, $limit);
echo implode(' ', $titles);
}
}
/**
* Register widget area.
*/
if(!function_exists('poket_widgets_init')){
function poket_widgets_init() {
register_sidebar( array(
'name' => esc_html__( 'Blog Left Sidebar', 'poket' ),
'id' => 'sidebar-1',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'name' => esc_html__( 'Blog Right Sidebar', 'poket' ),
'id' => 'sidebar-2',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'name' => esc_html__( 'Page Left Sidebar', 'poket' ),
'id' => 'sidebar-3',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'name' => esc_html__( 'Page Right Sidebar', 'poket' ),
'id' => 'sidebar-4',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'name' => esc_html__( 'Shop Sidebar', 'poket' ),
'id' => 'sidebar_shop',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'name' => esc_html__( 'Popup Menu Sidebar', 'poket' ),
'id' => 'sidebar-pop',
'description' => esc_html__( 'Add widgets here.', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
/**
* Register Footer Sidebars
*/
register_sidebar( array(
'id' => 'twr-footer-1',
'name' => esc_html__( 'Footer widget 1', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'id' => 'twr-footer-2',
'name' => esc_html__( 'Footer widget 2', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'id' => 'twr-footer-3',
'name' => esc_html__( 'Footer widget 3', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
register_sidebar( array(
'id' => 'twr-footer-4',
'name' => esc_html__( 'Footer widget 4', 'poket' ),
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h2 class="widget-title">',
'after_title' => '</h2>',
) );
}
}
add_action( 'widgets_init', 'poket_widgets_init' );