xarxaprod-wp-theme/inc/custom-header.php

79 lines
1.9 KiB
PHP
Raw Permalink Normal View History

2024-01-09 16:13:20 +01:00
<?php
/**
* Sample implementation of the Custom Header feature
*
* You can add an optional custom header image to header.php like so ...
*
<?php the_header_image_tag(); ?>
*
* @link https://developer.wordpress.org/themes/functionality/custom-headers/
*
* @package Xarxaprod_theme
2024-01-09 16:13:20 +01:00
*/
/**
* Set up the WordPress core custom header feature.
*
* @uses xarxaprod_header_style()
2024-01-09 16:13:20 +01:00
*/
function xarxaprod_custom_header_setup() {
2024-01-09 16:13:20 +01:00
add_theme_support(
'custom-header',
apply_filters(
'xarxaprod_custom_header_args',
2024-01-09 16:13:20 +01:00
array(
'default-image' => '',
'default-text-color' => '000000',
'width' => 1000,
'height' => 250,
'flex-height' => true,
'wp-head-callback' => 'xarxaprod_header_style',
2024-01-09 16:13:20 +01:00
)
)
);
}
add_action( 'after_setup_theme', 'xarxaprod_custom_header_setup' );
2024-01-09 16:13:20 +01:00
if ( ! function_exists( 'xarxaprod_header_style' ) ) :
2024-01-09 16:13:20 +01:00
/**
* Styles the header image and text displayed on the blog.
*
* @see xarxaprod_custom_header_setup().
2024-01-09 16:13:20 +01:00
*/
function xarxaprod_header_style() {
2024-01-09 16:13:20 +01:00
$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 ); ?>;
}
<?php endif; ?>
</style>
<?php
}
endif;