automobile_mechanic_add( 'WPTRT\\Customize\\Section', get_theme_file_path( 'vendor/wptrt/customize-section-button/src' ) );
$Automobile_Mechanic_Loader->automobile_mechanic_register();
function automobile_mechanic_setup() {
load_theme_textdomain( 'automobile-mechanic', get_template_directory() . '/languages' );
add_theme_support( 'automatic-feed-links' );
add_theme_support( 'title-tag' );
add_theme_support( 'responsive-embeds' );
add_theme_support( 'html5', array( 'comment-list', 'search-form', 'comment-form', ) );
add_theme_support( 'woocommerce' );
add_theme_support( 'post-thumbnails' );
add_theme_support( 'custom-background', $defaults = array(
'default-color' => '',
'default-image' => '',
'default-repeat' => '',
'default-position-x' => '',
'default-attachment' => '',
'wp-head-callback' => '_custom_background_cb',
'admin-head-callback' => '',
'admin-preview-callback' => ''
));
$GLOBALS['content_width'] = 525;
register_nav_menus( array(
'primary' => __( 'Primary Menu', 'automobile-mechanic' ),
) );
// Add theme support for Custom Logo.
add_theme_support( 'custom-logo', array(
'width' => 250,
'height' => 250,
'flex-width' => true,
) );
// Add theme support for selective refresh for widgets.
add_theme_support( 'customize-selective-refresh-widgets' );
/*
* This theme styles the visual editor to resemble the theme style,
* specifically font, colors, and column width.
*/
add_editor_style( array( 'assets/css/editor-style.css' ) );
}
add_action( 'after_setup_theme', 'automobile_mechanic_setup' );
function automobile_mechanic_widgets_init() {
register_sidebar( array(
'name' => __( 'Blog Sidebar', 'automobile-mechanic' ),
'id' => 'sidebar-1',
'description' => __( 'Add widgets here to appear in your sidebar on blog posts and archive pages.', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '
',
) );
register_sidebar( array(
'name' => __( 'Sidebar 2', 'automobile-mechanic' ),
'id' => 'sidebar-2',
'description' => __( 'Add widgets here to appear in your pages and posts', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Sidebar 3', 'automobile-mechanic' ),
'id' => 'sidebar-3',
'description' => __( 'Add widgets here to appear in your pages and posts', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer 1', 'automobile-mechanic' ),
'id' => 'footer-1',
'description' => __( 'Add widgets here to appear in your footer.', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer 2', 'automobile-mechanic' ),
'id' => 'footer-2',
'description' => __( 'Add widgets here to appear in your footer.', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer 3', 'automobile-mechanic' ),
'id' => 'footer-3',
'description' => __( 'Add widgets here to appear in your footer.', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
register_sidebar( array(
'name' => __( 'Footer 4', 'automobile-mechanic' ),
'id' => 'footer-4',
'description' => __( 'Add widgets here to appear in your footer.', 'automobile-mechanic' ),
'before_widget' => '',
'before_title' => '',
) );
}
add_action( 'widgets_init', 'automobile_mechanic_widgets_init' );
function automobile_mechanic_fonts_url(){
$font_families = array(
'Poppins: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'
);
$fonts_url = add_query_arg( array(
'family' => implode( '&family=', $font_families ),
'display' => 'swap',
), 'https://fonts.googleapis.com/css2' );
$contents = wptt_get_webfont_url( esc_url_raw( $fonts_url ) );
return $contents;
}
//Enqueue scripts and styles.
function automobile_mechanic_scripts() {
// Add custom fonts, used in the main stylesheet.
wp_enqueue_style( 'automobile-mechanic-fonts', automobile_mechanic_fonts_url(), array(), null );
//Bootstarp
wp_enqueue_style( 'bootstrap-css', get_template_directory_uri().'/assets/css/bootstrap.css' );
wp_enqueue_style( 'owlcarousel-css', get_template_directory_uri().'/assets/css/owl.carousel.css' );
wp_enqueue_style( 'owl-carousel-min-css', get_template_directory_uri().'/assets/css/owl.carousel.min.css' );
wp_enqueue_style( 'owl-theme-css', get_template_directory_uri().'/assets/css/owl.theme.css' );
wp_enqueue_style( 'owl-theme-default-min-css', get_template_directory_uri().'/assets/css/owl.theme.default.min.css' );
// Theme stylesheet.
wp_enqueue_style( 'automobile-mechanic-basic-style', get_stylesheet_uri() );
// Load the Internet Explorer 9 specific stylesheet, to fix display issues in the Customizer.
if ( is_customize_preview() ) {
wp_enqueue_style( 'automobile-mechanic-ie9', get_theme_file_uri( '/assets/css/ie9.css' ), array( 'automobile-mechanic-style' ), '1.0' );
wp_style_add_data( 'automobile-mechanic-ie9', 'conditional', 'IE 9' );
}
// Load the Internet Explorer 8 specific stylesheet.
wp_enqueue_style( 'automobile-mechanic-ie8', get_theme_file_uri( '/assets/css/ie8.css' ), array( 'automobile-mechanic-style' ), '1.0' );
wp_style_add_data( 'automobile-mechanic-ie8', 'conditional', 'lt IE 9' );
//font-awesome
wp_enqueue_style( 'font-awesome-css', get_template_directory_uri().'/assets/css/fontawesome-all.css' );
wp_enqueue_style('custom-animations', get_template_directory_uri() . '/assets/css/animations.css');
require get_parent_theme_file_path( '/lz-custom-style.php' );
wp_add_inline_style( 'automobile-mechanic-basic-style',$automobile_mechanic_custom_style );
wp_enqueue_script( 'automobile-mechanic-navigation-jquery', get_theme_file_uri( '/assets/js/navigation.js' ), array( 'jquery' ), '2.1.2', true );
wp_enqueue_script( 'bootstrap-js', get_template_directory_uri(). '/assets/js/bootstrap.js', array('jquery') );
wp_enqueue_script( 'jquery-superfish', get_template_directory_uri(). '/assets/js/jquery.superfish.js', array('jquery') ,'',true);
wp_enqueue_script( 'owl-carousel-old', get_template_directory_uri(). '/assets/js/owl.carousel-old.js', array('jquery') );
wp_enqueue_script( 'owl-carousel', get_template_directory_uri(). '/assets/js/owl.carousel.js', array('jquery') );
wp_enqueue_script( 'owl-carousel-min', get_template_directory_uri(). '/assets/js/owl.carousel.min.js', array('jquery') );
wp_enqueue_script( 'slider', get_template_directory_uri(). '/assets/js/slider.js', array('jquery') );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
}
add_action( 'wp_enqueue_scripts', 'automobile_mechanic_scripts' );
function automobile_mechanic_front_page_template( $template ) {
return is_home() ? '' : $template;
}
add_filter( 'frontpage_template', 'automobile_mechanic_front_page_template' );
function automobile_mechanic_sanitize_dropdown_pages( $page_id, $setting ) {
// Ensure $input is an absolute integer.
$page_id = absint( $page_id );
// If $page_id is an ID of a published page, return it; otherwise, return the default.
return ( 'publish' == get_post_status( $page_id ) ? $page_id : $setting->default );
}
function automobile_mechanic_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;
}
}
function automobile_mechanic_sanitize_checkbox( $input ) {
return ( ( isset( $input ) && true == $input ) ? true : false );
}
function automobile_mechanic_sanitize_phone_number( $phone ) {
return preg_replace( '/[^\d+]/', '', $phone );
}
function automobile_mechanic_sanitize_float( $input ) {
return filter_var($input, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
}
/* Excerpt Limit Begin */
function automobile_mechanic_string_limit_words($string, $word_limit) {
$words = explode(' ', $string, (int)($word_limit) + 1);
if(count($words) > $word_limit)
array_pop($words);
return implode(' ', $words);
}
// Change number or products per row to 3
add_filter('loop_shop_columns', 'automobile_mechanic_loop_columns');
if (!function_exists('automobile_mechanic_loop_columns')) {
function automobile_mechanic_loop_columns() {
return 3; // 3 products per row
}
}
/* Breadcrumb Begin */
function automobile_mechanic_breadcrumb() {
if (!is_home()) {
echo '';
bloginfo('name');
echo "";
if (is_category() || is_single()) {
the_category(', ');
if (is_single()) {
echo " ";
the_title();
echo "";
}
} elseif (is_page()) {
echo "";
the_title();
echo " ";
}
}
}
function automobile_mechanic_banner_image( $image_url ){
global $post;
if( is_singular() ){
$image_url = get_the_post_thumbnail_url( $post->ID, 'full' );
}
return $image_url;
}
require get_parent_theme_file_path( '/inc/custom-header.php' );
require get_parent_theme_file_path( '/inc/template-tags.php' );
require get_parent_theme_file_path( '/inc/template-functions.php' );
require get_parent_theme_file_path( '/inc/customizer.php' );
require get_parent_theme_file_path( '/inc/font-awesome-icons.php' );
require get_parent_theme_file_path( '/inc/wptt-webfont-loader.php' );
add_action('admin_menu', 'automobile_mechanic_reorder_appearance_menu', 999);
function automobile_mechanic_reorder_appearance_menu() {
global $submenu;
if (isset($submenu['themes.php'])) {
$themes_submenu = $submenu['themes.php'];
// Find and extract the Themes Dashboard item
foreach ($themes_submenu as $key => $item) {
if ($item[2] === 'themes-dashboard') {
$dashboard_item = $item;
unset($themes_submenu[$key]);
break;
}
}
// Re-index and add Themes Dashboard at the top
if (isset($dashboard_item)) {
$themes_submenu = array_values($themes_submenu); // reindex
array_unshift($themes_submenu, $dashboard_item);
$submenu['themes.php'] = $themes_submenu;
}
}
}
// Hook into current_screen to detect if we're on our custom page
add_action('current_screen', 'automobile_mechanic_hide_admin_notices_on_custom_page');
function automobile_mechanic_hide_admin_notices_on_custom_page($screen) {
// Check for our custom page slug
if ($screen->id === 'appearance_page_themes-dashboard') {
// Remove all actions that show admin notices
remove_all_actions('admin_notices');
remove_all_actions('all_admin_notices');
remove_all_actions('network_admin_notices');
}
}
add_action('admin_menu', 'automobile_mechanic_add_themes_dashboard_menu');
function automobile_mechanic_add_themes_dashboard_menu() {
add_theme_page(
'Themes Dashboard',
'Themes Dashboard',
'manage_options',
'themes-dashboard',
'automobile_mechanic_themes_dashboard_page'
);
}
function automobile_mechanic_themes_dashboard_page() {
echo automobile_mechanic_render_combined_dashboard();
}
function automobile_mechanic_render_combined_dashboard() {
$theme = wp_get_theme();
$theme_name = $theme->get('Name');
$screenshot = $theme->get_screenshot();
$theme_description = $theme->get('Description');
$theme_version = $theme->get('Version');
$customize_url = admin_url('customize.php');
// Dashboard file
$dashboard_url = 'https://raw.githubusercontent.com/LuzukThemes/themes-dashboard/main/dashboard.html';
$dashboard_response = wp_remote_get($dashboard_url);
$dashboard_html = '';
if (!is_wp_error($dashboard_response)) {
$dashboard_html = wp_remote_retrieve_body($dashboard_response);
} else {
$dashboard_html = 'Unable to load Dashboard content from GitHub.
';
}
// Coupon file
$coupon_url = 'https://raw.githubusercontent.com/LuzukThemes/themes-dashboard/main/coupon.html';
$coupon_response = wp_remote_get($coupon_url);
$coupon_html = '';
if (!is_wp_error($coupon_response)) {
$coupon_html = wp_remote_retrieve_body($coupon_response);
} else {
$coupon_html = 'Unable to load Coupon content from GitHub.
';
}
ob_start(); ?>