2016-05-14 8 views
-1

私は自分のワードプレスサイトの新しい外観を立ち上げる準備をしています。あまりにも多くのGPLテーマがすでに存在するときに、ホイールを再構築するのではなく、私が望むものの大部分を持っていて、それをカスタマイズすることを決めたものを選んだ。しかし、私はつまずきを打った。カテゴリとタグの説明をWordPressの子テーマに組み込むにはどうすればよいですか?

私がカスタマイズしているテーマでは、アーカイブのタイトルはfunctions.phpの関数によって制御されます。これは私のコンテンツとナビゲーションバーの間に白いボックスを生成

function theme_get_meta_title() { 
$patt = '<div class="bg-white text-center text-uppercase meta-title"><h2 class="text-gamma">%s</h2></div>'; 

if(is_archive()) { 
    return sprintf($patt, get_the_archive_title()); 
} else if(is_search()) { 
    return sprintf($patt, get_search_query()); 
} 

} 

endif; 

:私は私の子供のテーマののfunctions.phpに以下のコード(これは、親テーマののfunctions.phpファイル内の同一のコードブロックから導出される)を持っています見出し(カテゴリタイトル、タグタイトル、日付のいずれか)を付けてください。表示されていないのは、以前カテゴリとタグ用に作成した説明です。これらの記述を作成する手間がかかったので、訪問者がカテゴリやタグアーカイブを見ているときにフロントエンドに表示してほしい。この関数を変更して説明を追加しようとしましたが、結果が得られません。

私は単にカテゴリの説明に追加しようとすることで開始:

function theme_get_meta_title() { 
$patt = '<div class="bg-white text-center text-uppercase meta-title"><h2 class="text-gamma">%s</h2></div>'; 

if(is_category()) { 
    return sprintf($patt, get_the_category(), category_description()); 
} else if(is_archive()) { 
    return sprintf($patt, get_the_archive_title()); 
} else if(is_search()) { 
    return sprintf($patt, get_search_query()); 
} 

} 

endif; 

しかし、これは動作しませんでしたし、どちらも私が試した他の順列をしました。私は見出しの後に(そしてその白いボックスを作成しているdivの中に)タグとカテゴリの説明を表示することができるようにしたいと思います。また、日付ベースのアーカイブ表示では、見出しの後に古い投稿のアーカイブ。これを行う正しい方法は何ですか?

+0

この機能は使用しているテンプレートで使用されていますか? – David

+0

はい、私は、このテーマのアーカイブページに表示される内容を決定する責任が関数にあることは肯定的です。 – Seascape

答えて

0

このリンクは、あなたがやろうとしているものにaproachを示しています wordpress forum

+0

私は実際に検索中にそのスレッドを見つけました。私がカスタマイズしているテーマにカテゴリやタグテンプレートがないので、それは役に立たなかったでしょうか? '<?php echo category_description(); ?> 'へ。 – Seascape

1

のsprintfはにマッチする引数を見つけることによって動作します。文字列には1つの引数しか指定されていないので、最初の引数だけが一致します。さらに、コードにエラーがあります。

function theme_get_meta_title() { 
    $patt = '<div class="bg-white text-center text-uppercase meta-title"><h2 class="text-gamma">%s</h2> <div class="description">%s</div> </div>'; 

    if(is_category()) { 
     return sprintf($patt, get_the_category(), category_description()); 
    } else if(is_archive()) { 
     return sprintf($patt, get_the_archive_title()); 
    } else if(is_search()) { 
     return sprintf($patt, get_search_query()); 
    } 

} 
関連する問題