スポンサー
”query_posts()”をやめたら、ROSEのブログの表示の不具合も解消された!
ずっと気にはなっていたけど原因が特定できずにいた@w_rose220のブログの表示の不具合が、まったく思いもよらないナナメの方角から解決(たぶん)した。 その食卓の(お金をかけないのに)豪華さや、あっちの椎茸山、こっちのタケノコ山、向
PHPは、まったくと言ってイイ程わかりませぬが、
なんとかかんとか、検索力を駆使して形にしているのだけども。
検索して拝借したコードの中には、
そのままでは、エラーが出たり、エラーは出ないものの
思わぬ落とし穴があったり。
ちゃんと勉強しなきゃ!
反省、猛反省!
ソーシャルボタンが表示されない!
今回は、サイドバーに表示させた「埋もれてる記事」と「カテゴリごとの最新記事」が原因で、設置したソーシャルボタンが表示されなくなると言う不具合が。
<?php query_posts(array('orderby' => 'rand', 'showposts' => 5, 'cat' => 4,23)); if (have_posts()) : while (have_posts()) : the_post();?> <ul class="random-post"> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php if (has_post_thumbnail()) : ?><?php the_post_thumbnail('side_thumbnail', array('class' => 'left')); ?></a><?php else : ?> <img src="<?php bloginfo('home'); ?>/images/default.png"></a> <?php endif; ?><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <span class="sidebar-excerpt"><?php echo mb_substr(get_the_excerpt(), 0, 50); ?></span> </li> </ul> <?php endwhile; ?> <?php endif; ?>
上の様に書いてるのだけども、
問題なく記事は表示されるものの、
ソーシャルリンクが一部しか表示されない!!?
なんでー!!????
どうしてだかわからなくて右往左往したけど、
結局はいつものコレを忘れてた。
12行目に挿入。
<?php wp_reset_query(); ?>
<?php query_posts(array('orderby' => 'rand', 'showposts' => 5, 'cat' => 4,23)); if (have_posts()) : while (have_posts()) : the_post();?> <ul class="random-post"> <li> <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php if (has_post_thumbnail()) : ?><?php the_post_thumbnail('side_thumbnail', array('class' => 'left')); ?></a><?php else : ?> <img src="<?php bloginfo('home'); ?>/images/default.png"></a> <?php endif; ?><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <span class="sidebar-excerpt"><?php echo mb_substr(get_the_excerpt(), 0, 50); ?></span> </li> </ul> <?php endwhile; ?> <?php wp_reset_query(); ?> <?php endif; ?>
めでたく、表示されました。
query_postsとreset_query はセットで
1行目の”query_posts”で、条件を指定しているので、これをリセット”reset_query”しないとその条件が以下に引き継がれてしまうのです。
「それと、ソーシャルボタンがなんの関係が?」
って感じだけども、
たぶん、訳わかんなくなっちゃうってこと?!かねー
よー、わからん。
でも、今回もこれで正常に表示できたので、これが原因だったことは間違いない。
スポンサー
ニュースレターを購読する