[解決済み] home.phpのお勧め商品をランダムに表示したい
4件の投稿を表示中 - 1 - 4件目 (全4件中)
-
投稿者投稿
-
2012年8月18日 8:58 AM #51765
たお
参加者WordPress のバージョン:3.41
Welcart のバージョン:1.1.10
ご利用のテーマ:デフォルトをカスタマイズ
home.phpのお勧め商品の表示方法をサイドバーのお勧め商品の表示のようにランダムに表示をさせたく、サイドバーのソースの必要と思われるソースをhome.phpに移植したところ、うまく表示されません
ほぼランダムに表示されるのですが、
表示件数が、ある時は正しく表示されるのですが、ある時は少なく表示されたりします。
(10件表示するように設定にしているにも関わらず、4件しか表示されなかったり、5件しか表示されなかったりします)
確認方法はブラウザの再読み込みで行いました。その際サイドバーのお勧めの表示は正常でした。
アドヴァイスをいただけませんでしょうか?
よろしくお願いいたします
<div class="clearfix">
<?php $offset = usces_posts_random_offset(get_posts('category='.usces_get_cat_id( 'itemreco' )));
$myposts = get_posts('numberposts=10&offset='.$offset.'&category='.usces_get_cat_id( 'itemreco' ));
foreach($myposts as $post) : usces_the_item();?>
<div class="thumbnail_box">
<div class="thumimg"><a href="<?php the_permalink() ?>">
<?php usces_the_itemImage($number = 0, $width = 150, $height = 150 ); ?>
<div class="thumtitle">
<?php usces_the_itemName(); ?>
</div>
</a></div>
<!--プライス-->
<?php if (usces_is_skus()) : usces_have_skus()?>
<?php if (usces_have_zaiko_anyone() ): ?>
<?php if (usces_the_firstCprice('return') > 0) : ?>
<div class="reg_price">
<?php usces_crform( usces_the_firstCprice('return'), true, false ); ?>
<?php usces_guid_tax(); ?>
</div>
<?php endif; ?>
<div class="price">
<?php usces_crform( usces_the_firstPrice('return'), true, false ); ?>
<?php usces_guid_tax(); ?>
</div>
<?php else: ?>
<div class="price">
<?php usces_the_itemZaiko(); ?>
</div>
<?php endif; ?>
<?php endif; ?>
<!--//プライス-->
</div>
<?php endforeach; ?>
<?php wp_reset_query(); ?>
</div>2012年8月20日 12:44 AM #65268uishi
参加者get_postsをググるとoffsetは取得開始位置みたいですね。
ランダムに表示するときはorderbyにrandでいけるんじゃないでしょうか。
あまり詳しくないですが。
2012年8月20日 8:53 AM #65269
nanbuキーマスターこんにちは。
offsetをランダムにしている為、offset値が大きくなると商品が足りなくなり表示される数が少なくなっているのではと思います。
uishiさんのおっしゃる通り、offsetは使わず、&orderby=randにして、頭から10件取るといった方法が良いかと思います。
2012年8月20日 9:30 AM #65270たお
参加者uishi様
nanbu様
希望通りに表示することが出来ました
心より感謝申し上げます。
ありがとうございます。
-
投稿者投稿
4件の投稿を表示中 - 1 - 4件目 (全4件中)
- このトピックに返信するにはログインが必要です。
PAGE TOP