1

親の theme-options.php から呼び出しを削除するのに苦労しています。私の問題はこれです:私の親テーマは、簡単に置き換えることができるheader.phpからではなく、画像へのURLパスを配置することでtheme-options.phpからロゴを呼び出すので、
require ( get_template_directory() . '/settings/theme-options.php' );

この呼び出しを「不要」にしたい子テーマを追加し、呼び出す関数を追加します
require ( get_stylesheet_directory() . '/theme-options.php' );

。このようにして、オプション ファイルを変更し、URL への呼び出しを削除できます。以前に同様の問題があり、unregister関数を使用して修正しましたが、このファイルへの呼び出しを「不要」にする方法がわかりません。

どんな助けでも大歓迎です。

もう少し深く検索すると、次のようにデフォルト値を呼び出す関数があります。

function max_magazine_default_options() {
$options = array(
    'logo_url' => get_template_directory_uri().'/images/logo.png',
    'favicon_url' => '',
    'rss_url' => '',
    'show_slider' => 1,
    'slider_category' => 0,
    'show_carousel' => 1,
    'carousel_category'=> 0,
    'show_feat_cats' => 1,
    'feat_cat1'=> 0,
    'feat_cat2'=> 0,
    'feat_cat3'=> 0,
    'feat_cat4'=> 0,
    'show_posts_list' => 1,
    'show_author' => 1,
    'show_page_comments' => 1,
    'show_media_comments' => 1,
    'ad468' => '<a href='.get_site_url().'><img src='.get_template_directory_uri().'/images/ad468.png /></a>',
    'inline_css' => '',
    'meta_desc' => '',
    'stats_tracker' => '',
    'google_verification' => '',
    'bing_verification' => '',
);
return $options;

}

だから、この関数を削除して自分のものに置き換えて、値を変更できると思いますか?

4

1 に答える 1

1

親を編集せずにこれを行う唯一の方法は、 、 などrequire()のフックによって呼び出される関数内で呼び出す場合です。その後、次のように簡単に実行できます。initsetup_theme

remove_action( 'hook', 'their_function_name' );

次に、関数をコピーしてfunctions.phpファイルに貼り付け、編集してから、同じフックを使用して再度追加する必要があります。

add_action( 'hook', 'your_function_name' );

関数が適切にオーバーライドされるように、関数の優先度 (3 番目の引数) が正しいことを確認する必要がある場合もあります。

于 2013-01-30T06:14:14.770 に答える