mattune
フォーラムへの返信
4件の返信を表示中 - 1 - 4件目 (全4件中)
-
フォーラム: 使い方全般
返信が含まれるトピック: カスタムフィールドで作った日付項目から月別アーカイブリスト作成kzさん
お世話になります。
返事が遅れてしまい申し訳ありません。教えて頂いたソースを参考にしてなんとかやってみます。
ありがとうございました。
フォーラム: 使い方全般
返信が含まれるトピック: カスタムフィールドで作った日付項目から月別アーカイブリスト作成kzさん
返事が遅れてしまいすいません。
function.php ではなくて functions.php (s が付いて複数形になってます)なのをご確認ください。
恥ずかしいを通り越して情けなくなりました。。。。初歩的なミスですいません。
functions.phpに変更し、記述したところ動作を確認しました。
が、やはり注釈してくださった※カスタムフィールドの年月重複は未考慮。
の部分や、シングルページに入った時はそのページの年月しか表示されないない 等、いろいろとやはり不安定な動作が発覚しました。
ちなみに該当フォームは以下のようにしています。
<form method="get" name="s" action="<?php bloginfo( 'url' ); ?>"> <select name="c" class="simpleBox"> <option value="" selected="selected">ARCHIVES</option> <?php if(have_posts()) : ?> <?php while(have_posts()) : the_post(); ?> <?php echo my_get_archives(); ?> <?php endwhile; ?> <?php endif; ?> </select> </form>
やはりこれ以上の動作は難しいでしょうか??
フォーラム: 使い方全般
返信が含まれるトピック: カスタムフィールドで作った日付項目から月別アーカイブリスト作成kzさん
お返事ありがとうございます。
頂いたソースをfunction.phpにコピペし、
<?php echo my_get_archives(); ?>
を該当箇所に記入しましたが、ページを見るとその箇所から以下が表示されなくなりました。
念のため、function.phpを新規に作成し、頂いたソースのみの関数を記述しましたが、やはり動作しないようです。作成したfunction.php
<?php // use in the loop function my_get_archives(){ global $wpdb, $wp_locale; $ymds = get_post_meta(get_the_ID(), '日付カスタムフィールドID'); foreach((array)$ymds as $ymd){ $ym = explode('.', $ymd); $year = $ym[0]; $month = $ym[1]; $count = $wpdb->get_var($wpdb->prepare(" SELECT COUNT(ID) FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' AND YEAR(post_date) = $year AND MONTH(post_date) = $month ;")); $url = get_month_link($year, $month); $text = sprintf(__('%1$s %2$d'), $wp_locale->get_month($month), $year); $output .= get_archives_link($url, $text, 'option', '', ' ('.$count.')'); } return $output; } ?>
フォーラム: 使い方全般
返信が含まれるトピック: get_the_category()で、全カテゴリー情報を取得するには?taikikenさん
解決しました!ありがとうございます。
get_categories()ってタグがあったんですね。勉強になりました。積極的に英語のページも参照しないとダメですね/////
ありがとうございました。
4件の返信を表示中 - 1 - 4件目 (全4件中)