online_tutor_add( 'WPTRT\\Customize\\Section', get_theme_file_path( 'vendor/wptrt/customize-section-button/src' ) );
$Online_Tutor_Loader->online_tutor_register();
if ( ! function_exists( 'online_tutor_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 online_tutor_setup() {
/*
* Enable support for Post Formats.
*
* See: https://codex.wordpress.org/Post_Formats
*/
add_theme_support( 'post-formats', array('image','video','gallery','audio',) );
add_theme_support( 'woocommerce' );
add_theme_support( "responsive-embeds" );
add_theme_support( "align-wide" );
add_theme_support( "wp-block-styles" );
// Add default posts and comments RSS feed links to head.
add_theme_support( 'automatic-feed-links' );
/*
* Let WordPress manage the document title.
* By adding theme support, we declare that this theme does not use a
* hard-coded
tag in the document head, and expect WordPress to
* provide it for us.
*/
add_theme_support( 'title-tag' );
/*
* Enable support for Post Thumbnails on posts and pages.
*
* @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/
*/
add_theme_support( 'post-thumbnails' );
add_image_size('online-tutor-featured-header-image', 2000, 660, true);
// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => esc_html__( 'Primary','online-tutor' ),
'footer'=> esc_html__( 'Footer Menu','online-tutor' ),
) );
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
) );
// Set up the WordPress core custom background feature.
add_theme_support( 'custom-background', apply_filters( 'online_tutor_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
// Add theme support for selective refresh for widgets.
add_theme_support( 'customize-selective-refresh-widgets' );
/**
* Add support for core custom logo.
*
* @link https://codex.wordpress.org/Theme_Logo
*/
add_theme_support( 'custom-logo', array(
'height' => 50,
'width' => 50,
'flex-width' => true,
) );
add_editor_style( array( '/editor-style.css' ) );
}
endif;
add_action( 'after_setup_theme', 'online_tutor_setup' );
/**
* 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 online_tutor_content_width() {
$GLOBALS['content_width'] = apply_filters( 'online_tutor_content_width', 1170 );
}
add_action( 'after_setup_theme', 'online_tutor_content_width', 0 );
/**
* Register widget area.
*
* @link https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar
*/
function online_tutor_widgets_init() {
register_sidebar( array(
'name' => esc_html__( 'Sidebar', 'online-tutor' ),
'id' => 'sidebar',
'description' => esc_html__( 'Add widgets here.', 'online-tutor' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Front Page Sidebar', 'online-tutor' ),
'id' => 'front-sidebar',
'description' => esc_html__( 'Add widgets here.', 'online-tutor' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Woocommerce Shop Page Sidebar', 'online-tutor' ),
'id' => 'woocommerce-shop-page-sidebar',
'description' => '',
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Woocommerce Single Product Page Sidebar', 'online-tutor' ),
'id' => 'woocommerce-single-product-page-sidebar',
'description' => '',
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Footer Column 1', 'online-tutor' ),
'id' => 'online-tutor-footer1',
'description' => '',
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Footer Column 2', 'online-tutor' ),
'id' => 'online-tutor-footer2',
'description' => '',
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => esc_html__( 'Footer Column 3', 'online-tutor' ),
'id' => 'online-tutor-footer3',
'description' => '',
'before_widget' => '',
'before_title' => '',
) );
}
add_action( 'widgets_init', 'online_tutor_widgets_init' );
/**
* Enqueue scripts and styles.
*/
function online_tutor_scripts() {
require_once get_theme_file_path( 'inc/wptt-webfont-loader.php' );
wp_enqueue_style(
'Montserrat',
wptt_get_webfont_url( 'https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap' ),
array(),
'1.0'
);
wp_enqueue_style(
'Poppins',
wptt_get_webfont_url( 'https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap' ),
array(),
'1.0'
);
wp_enqueue_style(
'Open Sans',
wptt_get_webfont_url( 'https://fonts.googleapis.com/css2?family=Open Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap' ),
array(),
'1.0'
);
wp_enqueue_style( 'online-tutor-block-editor-style', get_theme_file_uri('/assets/css/block-editor-style.css') );
// load bootstrap css
wp_enqueue_style( 'bootstrap-css',get_template_directory_uri() . '/assets/css/bootstrap.css');
wp_enqueue_style( 'owl.carousel-css',get_template_directory_uri() . '/assets/css/owl.carousel.css');
wp_enqueue_style( 'online-tutor-style', get_stylesheet_uri() );
require get_parent_theme_file_path( '/custom-option.php' );
wp_add_inline_style( 'online-tutor-style',$online_tutor_theme_css );
wp_style_add_data('online-tutor-basic-style', 'rtl', 'replace');
// fontawesome
wp_enqueue_style( 'fontawesome-style',get_template_directory_uri().'/assets/css/fontawesome/css/all.css' );
wp_enqueue_script('online-tutor-theme-js',get_template_directory_uri() . '/assets/js/theme-script.js', array('jquery'), '', true );
wp_enqueue_script('owl.carousel-js',get_template_directory_uri() . '/assets/js/owl.carousel.js', array('jquery'), '', true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
add_action( 'wp_enqueue_scripts', 'online_tutor_scripts' );
/**
* Custom template tags for this theme.
*/
require get_template_directory() . '/inc/template-tags.php';
/**
* Implement the Custom Header feature.
*/
require get_template_directory() . '/inc/custom-header.php';
/**
* Functions which enhance the theme by hooking into WordPress.
*/
require get_template_directory() . '/inc/template-functions.php';
/**
* Customizer additions.
*/
require get_template_directory() . '/inc/customizer.php';
/**
* Enqueue theme color style.
*/
function online_tutor_theme_color() {
$online_tutor_theme_color_css = '';
$online_tutor_theme_color = get_theme_mod('online_tutor_theme_color');
$online_tutor_theme_color_2 = get_theme_mod('online_tutor_theme_color_2');
$online_tutor_preloader_bg_color = get_theme_mod('online_tutor_preloader_bg_color');
$online_tutor_preloader_dot_1_color = get_theme_mod('online_tutor_preloader_dot_1_color');
$online_tutor_preloader_dot_2_color = get_theme_mod('online_tutor_preloader_dot_2_color');
$online_tutor_logo_max_height = get_theme_mod('online_tutor_logo_max_height');
if(get_theme_mod('online_tutor_logo_max_height') == '') {
$online_tutor_logo_max_height = '24';
}
if(get_theme_mod('online_tutor_preloader_bg_color') == '') {
$online_tutor_preloader_bg_color = '';
}
if(get_theme_mod('online_tutor_preloader_dot_1_color') == '') {
$online_tutor_preloader_dot_1_color = '';
}
if(get_theme_mod('online_tutor_preloader_dot_2_color') == '') {
$online_tutor_preloader_dot_2_color = '';
}
$online_tutor_theme_color_css = '
.custom-logo-link img{
max-height: '.esc_attr($online_tutor_logo_max_height).'px;
}
.top_header p a,.button-box a.box1,.button-box a.box2:hover,.slider-box-btn a,#button,.btn-primary,.box h5,.box:hover:before,#colophon,.social-link i:hover,.sidebar input[type="submit"], .sidebar button[type="submit"],.meta-info-box,.comment-respond input#submit,.post-navigation .nav-previous a:hover,.main-navigation .sub-menu > li > a, .main-navigation .sub-menu > li > .menu-item-link-return,.sidebar h5,.woocommerce .widget_shopping_cart .buttons a, .woocommerce.widget_shopping_cart .buttons a,.pro-button a, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,.woocommerce-account .woocommerce-MyAccount-navigation ul li,.woocommerce .woocommerce-ordering select,.toggle-nav i,.woocommerce a.added_to_cart,.sidebar .tagcloud a:hover {
background: '.esc_attr($online_tutor_theme_color).';
}
.main-navigation .sub-menu > li > a:hover, .main-navigation .sub-menu > li > a:focus {
background: '.esc_attr($online_tutor_theme_color).'!important;
}
a,.main-navigation .menu > li > a:hover,.top_header span,a.btn-text,.widget a:hover,.sidebar ul li a:hover, .main-navigation .sub-menu > li > .menu-item-link-return:hover,p.price, .woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price,.woocommerce ul.products li.product .star-rating, .woocommerce .star-rating,.woocommerce-message::before, .woocommerce-info::before {
color: '.esc_attr($online_tutor_theme_color).';
}
.btn-primary,.post-navigation .nav-previous a:hover,.woocommerce-message, .woocommerce-info,.main-navigation .sub-menu > li{
border-color: '.esc_attr($online_tutor_theme_color).';
}
@media screen and (max-width:1000px){
.sidenav #site-navigation {
background: '.esc_attr($online_tutor_theme_color).';
}
}
.top_header,.searchbox h3,.slider-box-btn a:hover,.btn-primary:hover,#button:hover,.searchbox form.search-from,.searchbox,.woocommerce a.button:hover,.woocommerce-account .woocommerce-MyAccount-navigation ul li:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover,.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce a.button.alt:hover,.woocommerce a.added_to_cart:hover,.sidenav .closebtn{
background: '.esc_attr($online_tutor_theme_color_2).';
}
h1,h2,h3,h4,h5,h6,a:hover,.button-box a.box2, .top_header p a:hover, .button-box a.box1:hover,.top_header i{
color: '.esc_attr($online_tutor_theme_color_2).';
}
.loading{
background-color: '.esc_attr($online_tutor_preloader_bg_color).';
}
@keyframes loading {
0%,
100% {
transform: translatey(-2.5rem);
background-color: '.esc_attr($online_tutor_preloader_dot_1_color).';
}
50% {
transform: translatey(2.5rem);
background-color: '.esc_attr($online_tutor_preloader_dot_2_color).';
}
}
';
wp_add_inline_style( 'online-tutor-style',$online_tutor_theme_color_css );
}
add_action( 'wp_enqueue_scripts', 'online_tutor_theme_color' );
/**
* Enqueue S Header.
*/
function online_tutor_sticky_header() {
$online_tutor_sticky_header = get_theme_mod('online_tutor_sticky_header');
$online_tutor_custom_style= "";
if($online_tutor_sticky_header != true){
$online_tutor_custom_style .='.stick_header{';
$online_tutor_custom_style .='position: static;';
$online_tutor_custom_style .='}';
}
wp_add_inline_style( 'online-tutor-style',$online_tutor_custom_style );
}
add_action( 'wp_enqueue_scripts', 'online_tutor_sticky_header' );
/*radio button sanitization*/
function online_tutor_sanitize_choices( $input, $setting ) {
global $wp_customize;
$control = $wp_customize->get_control( $setting->id );
if ( array_key_exists( $input, $control->choices ) ) {
return $input;
} else {
return $setting->default;
}
}
/*dropdown page sanitization*/
function online_tutor_sanitize_dropdown_pages( $page_id, $setting ) {
$page_id = absint( $page_id );
return ( 'publish' == get_post_status( $page_id ) ? $page_id : $setting->default );
}
function online_tutor_sanitize_select( $input, $setting ){
$input = sanitize_key($input);
$choices = $setting->manager->get_control( $setting->id )->choices;
return ( array_key_exists( $input, $choices ) ? $input : $setting->default );
}
//Float
function online_tutor_sanitize_float( $input ) {
return filter_var($input, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
}
function online_tutor_sanitize_phone_number( $phone ) {
return preg_replace( '/[^\d+]/', '', $phone );
}
function online_tutor_sanitize_checkbox( $input ) {
// Boolean check
return ( ( isset( $input ) && true == $input ) ? true : false );
}
function online_tutor_gt_get_post_view() {
$online_tutor_count = get_post_meta( get_the_ID(), 'post_views_count', true );
return "$online_tutor_count views";
}
function online_tutor_sanitize_number_absint( $number, $setting ) {
// Ensure $number is an absolute integer (whole number, zero or greater).
$number = absint( $number );
// If the input is an absolute integer, return it; otherwise, return the default
return ( $number ? $number : $setting->default );
}
// Change number or products per row to 3
add_filter('loop_shop_columns', 'online_tutor_loop_columns');
if (!function_exists('online_tutor_loop_columns')) {
function online_tutor_loop_columns() {
$columns = get_theme_mod( 'online_tutor_products_per_row', 3 );
return $columns; // 3 products per row
}
}
//Change number of products that are displayed per page (shop page)
add_filter( 'loop_shop_per_page', 'online_tutor_shop_per_page', 9 );
function online_tutor_shop_per_page( $cols ) {
$cols = get_theme_mod( 'online_tutor_product_per_page', 9 );
return $cols;
}
function online_tutor_gt_set_post_view() {
$key = 'post_views_count';
$post_id = get_the_ID();
$online_tutor_count = (int) get_post_meta( $post_id, $key, true );
$online_tutor_count++;
update_post_meta( $post_id, $key, $online_tutor_count );
}
function online_tutor_gt_posts_column_views( $columns ) {
$columns['post_views'] = 'Views';
return $columns;
}
function online_tutor_gt_posts_custom_column_views( $column ) {
if ( $column === 'post_views') {
echo esc_html(online_tutor_gt_get_post_view());
}
}
add_filter( 'manage_posts_columns', 'online_tutor_gt_posts_column_views' );
add_action( 'manage_posts_custom_column', 'online_tutor_gt_posts_custom_column_views' );
/**
* Get CSS
*/
function online_tutor_getpage_css($hook) {
if ( 'appearance_page_online-tutor-info' != $hook ) {
return;
}
wp_enqueue_style( 'online-tutor-demo-style', get_template_directory_uri() . '/assets/css/demo.css' );
}
add_action( 'admin_enqueue_scripts', 'online_tutor_getpage_css' );
if ( ! defined( 'ONLINE_TUTOR_CONTACT_SUPPORT' ) ) {
define('ONLINE_TUTOR_CONTACT_SUPPORT',__('https://wordpress.org/support/theme/online-tutor','online-tutor'));
}
if ( ! defined( 'ONLINE_TUTOR_REVIEW' ) ) {
define('ONLINE_TUTOR_REVIEW',__('https://wordpress.org/support/theme/online-tutor/reviews/#new-post','online-tutor'));
}
if ( ! defined( 'ONLINE_TUTOR_LIVE_DEMO' ) ) {
define('ONLINE_TUTOR_LIVE_DEMO',__('https://www.themagnifico.net/demo/online-tutor/','online-tutor'));
}
if ( ! defined( 'ONLINE_TUTOR_GET_PREMIUM_PRO' ) ) {
define('ONLINE_TUTOR_GET_PREMIUM_PRO',__('https://www.themagnifico.net/themes/online-tutor-wordpress-theme/','online-tutor'));
}
if ( ! defined( 'ONLINE_TUTOR_PRO_DOC' ) ) {
define('ONLINE_TUTOR_PRO_DOC',__('https://www.themagnifico.net/eard/wathiqa/online-tutor-pro-doc/','online-tutor'));
}
add_action('admin_menu', 'online_tutor_themepage');
function online_tutor_themepage(){
$online_tutor_theme_info = add_theme_page( __('Theme Options','online-tutor'), __('Theme Options','online-tutor'), 'manage_options', 'online-tutor-info.php', 'online_tutor_info_page' );
}
function online_tutor_info_page() {
$online_tutor_user = wp_get_current_user();
$online_tutor_theme = wp_get_theme();
?>