The add_custom_image_header() WordPress PHP function is used to add callbacks for image header display. This function is called on the ‘wp_head’ action and on the custom header administration screen. It can optionally output a custom header image div on the custom header administration screen.
Usage
add_custom_image_header($wp_head_callback, $admin_head_callback, $admin_preview_callback);
For instance, if you have three functions, display_header()
, admin_header()
and admin_preview()
, you can use add_custom_image_header()
like this:
add_custom_image_header('display_header', 'admin_header', 'admin_preview');
Parameters
- $wp_head_callback (callable) – This required parameter is a callback function that is invoked on the ‘wp_head’ action.
- $admin_head_callback (callable) – This required parameter is a callback function that is called on the custom header administration screen.
- $admin_preview_callback (callable) – This optional parameter is a callback function that outputs a custom header image div on the custom header administration screen. If not provided, its default value is ” (an empty string).
More information
See WordPress Developer Resources: add_custom_image_header()
Examples
Basic Usage
This is how you might typically use the add_custom_image_header()
function. This code will call the display_header()
, admin_header()
, and admin_preview()
functions at the appropriate times.
function display_header() { // Display the custom header image. echo '<img src="' . get_header_image() . '" />'; } function admin_header() { // Admin header code goes here. } function admin_preview() { // Admin preview code goes here. } // Add the custom image header callbacks. add_custom_image_header('display_header', 'admin_header', 'admin_preview');
Omitting the Optional Parameter
You can also call add_custom_image_header()
without the optional $admin_preview_callback
parameter. If you do this, it will only use the display_header()
and admin_header()
functions.
function display_header() { // Display the custom header image. echo '<img src="' . get_header_image() . '" />'; } function admin_header() { // Admin header code goes here. } // Add the custom image header callbacks without admin preview. add_custom_image_header('display_header', 'admin_header');
Using Lambda Functions
You can use lambda functions as the callback functions in add_custom_image_header()
.
add_custom_image_header( function() { /* wp_head action code */ }, function() { /* admin head code */ }, function() { /* admin preview code */ } );
Using Class Methods
If the callback functions are methods in a class, you can provide the class instance and method name as an array.
class HeaderClass { function display_header() { /* Display header code */ } function admin_header() { /* Admin header code */ } function admin_preview() { /* Admin preview code */ } } $instance = new HeaderClass(); add_custom_image_header([$instance, 'display_header'], [$instance, 'admin_header'], [$instance, 'admin_preview']);