サポート » 使い方全般 » 順位ごとに別のアイコン画像を表示させたいfuncsions.php

  • 解決済 lalala76

    (@lalala76)


    ランキングを表示させるため、下記のようになっていますが、
    ↓↓この部分の
    <div> <?php echo sprintf(‘<span>%s位</span>’,$rank); ?></div>

    順位のところの表示を 1位 2位 3位とテキスト表示になっているところを、
    それぞれ別のアイコン画像を表示させたいのですが、どのようにすればよいでしょうか。

    function get_side_ranking( $json_data , $max ){

    $domain = Domain::get_instance()->get();
    $meta = new RankingMeta();

    $rank = 0;
    $disp = $max;//

    foreach ($json_data as $key => $value) {

    global $post;

    $post = get_post( (int)$value[‘id’] );

    setup_postdata($post);
    $views = get_post_meta($post->ID , ‘views’ , true);
    // $externallink = get_post_meta( $post->ID , ‘link’ , true);///公式サイトURL
    //$externallink = empty($externallink) ? ” : $externallink;
    $image_url = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), ‘thumbnail’ );
    if( empty($image_url[0]) ) $image_url[0] = $domain . ‘/images/default.png’;

    $link = get_permalink( $post->ID );

    $rank++;

    ?>
    <article data-id=”<?php echo $post->ID;?>” class=”sortable blloc type-a”>
    <div class=”box card”>
    <div> <?php echo sprintf(‘<span>%s位</span>’,$rank); ?></div>

    <div class=”thumbnail”>
    ” title=”<?php echo $image_url[0];?>”>
    ” alt=””>

    </div>

    <div class=”spec”>

    <h3 class=”title”>“>
    <?php echo $post->post_title;?>

    </h3>
    <div><?php
    $eval = get_post_meta($post->ID , ‘eval’ , true);
    $tag = ”;
    $eval = (float)floatval($eval);
    if( ! empty($eval) ){
    $tag .= Evaluation::getReating( $eval );
    }else{
    $tag = Evaluation::defaultReating();
    $eval = ‘0.0’;
    }
    echo sprintf(‘%s <span class=”eval”>%.1f</span>’,$tag,$eval);
    ?></div>
    </div>

    <div class=”externallink”>
    ID );?>”>詳細を見る <i class=”fa fa-chevron-right” aria-hidden=”true”></i>
    </div>

    </div>
    </article>
    <?php
    $disp–;

    }// loop
    ?>

    <?php wp_reset_postdata();?>
    <div class=”btn-area”>
    “>もっと見る<i class=”fa fa-angle-down” aria-hidden=”true”></i>
    </div>
    <?php
    }

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • ちょっと今試せる環境ではないので思いついたところで申し訳ないのですが
    <?php echo sprintf(‘<span>%s位</span>’,$rank); ?>
    この「1位」とテキストで表示されているものを画像に差し替えるということなのでしたら
    <?php echo sprintf(‘<img src="'.get_bloginfo("パス方法指定").'/画像の保存されているパス/rankpic_%s.jpg" />’,$rank); ?>
    のようにすれば「テキストで書く」というスクリプト言語の特徴を生かして命令文に変え画像を表示させるという
    ことができるのではないかと思うのですがいかがでしょうか。

    • この返信は6年、 8ヶ月前にmsioが編集しました。理由: タグがエスケープされておりませんでした。
    トピック投稿者 lalala76

    (@lalala76)

    ありがとうございます!
    こちらで表示されました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「順位ごとに別のアイコン画像を表示させたいfuncsions.php」には新たに返信することはできません。