web-dev-qa-db-ja.com

子テーマでコア機能をオーバーライドする

親コア関数をオーバーライドするためにchildren functions.phpを使用することはお勧めですか

Storefrontテーマの例:

コア機能

if ( ! function_exists( 'storefront_primary_navigation_wrapper' ) ) {
    /**
     * The primary navigation wrapper
     */
    function storefront_primary_navigation_wrapper() {
        echo '<div class="storefront-primary-navigation"><div class="col-full">';
    }
}

子のfunctions.php

  function storefront_primary_navigation_wrapper() {
      // modified content;
  }
3
Bartosz Was

基本的に、それがChild Themesの意図するところです、あなたはテーマを変更する必要がありますが、アップデートはあなたを台無しにするので、あなたは代わりにあなたがすべてのカスタマイズと新機能をするのであなたの子供のテーマので、あなたは大丈夫になります。

codex から。

テーマを直接変更して更新した場合は、変更内容が失われる可能性があります。子テーマを使用することによって、あなたはあなたの修正が確実に保存されるでしょう。

要約すると、これは良い習慣です。

2
Castiblanco