TOP(home.php)でcat=1,cat=2を別々に表示させるには
どのようにすればよいでしょうか
もうちょっと、やりたいことを詳しく書いてください。なんとなく推測できるんですが、まずはご自身で説明してもらう方が好ましいので、お願いします。
基本的には、PC 用のテンプレートで同様の出力を行うのに必要なコードが、ほぼそのまま携帯用テンプレートに応用できます。
で、PC 向けテンプレートでのサンプルは、このフォーラムにいっぱい事例があるはずなので、探してみてください。
説明不足でスミマセン…
TOPの表示に、全ての記事を日付順でだすのではなく、
2箇所に分けて
カテゴリー1とカテゴリー2を別々に表示させたいです
PC 向けテンプレートでやってみたのが下記です
テーマエディタでindex.phpの最初あたりを以下のように修正する。
<?php if(is_home()) {query_posts(”cat=5″);} ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
もう一つ
index.phpなどにある、
< ?php if (have_posts()) : while (have_posts()) : the_post(); ?>
に続けて、
< ?php if (in_category(‘N’)) continue; ?>
いずれも表示されませんでした。
いずれも表示されませんでした。
PC のテンプレートでもできなかったのでしょうか? PC ではできたけど、携帯では無理だったのでしょうか? PHP のエラーが出て白紙画面になりましたか?
(endwhile が書いてないので、PHP の構文エラーが出そう……)
PC のテンプレートでできるのであれば、ほとんどの場合携帯でもうまく動きます。まず PC で動くようにしましょう。
カテゴリー1とカテゴリー2を別々に表示させたいです
query_posts() を使ってしまうと、本来の投稿ループがリセットされるので、あまりうまくないですね。トップページ (フロントページ) だけ表示をかえるには、index.php を複製して home.php というテンプレートを作ってください。そうすれば、フロントページ専用のテンプレートになります。
で、get_posts() で投稿を抽出して、ループを作った方がよさそうです。
「特定カテゴリーの投稿をリストしたい」というのは、このフォーラムでも頻繁に出てくるので、よく調べてみてください。
下記で出来ました
< ?php if (have_posts()) : while (have_posts()) : the_post(); ?>
に続けて、
< ?php if (! in_category(‘N’)) continue; ?>
…見落としてました
http://wpcustom.yoshikazuasada.biz/template/16
なお、この手法を用いる場合、if文で飛ばした「1つ」としてカウントされます。例えば設定画面で「表示する投稿を10」に指定してあったとして、表示キャンセルを指定した記事が8個あった場合、トップページには2個しか出てきません。
上記問題をクリアできる書き方って無いでしょうか…
どなたか ご指導お願いします