2017-01-05 16 views
0

テーマに「ポストフォーマット」.phpファイルがあります。 (テンプレート/ブログ/)。私はこのファイル内のいくつかのものを変更して、子テーマにこれを追加する必要があるようにします。テーマは子テーマからポストフォーマットファイルを受け取りません

子供のテーマでは、フォルダ(テンプレート/ブログ/)を作成してファイルを貼り付けました。私の研究によれば、私は子テーマfunction.phpの下にコードを追加しました。適切と呼ばれる機能。しかし、私がそれを実行すると、常にpost-format.phpファイルを子テーマの代わりに親テーマから取得します。

add_action('after_setup_theme', 'setup_postformats', 10); 
//add_action('after_setup_theme', 'setup_postformats', 20); 
//add_action('after_setup_theme', 'setup_postformats', 11); 

function setup_postformats(){ 
    remove_theme_support('post-formats'); 
    add_theme_support('post-formats', array( 
    'aside', 
    'chat', 
    'gallery', 
    'image', 
    'link', 
    'quote', 
    'status', 
    'video', 
    'audio' 
)); 
} 

テーマ名 - リンカーン 誰も私を助けることはできますか?

答えて

0

あなたの親テーマよりもafter_setup_themeの優先度を高く設定することが重要です。デフォルトの優先度は10です。例としてtwentysixteenを使用すると、子テーマで優先度11を使用します。 'after_setup_theme'アクション。以下の例を参照してください:

function twentysixteen_child_setup() { 
    add_theme_support('post-formats', array(
     'video', 
    )); 
} 
add_action('after_setup_theme', 'twentysixteen_child_setup', 11); 

アップデート私はあなたがのためにコードを追加する必要があると思う

// in your Child Theme's functions.php  

// Use the after_setup_theme hook with a priority of 11 to load after the 
// parent theme, which will fire on the default priority of 10 
add_action('after_setup_theme', 'remove_post_formats', 11); 

function remove_post_formats() { 

    remove_theme_support('post-formats'); 
    add_theme_support('post-formats', array('video')); 
} 
+0

実際に私はすでに11を試していましたが、質問で指定するのを忘れました。それは動作しません。 –

0

は、子テーマのfunctions.php ポストformat.php含まファイル。だから、それはポストformat.phpの子供のテーマのバージョンを取るでしょう。

これが問題を解決することを願っています。

ありがとう、ありがとうございました

+0

私はしようとした - 'post-format.php'を含める;または 'templates/blog/post-format.php'を含める - どちらの場合でも、シングルポストページは、親テーマからポストフォーマットファイルを取得します。私がこれを追加すると、子どものテーマの別のページさえ正しく動作しません。 –

+0

あなたが使っているテーマを教えてください。 – Tristup

+0

テーマ名 - Lincoln –

関連する問題