web-dev-qa-db-fra.com

Définissez le transport du paramètre principal du personnalisateur 'header_image' sur 'postMessage'

Pour activer la section de base du Customizer Navigation (ID: nav) , vous devez:

add_theme_support( 'custom-header' );

J'ai déjà essayé de rendre le transport du Customizer header_image paramétrant postMessage avec l'ID en fonction de ce que je vois à get_header_image () :

function theme_customize_register( $wp_customize ) {
    $wp_customize->get_setting( 'header_image' )->transport = 'postMessage';

    // I also tried this line.
    // $wp_customize->get_setting( 'header_image', get_theme_support( 'custom-header', 'default-image' ) )->transport = 'postMessage';
}
add_action( 'customize_register', 'theme_customize_register' );

Mais le transport de réglage est toujours refresh. Et comme le code ci-dessus ne fonctionnait pas, il semble que l'ID du personnalisateur paramètre Image d'en-tête ne soit pas header_image .. Quel est l'ID de l'image d'en-tête et comment le rendre postMessage ?

2
5ervant

Heureusement, je faisais face au même problème il y a une heure et j'ai donc longuement réfléchi à la recherche d'une solution. Je l'ai posté ici avant de voir ceci: http://www.hardeepasrani.com/2015/12/using-postmessage-transport-method-for-header-image/

Donc, au lieu d'utiliser simplement:

$wp_customize->get_setting( 'header_image' )->transport = 'postMessage';

J'ai utilisé:

$wp_customize->get_setting( 'header_image'  )->transport = 'postMessage';
$wp_customize->get_setting( 'header_image_data'  )->transport = 'postMessage';

Après cela, dans JS, nous avons obtenu la valeur en utilisant header_image.

J'espère que ça vous aide. :)

3
Hardeep Asrani