'\THINKAI\Includes\Classes\Base', 'vc' => '\THINKAI\Includes\Classes\Visual_Composer', 'ajax' => '\THINKAI\Includes\Classes\Ajax', ); $dn = thinkai_dot( $all ); $class = ( $dn->get( $class ) ) ? $dn->get( $class ) : 'base'; if ( $dn->get( $class ) ) { if ( $instance ) { return new $dn->get( $class ); } else { return $dn->get( $classs ); } } else { exit( esc_html__( 'No class found', 'thinkai' ) ); } } /** * Use front-page.php when Front page displays is set to a static page. * * @since THINKAI 1.0 * * @param string $template front-page.php. * * @return string The template to be used: blank if is_home() is true (defaults to index.php), else $template. */ function thinkai_front_page_template( $template ) { return is_home() ? '' : $template; } add_filter( 'frontpage_template', 'thinkai_front_page_template' ); if ( ! function_exists( 'printr' ) ) { function printr( $arr ) { echo '
';
		print_r( $arr );
		echo '
'; exit; } } /** * [thinkai_template_load description] * * @param string $template [description] * @param array $args [description] * * @return [type] [description] */ function thinkai_template_load( $templ = '', $args = array() ) { $template = get_theme_file_path( $templ ); if ( file_exists( $template ) ) { extract( $args ); unset( $args ); include $template; } } /** * [thinkai_get_sidebars description] * * @param boolean $multi [description]. * * @return [type] [description] */ function thinkai_get_sidebars( $multi = false ) { global $wp_registered_sidebars; $sidebars = ! ( $wp_registered_sidebars ) ? get_option( 'wp_registered_sidebars' ) : $wp_registered_sidebars; if ( $multi ) { $data[] = array( 'value' => '', 'label' => '' ); } foreach ( (array) $sidebars as $sidebar ) { if ( $multi ) { $data[] = array( 'value' => thinkai_set( $sidebar, 'id' ), 'label' => thinkai_set( $sidebar, 'name' ) ); } else { $data[ thinkai_set( $sidebar, 'id' ) ] = thinkai_set( $sidebar, 'name' ); } } return $data; } add_action( 'tgmpa_register', 'thinkai_register_required_plugins' ); /** * [my_theme_register_required_plugins description] * * @return void [description] */ function thinkai_register_required_plugins() { $plugins = array( array( 'name' => esc_html__( 'Thinkai Plugin', 'thinkai' ), 'slug' => 'thinkai-plugin', 'source' => get_template_directory() . '/includes/thirdparty/plugins/thinkai-plugin.zip', 'required' => true, 'force_deactivation' => false, 'file_path' => ABSPATH . 'wp-content/plugins/thinkai-plugin/thinkai-plugin.php', ), array( 'name' => esc_html__('Contact Form 7', 'thinkai'), 'slug' => 'contact-form-7', 'required' => true, ), array( 'name' => esc_html__( 'Elementor', 'thinkai' ), 'slug' => 'elementor', 'required' => true, ), array( 'name' => esc_html__('Woocommerce', 'thinkai'), 'slug' => 'woocommerce', 'required' => true, ), array( 'name' => esc_html__('Mailchimp for WordPress', 'thinkai'), 'slug' => 'mailchimp-for-wp', 'required' => true, ), ); /*Change this to your theme text domain, used for internationalising strings.*/ $theme_text_domain = 'thinkai'; $config = array( 'id' => 'tgmpa', 'default_path' => '', 'menu' => 'tgmpa-install-plugins', 'parent_slug' => 'themes.php', 'capability' => 'edit_theme_options', 'has_notices' => true, 'dismissable' => true, 'dismiss_msg' => '', 'is_automatic' => false, 'message' => '', ); THINKAI\Includes\Library\tgmpa( $plugins, $config ); } /** * [thinkai_logo description] * * @return [type] [description] */ function thinkai_logo( $logo_type, $image_logo, $logo_dimension, $logo_text, $logo_typography ) { if ( $logo_type === 'text' ) { $logo = $logo_text ? $logo_text : '' . esc_html__( 'THINKAI', 'thinkai' ) . ''; $logo_style = $logo_typography; $logo_the_style = ( thinkai_set( $logo_style, 'font-size' ) ) ? 'font-size:' . thinkai_set( $logo_style, 'font-size' ) . ';' : ''; $logo_the_style .= ( thinkai_set( $logo_style, 'font-family' ) ) ? "font-family:'" . thinkai_set( $logo_style, 'font-family' ) . "';" : ''; $logo_the_style .= ( thinkai_set( $logo_style, 'font-weight' ) ) ? 'font-weight:' . thinkai_set( $logo_style, 'font-weight' ) . ';' : ''; $logo_the_style .= ( thinkai_set( $logo_style, 'line-height' ) ) ? 'line-height:' . thinkai_set( $logo_style, 'line-height' ) . ';' : ''; $logo_the_style .= ( thinkai_set( $logo_style, 'color' ) ) ? 'color:' . thinkai_set( $logo_style, 'color' ) . ';' : ''; $logo_the_style .= ( thinkai_set( $logo_style, 'letter-spacing' ) ) ? 'letter-spacing:' . thinkai_set( $logo_style, 'letter-spacing' ) . ';' : ''; $logo_output = '' . wp_kses( $logo, true ) . ''; } else { $logo_the_style = ''; $logo_image_style = ''; $logo_image_style .= thinkai_set( $logo_dimension, 'width' ) ? ' width:' . thinkai_set( $logo_dimension, 'width' ) . ';' : ''; $logo_image_style .= thinkai_set( $logo_dimension, 'height' ) ? ' height:' . ( thinkai_set( $logo_dimension, 'height' ) ) . ';' : ''; if ( thinkai_set( $image_logo, 'url' ) ) { $logo_output = ''.esc_attr__('logo', 'thinkai').''; } else { $logo_output = ''.esc_attr__('logo', 'thinkai').''; } } return $logo_output; } /** * [thinkai_twitter description] * * @param string $post_type [description]. * @param boolean $flip [description]. * * @return [type] [description] */ function thinkai_twitter( $args = array() ) { $selector = thinkai_set( $args, 'selector' ); $data = thinkai_set( $args, 'data' ); $count = thinkai_set( $args, 'count', 3 ); $screen = thinkai_set( $args, 'screen_name', 'WordPress' ); $settings = array( 'count' => $count, 'screen_name' => $screen ); ob_start(); ?> jQuery(document).ready(function ($) { $('').tweets(); }); max_num_pages <= 1 ) return; $paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1; $max = intval( $wp_query->max_num_pages ); /** Add current page to the array */ if ( $paged >= 1 ) $links[] = $paged; /** Add the pages around the current page to the array */ if ( $paged >= 3 ) { $links[] = $paged - 1; $links[] = $paged - 2; } if ( ( $paged + 2 ) <= $max ) { $links[] = $paged + 2; $links[] = $paged + 1; } echo '' . "\n"; } function thinkai_the_breadcrumb() { global $wp_query; $queried_object = get_queried_object(); $breadcrumb = ''; $delimiter = ' / '; $before = ''; if ( ! is_front_page() ) { $breadcrumb .= $before . '' . esc_html__( 'Home', 'thinkai' ) . '  ' . $after; /** If category or single post */ if ( is_category() ) { $cat_obj = $wp_query->get_queried_object(); $this_category = get_category( $cat_obj->term_id ); if ( $this_category->parent != 0 ) { $parent_category = get_category( $this_category->parent ); $breadcrumb .= get_category_parents( $parent_category, true, $delimiter ); } $breadcrumb .= $before . '' . single_cat_title( '', false ) . '' . $after; } elseif ( $wp_query->is_posts_page ) { $breadcrumb .= $before . $queried_object->post_title . $after; } elseif ( is_tax() ) { $breadcrumb .= $before . '' . $queried_object->name . '' . $after; } elseif ( is_page() ) /** If WP pages */ { global $post; if ( $post->post_parent ) { $anc = get_post_ancestors( $post->ID ); foreach ( $anc as $ancestor ) { $breadcrumb .= $before . '' . get_the_title( $ancestor ) . '  ' . $after; } $breadcrumb .= $before . '' . get_the_title( $post->ID ) . '' . $after; } else { $breadcrumb .= $before . '' . get_the_title() . '' . $after; } } elseif ( is_singular() ) { if ( $category = wp_get_object_terms( get_the_ID(), array( 'category', 'location', 'tax_feature' ) ) ) { if ( ! is_wp_error( $category ) ) { $breadcrumb .= $before . '' . thinkai_set( thinkai_set( $category, '0' ), 'name' ) . ' ' . $after; $breadcrumb .= $before . '' . get_the_title() . '' . $after; } else { $breadcrumb .= $before . '' . get_the_title() . '' . $after; } } else { $breadcrumb .= $before . '' . get_the_title() . '' . $after; } } elseif ( is_tag() ) { $breadcrumb .= $before . '' . single_tag_title( '', false ) . '' . $after; } /**If tag template*/ elseif ( is_day() ) { $breadcrumb .= $before . '' . esc_html__( 'Archive for ', 'thinkai' ) . get_the_time( 'F jS, Y' ) . '' . $after; } /** If daily Archives */ elseif ( is_month() ) { $breadcrumb .= $before . ''. get_the_time( 'F' ) . '  ' . $after; $breadcrumb .= $before . ''. get_the_time( 'Y' ) . '' . $after; } /* If montly Archives / elseif ( is_year() ) { $breadcrumb .= $before . '' . esc_html__( 'Archive for ', 'thinkai' ) . get_the_time( 'Y' ) . '' . $after; } /** If year Archives */ elseif ( is_author() ) { $breadcrumb .= $before . '' . esc_html__( 'Archive for ', 'thinkai' ) . get_the_author() . '' . $after; } /** If author Archives */ elseif ( is_search() ) { $breadcrumb .= $before . '' . esc_html__( 'Search Results for ', 'thinkai' ) . get_search_query() . '' . $after; } /** if search template */ elseif ( is_404() ) { $breadcrumb .= $before . '' . esc_html__( '404 - Not Found', 'thinkai' ) . '' . $after; /** if search template */ } elseif ( is_post_type_archive( 'product' ) ) { $shop_page_id = wc_get_page_id( 'shop' ); if ( get_option( 'page_on_front' ) !== $shop_page_id ) { $shop_page = get_post( $shop_page_id ); $_name = wc_get_page_id( 'shop' ) ? get_the_title( wc_get_page_id( 'shop' ) ) : ''; if ( ! $_name ) { $product_post_type = get_post_type_object( 'product' ); $_name = $product_post_type->labels->singular_name; } if ( is_search() ) { $breadcrumb .= $before . '' . $_name . '' . $delimiter . esc_html__( 'Search results for “', 'thinkai' ) . get_search_query() . '”' . $after; } elseif ( is_paged() ) { $breadcrumb .= $before . '' . $_name . '' . $after; } else { $breadcrumb .= $before . $_name . $after; } } } else { $breadcrumb .= $before . '' . get_the_title() . '' . $after; } /** Default value */ } return $breadcrumb; } function thinkai_the_title( $template ) { global $wp_query; $queried_object = get_queried_object(); $title = ''; /** If category or single post */ if ( $template == 'category' || $template == 'tag' || $template == 'galleryCat' ) { $current_obj = $wp_query->get_queried_object(); $this_category = get_category( $current_obj->term_id ); $title .= $current_obj->name; } elseif ( is_home() ) { $title .= esc_html__( 'Home Page ', 'thinkai' ); } elseif ( $template == 'page' || $template == 'post' || $template == 'VC' || $template == 'blog' || $template == 'courseDetail' || $template == 'team' || $template == 'services' || $template == 'events' || $template == 'gallery' || $template == 'shop' || $template == 'product' ) { $title .= get_the_title(); } elseif ( $template == 'archive' and is_day() ) { $title .= esc_html__( 'Archive for ', 'thinkai' ) . get_the_time( 'F jS, Y' ); } elseif ( $template == 'archive' and is_month() ) { $title .= esc_html__( 'Archive for ', 'thinkai' ) . get_the_time( 'F, Y' ); } elseif ( $template == 'archive' and is_year() ) { $title .= esc_html__( 'Archive for ', 'thinkai' ) . get_the_time( 'Y' ); } elseif ( $template == 'author' ) { $title .= esc_html__( 'Archive for ', 'thinkai' ) . get_the_author(); } elseif ( $template == 'search' ) { $title .= esc_html__( 'Search Results for ', 'thinkai' ) . '"' . get_search_query() . '"'; } elseif ( $template == '404' ) { $title .= esc_html__( '404 Page Not Found', 'thinkai' ); } return $title; } /** * [thinkai_list_comments description] * * @param [type] $comment [description]. * @param [type] $args [description]. * @param [type] $depth [description]. * * @return void [description] */ function thinkai_list_comments( $comment, $args, $depth ) { $allowed_html = wp_kses_allowed_html( 'post' ); wp_enqueue_script( 'comment-reply' ); $GLOBALS['comment'] = $comment; $like = (int) get_comment_meta( $comment->comment_ID, 'like_it', true ); ?>
id="comment-">

,

'' . esc_html( 'Reply', 'thinkai' ).'', 'depth' => $depth, 'max_depth' => $args['max_depth'], ) )); ?>
exists() ? $user->display_name : ''; $args = wp_parse_args( $args ); if ( ! isset( $args['format'] ) ) { $args['format'] = current_theme_supports( 'html5', 'comment-form' ) ? 'html5' : 'xhtml'; } $req = get_option( 'require_name_email' ); $aria_req = ( $req ? " aria-required='true'" : '' ); $html_req = ( $req ? " required='required'" : '' ); $html5 = 'html5' === $args['format']; $comment_field_class = is_user_logged_in() ? 'col-sm-12' : 'col-sm-6'; $fields = array( 'author' => '
', 'email' => '
', ); $required_text = sprintf( ' ' . esc_html__( '%s', 'thinkai' ), '' ); /** * Filters the default comment form fields. * * @since 3.0.0 * * @param array $fields The default comment fields. */ $fields = apply_filters( 'comment_form_default_fields', $fields ); $defaults = array( 'fields' => $fields, 'comment_field' => '
', /** This filter is documented in wp-includes/link-template.php */ 'must_log_in' => '
', /** This filter is documented in wp-includes/link-template.php */ 'logged_in_as' => '

' . sprintf( /* translators: 1: edit user link, 2: accessibility text, 3: user name, 4: logout URL */ '' . esc_html__( 'Logged in as', 'thinkai' ) . ' %3$s. ' . esc_html__( 'Log out?', 'thinkai' ) . '', get_edit_user_link(), /* translators: %s: user name */ esc_attr( sprintf( esc_html__( 'Logged in as %s. Edit your profile.', 'thinkai' ), $user_identity ) ), $user_identity, wp_logout_url( apply_filters( 'the_permalink', get_permalink( $post_id ) ) ) ) . '

', 'comment_notes_before' => '', 'comment_notes_after' => '', 'action' => site_url( '/wp-comments-post.php' ), 'id_form' => 'add-comment-form', 'id_submit' => 'submit', 'class_form' => 'te-custom__form', 'class_submit' => 'submit', 'name_submit' => 'submit', 'title_reply' => esc_html__( 'Leave A Comment', 'thinkai' ), 'title_reply_to' => esc_html__( 'Leave a Reply to %s', 'thinkai' ), 'title_reply_before' => '

', 'title_reply_after' => '

', 'cancel_reply_before' => ' ', 'cancel_reply_after' => '', 'cancel_reply_link' => esc_html__( 'Cancel reply', 'thinkai' ), 'label_submit' => esc_html__( 'Post a Comment', 'thinkai' ), 'submit_button' => '', 'submit_field' => '
%1$s %2$s
', 'format' => 'xhtml', ); /** * Filters the comment form default arguments. * Use {@see 'comment_form_default_fields'} to filter the comment fields. * * @since 3.0.0 * * @param array $defaults The default comment form arguments. */ $args = wp_parse_args( $args, apply_filters( 'comment_form_defaults', $defaults ) ); $args = array_merge( $defaults, $args ); if ( comments_open( $post_id ) ) : ?>
>
$args['comment_field'] ); /** * Filters the comment form fields, including the textarea. * * @since 4.4.0 * * @param array $comment_fields The comment fields. */ $comment_fields = apply_filters( 'comment_form_fields', $comment_fields ); $comment_field_keys = array_diff( array_keys( $comment_fields ), array( 'comment' ) ); $first_field = reset( $comment_field_keys ); $last_field = end( $comment_field_keys ); ?> $field ) { if ( 'comment' === $name ) { /** * Filters the content of the comment textarea field for display. * * @since 3.0.0 * * @param string $args_comment_field The content of the comment textarea field. */ echo apply_filters( 'comment_form_field_comment', $field ); echo wp_kses( $args['comment_notes_after'], $allowed_html ); } elseif ( ! is_user_logged_in() ) { if ( $first_field === $name ) { /** * Fires before the comment fields in the comment form, excluding the textarea. * * @since 3.0.0 */ do_action( 'comment_form_before_fields' ); } /** * Filters a comment form field for display. * The dynamic portion of the filter hook, `$name`, refers to the name * of the comment form field. Such as 'author', 'email', or 'url'. * * @since 3.0.0 * * @param string $field The HTML-formatted output of the comment form field. */ echo apply_filters( "comment_form_field_{$name}", $field ) . "\n"; if ( $last_field === $name ) { /** * Fires after the comment fields in the comment form, excluding the textarea. * * @since 3.0.0 */ do_action( 'comment_form_after_fields' ); } } } ?> tag. * * @since 1.5.0 * * @param int $post_id The post ID. */ do_action( 'comment_form', $post_id ); ?>
0 ) ? ',' : ''; $custom_style .= $terminated . 'src:url("'.$file_url.'") format("'.$format.'")'; $count++; } } $custom_style .= ';}'; } return $custom_style; } /** * Add Flaticon existing font library * * @since 0.0.1 */ if( ! function_exists('thinkai_el_flat_icon') ) { function thinkai_el_flat_icon($args) { $args['icomoon'] = [ 'name' => 'icomoon', 'label' => esc_html__( 'Icomoon Icons', 'thinkai' ), 'url' => get_template_directory_uri() . '/assets/vendors/thm-icons/style.css', 'enqueue' => [ get_template_directory_uri() . '/assets/vendors/thm-icons/style.css' ], 'prefix' => 'icon ', 'labelIcon' => 'icon-packs', 'ver' => '1.0', 'fetchJson' => get_template_directory_uri() . '/assets/js/icomoon.js', 'native' => true, ]; return $args; } } add_filter( 'elementor/icons_manager/native', 'thinkai_el_flat_icon' ); function thinkai_trim( $text, $len, $more = null ) { $text = strip_shortcodes( $text ); $text = apply_filters( 'the_content', $text ); $text = str_replace(']]>', ']]>', $text); $excerpt_length = apply_filters( 'excerpt_length', $len ); $excerpt_more = apply_filters( 'excerpt_more', ' ' . '[…]' ); $excerpt_more = ( $more ) ? $more : ' ...'; $text = wp_trim_words( $text, $excerpt_length, $excerpt_more ); return $text; }