XPressME Integration Kit

フォーラム

Re: 人気記事リスト(***_popular_posts_block.html)の表示について

永らくありがとうございました フォーラム 使い方全般 人気記事リスト(***_popular_posts_block.html)の表示について Re: 人気記事リスト(***_popular_posts_block.html)の表示について

#2970
匿名
ゲスト

toemon様

たびたび恐れ入ります。

拡張ブロックの根本的な使い方が間違っていたら

申しわけございません。

ただいま設定しようとしているサイトでは、

xpressMEをnewsとしております。

まず、当スレッドでご教授いただいております以下の2点について、

  • 「人気記事リスト」ブロックを今日(過去24時間)のランキング順にできないだろうか
  • 各記事のサムネイル画像+タイトルをブロック表示できないだろうか

拡張ブロックの設定を行ってみました。

まず、ご紹介いただたプラグインを導入して有効化しました。

  • Counterize II
  • QF-GetThumbプラグイン

次に、拡張ブロックに指定するファイルを生成しました。

/modules/news/wp-content/themes/xpress_default/blocks/my_rank_block.php

<code><?php<br />
global $wpdb;<br />
$show_posts =5;<br />
if (!is_null($wpdb)){<br />
$wp_query->in_the_loop = true;<br />
$r = new WP_Query("showposts=$show_posts&what_to_show=posts&nopaging=0&post_status=publish");<br />
while($r->have_posts()){<br />
$r->the_post();<br />
if(function_exists('the_qf_get_thumb_one')){<br />
echo the_qf_get_thumb_one("num=0&width=100");<br />
}<br />
echo '<a href="'. get_permalink() . '">' . the_title('<h2>','</h2>',false) . '</a>';<br />
}<br />
}<br />
?></code>

次に、サムネイル+記事タイトルを表示させるために、

以下を設定。

/modules/news/wp-content/themes/xpress_default/blocks/my_thumb_block.php

<code><?php<br />
if (function_exists('counterize_renderstats_vertical')){<br />
$number = 3;<br />
$onedayago = date("Y-m-d", time()-86400);<br />
$wpdb =& $GLOBALS['wpdb'];<br />
$sql = "SELECT p.count as amount, p.url as url, p.url as label, p.postID as post_id , COUNT(m.id) as  day_count"<br />
. " FROM " .counterize_logTable(). " m, " . counterize_pageTable(). " p "<br />
. " WHERE m.pageID = p.pageID and p.postID IS NOT NULL and "<br />
. " m.timestamp >= '$onedayago'"<br />
. " GROUP BY p.url "<br />
. " ORDER BY day_count DESC LIMIT $number";<br />
$rows = $wpdb->get_results($sql);<br />
foreach($rows as $row){<br />
$postid = $row->post_id;<br />
$post_data = get_post($postid);<br />
$title = $post_data->post_title;<br />
echo '<a>url . '" title="'. $title . '">'. $title . '</a>';<br />
echo ' today(' . $row->day_count .')';<br />
echo ' total(' . $row->amount . ')';<br />
}<br />
} else {<br />
echo 'not installd Counterize II plugin';<br />
}<br />
?></code>

拡張ブロックのインストール(複製)でそれぞれのファイルを指定しました。

結果、xoopsトップページでの表示ですが、

my_rank_block.phpを指定したブロックには、

***/modules/news/wp-content/themes/xpress_default/blocks/my_rank_block.php が見つかりません。

my_thumb_block.phpを指定したブロックには、

キャッシュが存在しません。

最初にnewsモジュールにアクセスしてください。

という表示がされております。

ちなみに、my_thumb_block.phpを指定したブロックの方は、

モジュールにアクセスしてキャッシュさせているのですが、

表示は変わりません。

モジュールにアクセスすると、画面が真っ白になってしまいます。

と、いったんこのような状況でございます。