hiroseek
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: ユーザがアクセスした月の行事の投稿を出力したいgatespaceさま
何から何までありがとうございます!
本返信を以って解決済みフラグ立てたく思います。ありがとうございました!!
フォーラム: 使い方全般
返信が含まれるトピック: ユーザがアクセスした月の行事の投稿を出力したいgatespaceさま
こんばんは。hiroseekです。
ご丁寧に解説ありがとうございました!だいぶ苦戦したのですが、おかげさまで無事、修正できました。
方法としては、2.を試行錯誤してみたのですがどうしてもうまくいかなかったので、
1.の方法で調整したら無事、出力されました。いろいろとソースを試行錯誤していじる中で無限ループにハマったりしましたが、
そうやって試行錯誤することでどのように処理を並べていくと適切に処理がなされるのか、
とかを身を以て経験できたのは貴重な経験でした。また、ご助言頂いた通り、Wordpressの本については最新版を本日購入しました。
またまたエビスコムさんの最新版なんですが、これを熟読してより一層Wordpress、
使い倒していきたいと思います。
本当に助かりました。ありがとうございました!!!フォーラム: 使い方全般
返信が含まれるトピック: ユーザがアクセスした月の行事の投稿を出力したい【追記】
今回、未来の行事を表示させるため、予約投稿をキャンセルするプラグイン「NO FUTURE POSTS」を利用し、その上でgeneral-template.phpの一部を以下のように変更しています。<変更前>
$dayswithposts = $wpdb->get_results("SELECT DISTINCT DAYOFMONTH(post_date) FROM $wpdb->posts WHERE MONTH(post_date) = ‘$thismonth’ AND YEAR(post_date) = ‘$thisyear’ AND post_type = ‘post’ AND post_status = ‘publish’ AND post_date < ‘" . current_time(‘mysql’) . ‘\”, ARRAY_N);
<変更後>
$dayswithposts = $wpdb->get_results("SELECT DISTINCT DAYOFMONTH(post_date) FROM $wpdb->posts WHERE MONTH(post_date) = ‘$thismonth’ AND YEAR(post_date) = ‘$thisyear’ AND post_type = ‘post’ AND post_status = ‘publish’ ", ARRAY_N);
しかし、functions.phpからカレンダー部分を切り出してプラグイン化するようなことはおこなっておりません。
ややこしいこととなっており恐縮ですが、何卒宜しくお願い致します。
フォーラム: 使い方全般
返信が含まれるトピック: ユーザがアクセスした月の行事の投稿を出力したいgatespaceさま
こんにちは。hiroseekです。
ご回答ありがとうございます!
このような場で質問するのが始めてだったため、稚拙な説明で失礼しました。
query_posts()についてはおっしゃる通り、wp_reset_query() でリセットをしています。
(リセットする場所がわからず随分苦しんだものでw)そもそも、今回の処理を全て「index.php」には記述せず、「archive.php」を別途設けてそこに記述したほうがスムーズなのでしょうか??
自分は現在、エビスコム社の「WordPressレッスンブック 2.7対応」という本に従い、Wordpressのオリジナルテーマを作成してカスタマイズしているのですが、上記のように若干複雑になっているためその本の範疇を超えてしまっています。一応以下、今回のコードをループの終わりまで転載させて頂きます。
<div id="leftColumn"> <?php query_posts($query_string . '&orderby=date&order=ASC&monthnum=' . date( 'n', current_time( 'timestamp' ) ) ); ?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <div id="schdlIndx"> <?php // the_date() $the_date = the_date( 'U', null, null, false ); if ( !empty( $the_date ) ) echo date( 'Y.M.d \(D\)', $the_date ); ?> <h3 class="eventTTL"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3> <ul class="mgenre"><?php $ary = get_post_meta($post->ID,'Music Genre', false); $n = count($ary); if ($n==0) echo ""; else for ($i=0;$i<$n;$i++) echo "<li>$ary[$i] </li>"; ?></ul> <?php the_content(); ?> </div> <?php endwhile; endif; ?> <?php wp_reset_query(); ?> </div> <div id="rightColumn"> <div id="cList"> <?php get_calendar(); ?> <?php wp_get_archives(); ?> </div> </div>
汚いコードで見づらくて恐縮ですが、何卒宜しくお願い致します。