HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ns3133907 6.8.0-86-generic #87-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 18:03:36 UTC 2025 x86_64
User: cssnetorguk (1024)
PHP: 8.2.28
Disabled: NONE
Upload Files
File: /home/weblistings.co.uk/public_html-20250117120638/wp-content/themes/consultguide/functions.php
<?php
/**
 * Theme functions and definitions
 *
 * @package consultguide
 */

/**
 * After setup theme hook
 */
function consultguide_theme_setup(){
    /*
     * Make child theme available for translation.
     * Translations can be filed in the /languages/ directory.
     */
    load_child_theme_textdomain( 'consultguide', get_stylesheet_directory() . '/languages' );	
	require get_stylesheet_directory() . '/inc/customizer/consultguide-customizer-options.php';
}
add_action( 'after_setup_theme', 'consultguide_theme_setup' );

/**
 * Load assets.
 */

function consultguide_theme_css() {
	wp_enqueue_style( 'consultguide-parent-style', get_template_directory_uri() . '/style.css' );
	wp_enqueue_style('consultguide-child-style', get_stylesheet_directory_uri() . '/style.css');
	wp_enqueue_style('consultguide-default-css', get_stylesheet_directory_uri() . "/assets/css/theme-default.css" );	
}
add_action( 'wp_enqueue_scripts', 'consultguide_theme_css', 99);

/**
 * Import Options From Parent Theme
 *
 */
function consultguide_parent_theme_options() {
	$consultstreet_mods = get_option( 'theme_mods_consultstreet' );
	if ( ! empty( $consultstreet_mods ) ) {
		foreach ( $consultstreet_mods as $consultstreet_mod_k => $consultstreet_mod_v ) {
			set_theme_mod( $consultstreet_mod_k, $consultstreet_mod_v );
		}
	}
}
add_action( 'after_switch_theme', 'consultguide_parent_theme_options' );

/**
 * Fresh site activate
 *
 */
$fresh_site_activate = get_option( 'fresh_consultguide_site_activate' );
if ( (bool) $fresh_site_activate === false ) {
	set_theme_mod( 'consultstreet_typography_disabled', true );
	set_theme_mod( 'consultstreet_main_slider_overlay_disable', false );
	set_theme_mod( 'consultstreet_service_icon_size', array('slider' => 4,'suffix' => 'rem',));
	set_theme_mod( 'consultstreet_slider_caption_layout', 'consultstreet_slider_caption_layout2');
	set_theme_mod( 'consultstreet_theme_info_layout', 'consultstreet_theme_info_layout2');
	set_theme_mod( 'consultstreet_testimonial_layout', 'consultstreet_testimonial_layout2');
	set_theme_mod( 'consultstreet_typography_h1_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_h2_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_h3_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_h4_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_h5_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_h6_font_family', 'Sarabun' );
	set_theme_mod( 'consultstreet_typography_widget_title_font_family', 'Sarabun' );
	
	update_option( 'fresh_consultguide_site_activate', true );
}

/**
 * Page header
 *
 */
function consultguide_custom_header_setup() {
	add_theme_support( 'custom-header', apply_filters( 'consultguide_custom_header_args', array(
		'default-image'      => get_stylesheet_directory_uri().'/assets/img/page-header.jpg',
		'default-text-color' => '#000',
		'width'              => 1920,
		'height'             => 500,
		'flex-height'        => true,
		'flex-width'         => true,
		'wp-head-callback'   => 'consultguide_header_style',
	) ) );
}

add_action( 'after_setup_theme', 'consultguide_custom_header_setup' );

/**
 * Custom background
 *
 */
function consultguide_custom_background_setup() {
	add_theme_support( 'custom-background', apply_filters( 'consultguide_custom_background_args', array(
		'default-color' => 'ffffff',
		'default-image' => '',
	) ) );
}
add_action( 'after_setup_theme', 'consultguide_custom_background_setup' );

function consultguide_custom_customizer_options() { 
$consultguide_main_slider_content_color = get_theme_mod('consultstreet_main_slider_content_color', '#fff');
?>
    <style type="text/css">
		<?php if($consultguide_main_slider_content_color != null) : ?>
		.theme-main-slider.vrsn-two .theme-slider-content .title-large { color: <?php echo $consultguide_main_slider_content_color; ?>;}
		.theme-main-slider.vrsn-two .theme-slider-content .description { color: <?php echo $consultguide_main_slider_content_color; ?>;}
		<?php endif; ?>
   </style>
<?php }
add_action('wp_footer','consultguide_custom_customizer_options');


if ( ! function_exists( 'consultguide_header_style' ) ) :
	/**
	 * Styles the header image and text displayed on the blog.
	 *
	 * @see consultguide_custom_header_setup().
	 */
	function consultguide_header_style() {
		$header_text_color = get_header_textcolor();

		/*
		 * If no custom options for text are set, let's bail.
		 * get_header_textcolor() options: Any hex value, 'blank' to hide text. Default: add_theme_support( 'custom-header' ).
		 */
		if ( get_theme_support( 'custom-header', 'default-text-color' ) === $header_text_color ) {
			return;
		}

		// If we get this far, we have custom styles. Let's do this.
		?>
		<style type="text/css">
			<?php
			// Has the text been hidden?
			if ( ! display_header_text() ) :
				?>
			.site-title,
			.site-description {
				position: absolute;
				clip: rect(1px, 1px, 1px, 1px);
			}

			<?php
			// If the user has set a custom color for the text use that.
			else :
				?>
			.site-title a,
			.site-description {
				color: #<?php echo esc_attr( $header_text_color ); ?> !important;
			}

			<?php endif; ?>
		</style>
		<?php
	}
endif;