web-dev-qa-db-ja.com

子テーマのfunctions.phpを使って親テーマのcustomizer.phpを変更する

私は、子テーマのfunctions.phpを使って、親テーマのcustomizer.phpに2番目のロゴオプションを追加しようとしています。しかし、私は500 Internal Server Errorを受けています。何がおかしいのですか?

これは、親テーマの "extend"フォルダ内のcustomizer.phpファイルのコードです。

function j007_customize_register( $wp_customize ) {
/* Logo */

$wp_customize->add_setting( 'logo', array(
  'type' => 'theme_mod', // or 'option'
  'capability' => 'edit_theme_options',
  'theme_supports' => '', // Rarely needed.
  'default' => '',
  'transport' => 'refresh', // or postMessage
  'sanitize_callback' => 'j007_fun_sanitize_callback' // Get function name 

) );

$wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, 'logo', array(
    'label'    => esc_html__( 'Logo', 'em4u' ),
    'section'  => 'header_section',
    'settings' => 'logo'
)));

}

function j007_fun_sanitize_callback($value){
return $value;
}

add_action( 'customize_register', 'j007_customize_register' );

これが私が使っている子テーマのfunctions.phpのコードです。

// Add alternative logo
function j007_customize_register( $wp_customize )
{
$wp_customize->add_setting( 'logo_alt', array(
    'type' => 'theme_mod', // or 'option'
    'capability' => 'edit_theme_options',
    'theme_supports' => '', // Rarely needed.
    'default' => '',
    'transport' => 'refresh', // or postMessage
    'sanitize_callback' => 'j007_fun_sanitize_callback' // Get function name 

  ) );

$wp_customize->add_control(
    new WP_Customize_Image_Control(
        $wp_customize,
        'logo_alt',
        array(
            'label' => esc_html__( 'Logo', 'j007' ),
            'section'  => 'header_section',
            'settings' => 'logo_alt'
        )
    )
);
}
add_action( 'customize_register', 'j007_customize_register' );
3
Duarte Nunes

このコードをfunction.phpに入れてください。ロゴのカスタマイザでカスタムセクションを作成します。

<?php
add_action('customize_register', 'theme_footer_customizer');
function theme_footer_customizer($wp_customize){
    //adding section in wordpress customizer   
    $wp_customize->add_section('footer_settings_section', array(
      'title'          => 'Footer Text Section'
    ));
    //adding setting for footer logo
    $wp_customize->add_setting('footer_logo');
    $wp_customize->add_control(new WP_Customize_Upload_Control($wp_customize,'footer_logo',array(
     'label'      => 'Footer Logo',
     'section'    => 'footer_settings_section',
     'settings'   => 'footer_logo',
     ))); 
}
1
Jignesh Patel