chiilog (Chiaki Okamoto)
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: 固定ページにカテゴリーを全て表示したい本文中にということでしたら、ショートコードを作成すれば可能です。
ショートコードAPI
http://wpdocs.sourceforge.jp/%E3%82%B7%E3%83%A7%E3%83%BC%E3%83%88%E3%82%B3%E3%83%BC%E3%83%89_APIフォーラム: 使い方全般
返信が含まれるトピック: 固定ページにカテゴリーを全て表示したい全てのカテゴリーを取得するのでしたら、get_categoriesを使えば出来ると思います。
get_categories
http://wpdocs.sourceforge.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_categoriesフォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿名の取得とリンク設定こんにちは。
こちらではいかがでしょうか?<?php $arr = array( 'gelnail', 'bodyart', 'decoration', 'flatrategel', 'sculpturegelnail', 'wedding'); //投稿タイプ名を配列に入れる ?> <?php foreach ($arr as $thumbs) : $query = new WP_Query( 'posts_per_page=1&order=DESC&orderby=date&post_type='.$thumbs ); //投稿を1件取得 if ($query->have_posts()) : while ( $query->have_posts() ) : $query->the_post(); echo '<article class="grid_3 box-link">'; //各画像に対してのcss枠指定 echo ' <div class="box-s-middle">'; //各枠内のcss指定 echo '<a href="'.get_post_type_archive_link($thumbs).'">'.get_the_post_thumbnail($post->ID, 'thumb307' , true).'</a>'; //指定サムネイル画像 echo '<h3>'.post_type_archive_title($thumbs, false).'</h3>'; echo ' </div>'; echo '</article>'; endwhile;wp_reset_postdata(); else: endif; endforeach; ?>
フォーラム: 使い方全般
返信が含まれるトピック: 製品(固定ページ)ページに複数のカスタム分類投稿最新記事を1件づつ最善のコードかはわかりませんが・・・一応下記で実現できると思います。
gallerylistを表示するテンプレートに書いてください。$arr = array(gelnail, bodyart, decoration, flatrate, sculpturte, wedding); //投稿タイプ名を配列に入れる foreach ($arr as $thumbs) : $query = new WP_Query( 'posts_per_page=1&order=DESC&orderby=date&post_type='.$thumbs ); //投稿を1件取得 if ($query->have_posts()) : echo '<div>'; while ( $query->have_posts() ) : $query->the_post(); echo '<p>'.get_the_post_thumbnail($page->ID, 'thumbnail').'</p>'; //アイキャッチを出力 endwhile;wp_reset_postdata(); echo '</div>'; endif; endforeach;
もし認識が間違っていたらごめんなさい。
フォーラム: 使い方全般
返信が含まれるトピック: 投稿日ごとに投稿タイプ別の記事を表示したい自己解決できました!一応コード置いていきます。
function filter_where( $where = '' ) { // カスタムフィールドで選択した月から1ヶ月の投稿を取得する $where .= " AND post_date >= '" . get_field('start_calendar').'-00-00' . "'" . " AND post_date <= '" . date( 'Y-m-d-23-59',strtotime("+1 month" ,strtotime( get_field('start_calendar').'-23-59' )) ) . "'"; return $where; } add_filter( 'posts_where', 'filter_where' ); //フィルターを追加 global $query_string; $arr_dates = array(); //日付を入れる配列 $args = array( 'post_type' => array('post', 'customtypeA'), //取得する投稿タイプ 'posts_per_page' => -1, //全件取得 'order' => 'ASC', 'orderby' => 'date' ); $myQuery = new WP_Query( $args ); //クエリまわす while( $myQuery->have_posts() ): $myQuery->the_post(); //日付の配列を作成 $date_org = the_date('Y-m-d','','', false); array_push($arr_dates, $date_org); endwhile;wp_reset_postdata(); $arr_dates = array_filter($arr_dates); //空の配列削除 $arr_dates = array_merge($arr_dates); //添字振り直し foreach ($arr_dates as $arr_date) { $year = date('Y', strtotime($arr_date)); //年 $month = date('m', strtotime($arr_date)); //月 $day = date('d', strtotime($arr_date)); //日 $today = date('n月j日', strtotime($arr_date)); //表示用の日付 echo '<div class="section">'; echo '<h3>'.$today.'</h3>'; $post_args = '&year='.$year.'&monthnum='.$month.'&day='.$day.'&posts_per_page=-1&order=ASC&orderby=date'; ?> <?php if($day == 17) : //特定の日に文字列(strtotime()したほうがいいのかな・・・) echo '<h4>ほげほげ~</h4>'; endif; ?> <?php $date_query = new WP_Query( 'post_type=post'.$post_args ); //投稿のループ if ($date_query->have_posts()) : ?> <ul class="posttype1"> <?php while ( $date_query->have_posts() ) : $date_query->the_post(); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <?php endwhile;wp_reset_postdata(); ?> </ul> <?php endif; ?> <?php $other_query = new WP_Query( 'post_type=customtypeA'.$post_args ); //カスタム投稿のループ if ($other_query->have_posts()) : ?> <ul class="posttype2"> <?php while ( $other_query->have_posts() ) : $other_query->the_post(); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> <?php endwhile;wp_reset_postdata(); ?> </ul> <?php endif; ?> <?php echo '</div>'; //end div.section }; //endforeach remove_filter( 'posts_where', 'filter_where' ); //フィルターを削除(他のクエリに影響させないため)
フォーラム: 使い方全般
返信が含まれるトピック: 必要なページにだけrel="canonical"を出力したいです。その書き方ではif文の中に入っていません。
<?php if (get_post_meta($post->ID, "canonical", true)) { //if文はこのカッコ $canonical_url=get_post_meta($post->ID, 'canonical',true); echo '<link rel="canonical" href="'.$canonical_url.'" />'; }; //このカッコまでです ?>
もしくは、こちらの方がわかりやすいかもしれませんね。
<?php if (get_post_meta($post->ID, "canonical", true)) { //if文はこのカッコ $canonical_url=get_post_meta($post->ID, 'canonical',true); ?> <link rel="canonical" href="<?php echo $canonical_url; ?>" /> <?php }; //このカッコまでです ?>
これでいけると思いますが・・・いかがでしょうか?
フォーラム: 使い方全般
返信が含まれるトピック: 必要なページにだけrel="canonical"を出力したいです。if文の外にlink rel=~があるので、この一文をif文の中に移動すれば、
値があるときだけ出力されると思います。お試しください。フォーラム: 使い方全般
返信が含まれるトピック: カスタムフィールドの画像を拡大表示したい横から失礼します。
mixed wp_get_attachment_url( [ int $post_id = 98 ] )
こちらだとIDが98のものしか出なくなってしまいます。
現状でhrefに画像のIDが入っていますので、恐らくこうなるかなと思います。<a href="<?php echo wp_get_attachment_url( get_field( 'image1',$post->ID) ); ?>">
お試しください。
よろしくお願いします。
フォーラム: 使い方全般
返信が含まれるトピック: 「利用規約に同意」ボタンを作りたいカスタムフィールドに必須項目をもたせれば可能かと思います。
私は「Advanced Custom Fields」のカスタムフィールドプラグインを利用していますが、
今回の場合なら、上記プラグインの「チェックボックス」を追加すればよいかと思います。
チェックが入っていないと公開ができません。(下書きは出来る模様です)
*「真偽」だとうまくいきませんでした。。また、上記のプラグインに関わらず、
カスタムフィールドを必須にできるプラグインは他にもありますので、
使いやすいものを選んでください。フォーラム: 使い方全般
返信が含まれるトピック: 検索結果で表示された記事のカテゴリーが分かるようにしたい検索結果で
——
検索結果: 東京[カテゴリー1]記事のタイトル
[カテゴリー2]記事のタイトル
・・・
——という風にしたいという解釈でよいでしょうか?
であれば、loop.phpか、loop-search.php(get_template_part()を使用)で記述を書けば可能だと思います。<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?> <div id="serchBox"> <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1> <?php if(has_category()) { //投稿がカテゴリーに属しているときはカテゴリーを出力する $post_cat = get_the_category(); $post_cat = $post_cat[0]->slug; //スラッグ名を出力 echo '<p>'.$post_cat.'</p>'; }; ?> </div> <?php endwhile; ?>
カテゴリーを持っているとき(固定ページなどの場合は除きたいので)だけ、カテゴリーを出力します。
ただし、上記のコードは投稿のカテゴリーがひとつだけの場合なので、
親子関係になっているカテゴリーの場合などはもう少しコードの書き換えが必要です。参考になれば幸いです。
フォーラム: 使い方全般
返信が含まれるトピック: 固定ページの編集画面で表示オプションを開けませんWordPress3.1のときですが、似たようなことがありました。
別のテーマでも同じ現象があるのなら、先にプラグインを疑ったほうがよいかもしれません。私は新規投稿画面でJSが効かなくなった際、プラグインを無効化して再度開いたところ、きちんとJSが動作するようになりました。
参考になれば幸いです。
> hissyさま
お返事が遅くなり申し訳ございません!
そして、Codexのリンクありがとうございます。Codexに載っていたのですね。。調査不足でした。そして、載っていた方法でwp-config.phpに追記したところ、再び予約投稿失敗してしまいました。これはいよいよプラグインを疑うべきだと、入れていたプラグイン全てを一旦無効化した上で試してみたところ、成功しました!
そこで、どのプラグインが悪さをしていたのかとひとつずつ有効化して調べていったところ、なんと「WP Missed Schedule Fix Failed Posts」が原因だったようです!
wp-config.phpに追記する前は、上記プラグインを入れなくても失敗していたので、wp-config.phpに追記すると相性が悪いのかな・・・?と思っています。
ともあれ、無事に予約投稿が成功するようになりました!本当にありがとうございました。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿タイプでカレンダーのような表示がしたいmypacecreatorさま
返信ありがとうございます!
参考URL、確認させていただきますね。後出しになりますが、表示自体はカレンダーのように月~金に割り当てる必要はなく、
単純にその月に投稿されたデータを順番に表示でき、前月・翌月がとれればそれで問題はありません。ひとまず、参考URLを元に試行錯誤してみます。
引き続き、よろしくお願いします。
フォーラム: プラグイン
返信が含まれるトピック: Advanced Custom Fieldsで画像が別の場所に挿入されるどうやら環境の問題だったようで、ブラウザアップローダーではなく、Flashアップローダーに変更すると解決しました。
お騒がせしました。
フォーラム: 使い方全般
返信が含まれるトピック: カスタム投稿タイプ内で月別記事一覧> jim912さん
ご返信ありがとうございます。
ご提示頂いたコードで出力できました!
コメントまで書いて頂いてありがとうございます。後学のためにじっくり読ませて頂きます。本当にありがとうございました!