[wp-trac] [WordPress Trac] #21515: No custom header support in theme == Fatal error: Call to a member function process_default_headers() on a non-object
WordPress Trac
noreply at wordpress.org
Wed Dec 11 21:45:17 UTC 2024
#21515: No custom header support in theme == Fatal error: Call to a member function
process_default_headers() on a non-object
------------------------------+---------------------
Reporter: c3mdigital | Owner: ryan
Type: defect (bug) | Status: closed
Priority: normal | Milestone: 3.4.2
Component: Customize | Version:
Severity: normal | Resolution: fixed
Keywords: has-patch commit | Focuses:
------------------------------+---------------------
Comment (by rimtoo):
Replying to [comment:8 rimtoo]:
> The error message you provided indicates that there is an issue with the
WP_Customize_Header_Image_Control class and its process_default_headers()
method being called on a non-object. This error typically occurs when you
attempt to use the Customizer with a theme that doesn't support custom
headers.
> Here's a possible solution to handle this error by checking whether the
WP_Customize_Header_Image_Control object exists before calling its
methods:
>
> <?php
> if ( class_exists( 'WP_Customize_Header_Image_Control' ) ) {
> $custom_image_header = new WP_Customize_Header_Image_Control(
$wp_customize );
> if ( is_object( $custom_image_header ) ) {
> // Process custom header controls here
> }
> }
> This code snippet checks if the WP_Customize_Header_Image_Control class
exists, and if it does, it attempts to create an instance of it. Then, it
checks if the instance is a valid object before proceeding to process
custom header controls.
Use the following snippet to prevent errors and handle the situation
gracefully:
{{{#!php
<?php
<?php
if ( class_exists( 'WP_Customize_Header_Image_Control' ) ) {
// Check if $wp_customize is available
if ( isset( $wp_customize ) && is_object( $wp_customize ) ) {
$custom_image_header = new WP_Customize_Header_Image_Control(
$wp_customize, 'header_image', array(
'label' => __( 'Header Image', 'your-textdomain' ),
'section' => 'header_image_section',
'settings' => 'header_image_setting',
) );
if ( is_object( $custom_image_header ) ) {
// Add your custom header controls logic here
}
} else {
error_log( 'Customizer object is not available.' );
}
} else {
error_log( 'WP_Customize_Header_Image_Control class is missing. Ensure
the theme supports custom headers.' );
}
}}}
--
Ticket URL: <https://core.trac.wordpress.org/ticket/21515#comment:9>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list