サポート » 使い方全般 » サイドバーにカテゴリー名とカテゴリー別画像の表示の仕方

  • 解決済 circle_s_k

    (@circle_s_k)


    現在wordpressにて何名かブロガーが存在するブログを作っています。
    ブロガーはカテゴリーで分け、category iconsとゆうプラグインでカテゴリー別で画像を設定しています。
    サイドバーに新規投稿された記事のタイトルと、投稿の中の画像の一枚目がサムネイル表示するようにしているのですが、この画像をカテゴリー別で決められた画像にしたいと考えています。
    その際、記事タイトルと同時にカテゴリー名も表示できるようにしたいです。
    PHP初心者の為どうやって対応してよいものかわかりません。
    現在コードは以下になります。

    <?php
    query_posts(‘showposts=10’);
    if ( have_posts() ) : while ( have_posts() ) : the_post();
    $files = get_children(“post_parent=$id&post_type=attachment&post_mime_type=image”);
    if (!empty($files)){
    $keys = array_keys($files);
    $num=$keys[0];
    $thumb=wp_get_attachment_thumb_url($num);
    print ‘<div class=”クラス名”><a href=”‘ . clean_url(get_permalink()) . ‘ title_li=’ .
    the_title_attribute(‘echo=0’) . ‘”><img src=”‘ . clean_url($thumb) .
    ‘” width=”100″ height=”100″ alt=”‘ . the_title_attribute(‘echo=0’) . ‘” />’ . get_the_title() . ‘</div>’ . “\n”;
    }
    endwhile;else:
    endif;?>

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック投稿者 circle_s_k

    (@circle_s_k)

    プラグイン名はCategory and page iconsでした。

    get_the_category で解決◎

    トピック投稿者 circle_s_k

    (@circle_s_k)

    kz 様
    コメントありがとうございます。
    get_the_categoryを使い、カテゴリー名と、記事のタイトルが出せるとゆうことでしょうか?
    その際に、プラグインで設定したカテゴリーごとに決められた画像を表示することもできますでしょうか?

    index.phpのサイドバーに新着記事が表示され、その記事にカテゴリー名、記事の投稿日時、ブロガーの画像が表示されること、これが理想の形となっております。
    PHPを学んだことがなく、この作業を早く完了させなければならない状況にあります。。
    自力でも調べてみますが、お力添えお願いいたします。

    ん?と思ってソースをじっくり眺めましたが…get_the_categoryで解決に激しく同意。

    「現在のコード」にget_the_categoryを入れて画像を取得表示すればいいだけです。

    トピック投稿者 circle_s_k

    (@circle_s_k)

    V.JCatkick
    コメントありがとうございます。
    現在のコードにget_the_categoryを入れる、とゆうことは、コードはどのようになるのでしょうか?
    現在画像はthema内のimageフォルダに入っています。

    トピック投稿者 circle_s_k

    (@circle_s_k)

    たびたび失礼いたします。
    プラグインを使う事をやめ、コードを以下のように変えました。
    これで最新記事を表示しています。
    この各最新記事の上部に、各カテゴリーの画像を挿入できるようにはできますでしょうか?
    カテゴリーの画像はthemeフォルダのimagesに入れて、カテゴリー idと連動させた名前にしています。
    自身まだphpがまったくの初心者なため困惑しています。
    どうかご教授いただきたいです。

    <h2>new blog</h2>
    <div id=”newblog”>

      <?php
      $newentry = get_posts(‘numberposts=6’);
      foreach($newentry as $post) :
      ?>

    • <?php the_time(‘Y.m.d’) ?>:“><?php the_title(); ?>
    • <?php
      endforeach;
      ?>

    </div>

    V.J.Catkick

    (@vjcatkick-1)

    $cat=get_the_category()でカテゴリ情報を得る(cat_IDとかcategory_nicenameがいい)

    表示したいDIVとか(なんでもいい)のクラスに$cat->cat_IDとか$cat->category_nicenameを付与する

    CSSで指定したクラスに対して画像を貼る

    こんな感じ。

    トピック投稿者 circle_s_k

    (@circle_s_k)

    V.J.Catkick 様
    返信ありがとうございます。
    CSS指定せずに作成しようと考えております。
    以前kz様がフォーラムにも書かれていたコードを現在試しており、

    <div id=”newblog”>

      <?php
      $newentry = get_posts(‘numberposts=6’);
      foreach($newentry as $post) :
      ?>
      <?php
      $cats = get_the_category();
      $cat = $cat[0];
      $cat_img = ‘<img src=”‘ . get_bloginfo(‘templatre_url’). ‘/images/category-‘
      . $cat->category_nicename . ‘.jpg” alt=”‘ . $cat->cat_name . ‘” />’;
      ?>

    • <?php the_time(‘Y年m月d日’); ?>  
      <?php echo $img; ?>  
      ” id=”post-<?php the_ID(); ?>”>
      <?php the_title(); ?>
    • <?php endforeach; ?>

    </div>

    として、テーマフォルダ/images に category-カテゴリースラッグ名.jpg の画像を設定いたしました。
    最新記事は表示されるのですが、画像が表示されない状況です。。。
    もう少し自分でもいろいろ試してみます。

    shokun0803

    (@shokun0803)

    最新記事は表示されるのですが、画像が表示されない状況です。。。

    表示されたページのソースを表示して、画像までのアドレスが正しいか確認しましょう。確認の方法はソースに書かれている画像アドレスをコピーして貼り付けて実際にアクセスするのが確実です。こういった場合「該当の場所に該当の名前の画像が存在しない」などの基本的な落ちが多いですね;)

    トピック投稿者 circle_s_k

    (@circle_s_k)

    shokun0803様
    ご返信ありがとうございます。
    以下のコードにより解決いたしました。
    ページソースを確認し、カテゴリースラッグがちゃんと読み込めていないことがわかりました。

    <?php
    $lastposts = get_posts(‘numberposts=5’);
    foreach($lastposts as $post) :
    setup_postdata($post);
    ?>
    <?php
    $cat = get_the_category();
    $catslug = $cat[0]->slug;
    ?>

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック「サイドバーにカテゴリー名とカテゴリー別画像の表示の仕方」には新たに返信することはできません。