サポート » 使い方全般 » WordPress Popular Postsでランキング20件が表示できない

  • 解決済 aki

    (@akistar02)


    WordPress Popular Postsで、特定のカテゴリだけ除外したランキングを作りたいのですが、
    20件表示させる指定をするとランキングやその他要素(フッターなど)が読み込まなくなってしまいます・・・(下記ソース)
    いい解決方法などないでしょうか・・・
    よろしくお願い致します。

    ‘limit’ => 20, // 表示する記事数
    を10にすると表示されるのですが、20にすると、ランキング自体が消えてしまい、フッターなど他の要素も読み込まれなくなってしまいます・・・

    <?php if (function_exists('wpp_get_mostpopular')): ?>
        <div class="widget entrys">
        <ul class="recent_entries_w_thumb">
            <?php
                // オプションの設定
                $args = array(
                    'limit' => 20, // 表示する記事数
                    'range' => 'weekly', // 期間
                    'order_by' => 'views', // ソート順(これは閲覧数)
                    'post_type' => 'post', // 投稿タイプ(カスタム投稿タイプを表示したくない場合など)
                    'thumbnail_width' => 100, // サムネイルの横幅
                    'thumbnail_height' => 100, // サムネイルの高さ
                    'stats_comments' => 0, // コメントを表示する(1)/表示しない(0)
                    'stats_views' => 0, // 閲覧数を表示する(1)/表示しない(0)
                    'stats_author' => 0, // 投稿者を表示する(1)/表示しない(0)
                    'stats_date' => 1, // 日付を表示する(1)/表示しない(0)
                    'stats_date_format' => 'Y年n月j日', // 日付のフォーマット
                    'stats_category' => 0, // カテゴリを表示する(1)/表示しない(0)
    
            cat=>'-38',
                    'wpp_start' => "<ul class='popular_posts'>", // リストの開始タグ
                    'wpp_end' => "</ul>", // リストの終了タグ
                    'post_html' => // HTMLの出力フォーマット
                    "
    
    				<li>
    			<div class='widget-post-thumb'>{thumb}</div>
                    <div class='excerpt_div clearfix'>
    					<div class='excerpt_title_div'>
    					<time ='widget-time'>{stats}</time>
    					<h4 class='excerpt_title_wid'><a href='{url}'>{text_title}</a></h4>
    					</div>
                    </div>
                    </li>
                    "
                );
    
                // 関数の実行
                wpp_get_mostpopular($args);
            ?>
    
        </div>
    <?php endif; ?>
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック投稿者 aki

    (@akistar02)

    ちなみにこれだと表示されます。
    サムネイルをつけると表示されません・・・

    <?php
    wpp_get_mostpopular('
        range=weekly&
        order_by=views&
        cat=”-38”&
        limit=20&
        post_type=post&
        stats_comments=0&
        stats_views=1&
        pages=0');
    ?>
    トピック投稿者 aki

    (@akistar02)

    原因が不明でしたが、どうやらバグっぽかったので、
    WordPress Popular Postsの「wordpress-popular-posts.php」というファイルの1904行目からの記述をカスタマイズして表示させました。

    修正前

    $thumb .= $this->__get_img($p, $p->id, null, array($tbWidth, $tbHeight), $this->user_settings['tools']['thumbnail']['source'], $title);

    修正後

    else {
    				$link = get_permalink( $p->id );
    				$thumbnail_id = get_post_thumbnail_id($p->id);
    				$image = wp_get_attachment_image_src( $thumbnail_id, 'full' );
    				$src = $image[0];
    				$width = $image[1];
    				$height = $image[2];
    				$thumb .= '<img src="'.$src.'" alt="" />';
    			}

    やってることは投稿IDを取得できたので投稿IDでアイキャッチを呼び出しただけです。
    つまずいたら試してみる価値はあると思います。

    ※プラグインのカスタマイズはバージョンアップに支障をきたすのであまり好きではありませんが・・・

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「WordPress Popular Postsでランキング20件が表示できない」には新たに返信することはできません。