d-xanthus
フォーラムへの返信
-
フォーラム: プラグイン
返信が含まれるトピック: WordPressPopularPostsプラグイン WPP_Queryの代替ishitaka様
ご返信ありがとうございます。
なるほど、こんな記載の方法もあるのですね。
おかげさまで無事上手くいきました。
ありがとうございました。フォーラム: 使い方全般
返信が含まれるトピック: 2つのカテゴリー+カスタムフィールドの値で条件設定ikaring様
早速ご提案のコードを試させていただきました。
どうやらうまくいきそうです。
meta_queryの中でrelationが設定できるのですね、勉強になりました。こちらの方法で進めたいと思います。
ありがとうございました。フォーラム: 使い方全般
返信が含まれるトピック: 2つのカテゴリー+カスタムフィールドの値で条件設定ikaring様
ご返信いただきありがとうございます。また返信が遅くなりまして申し訳ないです。最初は以下のようなコードで試したのですが
$args = array( 'category_name' => 'カテゴリーA,カテゴリーB', 'posts_per_page' => -1, 'meta_query' => array( array( 'key'=>'カスタムフィールド', 'value'=>true, ) ) );
この場合、カテゴリーBのtrueのモノしか表示されませんでした。(カテゴリーAは全て表示したい)
クライアントの間違いを防ぐために、ページの複数カテゴリーの選択をOFFにいますが、
カテゴリーBはその上でカスタムフィールドにチェックを入れたものだけ掲載したいと考えています。おっしゃる通りカテゴリーAにもカスタムフィールドを設置して、デフォルトでfalseにしておく、というのも案としてはあるのですが、カテゴリーAに操作する必要のないフィールドを設置するのもどうかと思って…。
(ちなみに上記のコードで’value’=>false,にすると何も表示されませんでした。)フォーラム: プラグイン
返信が含まれるトピック: meta_queryでACFでのカスタムフィールドの条件で抽出できないお世話になります。
いろいろ試した結果、valueの値を、名前ではなくIDの設定に、またIDをダブルコーテーションでくくることで、望み通りの結果が得ることができました。
こちらで解決済みとさせて頂きます。
ありがとうございました。<?php $author_id = $post->post_author;//ユーザーID $author_name = get_the_author_meta('display_name',$author_id) ; $paged = (int) get_query_var('paged'); $args = array( 'paged' => $paged, 'category_name' =>'books',//カテゴリー名 'posts_per_page'=> -1, 'post_type' => 'post', 'meta_query' => array( array( 'key'=>'booksWriter',//ACFのフィールド名 'value'=> '"'.$author_id.'"', 'compare'=>'IN', ) ) ); $posts = get_posts( $args ); ?> <?php if ($posts):?> <?php foreach($posts as $post) : setup_postdata($post)?> -----------中略--------------------- <?php endforeach;?> <?php endif;?>
フォーラム: プラグイン
返信が含まれるトピック: meta_queryでACFでのカスタムフィールドの条件で抽出できないmunyagu様
ご返信いただき、ありがとうございます。
すでにcompareをlikeにしても、何も表示されず、行き詰まっておりました。
Advanced Custom Fieldsの複数値はクセがあるとどこかで読んだことがあったのですが、
そのあたりに原因がありそうですね。実装するかどうかも要検討ですが、
似たような状況の方の対策方法とか、もしあればとも思いますので
もうしばらく、解決済みにしないでフォーラムに置いておこうかと思います。フォーラム: 使い方全般
返信が含まれるトピック: SSLサイトにて、画像の外部リンクを警告あるいは禁止したいToro_Unit様
ご返信いただき、ありがとうございます。
imgタグ自体を取り去ってしまうのはさすがに問題ありかとは思いますが、
http:のみを取り去ってしまうのは確かに有りかもしれませんね。検討してみます。
ありがとうございます。フォーラム: 使い方全般
返信が含まれるトピック: prepare関数(クエリー引数にはプレースホルダーが必要です。)対策についjim912様
早速のご返答ありがとうございます。
prepare メソッドは使わなくても良かったのですね。
早速削除して動作確認したところ警告も消え、動作も問題ありませんでした。
感謝致します。<!-- こちらが最終コード --> <?php $results = $wpdb->get_results(" SELECT YEAR(post_date) AS post_year FROM wp_posts p, wp_term_relationships tr, wp_term_taxonomy tt, wp_terms t WHERE p.ID = tr.object_id AND tr.term_taxonomy_id = tt.term_taxonomy_id AND tt.term_id = t.term_id AND p.post_status = 'publish' AND p.post_type = 'post' AND tt.taxonomy = 'category' AND t.name = 'メディア掲載' GROUP BY post_year ORDER BY post_year DESC ");?> <?php foreach ($results as $result) :?> <li><a>/category/media/<?php echo $result->post_year; ?>"><?php echo $result->post_year; ?>年</a></li> <?php endforeach; ?>
フォーラム: プラグイン
返信が含まれるトピック: contact form 7にPHP変数の値を渡したいすみません、自己解決いたしました。
jQueryを使って、CF7のテキストフィールドに属性として変数を渡すという方法です。
簡単ではありますが、コードをこちらに記述致しますので
同じお悩みの方の参考になれば幸いです。//フッター内 <?php wp_footer(); ?> <script> jQuery('[テキストフィールドのID]').attr('value','<?php echo [変数名]; ?>') </script>
フォーラム: 使い方全般
返信が含まれるトピック: 記事の無いカテゴリースラッグを正常に取得したいフォーラム: 使い方全般
返信が含まれるトピック: 記事の無いカテゴリースラッグを正常に取得したいjim912様
お世話になります。
この度はご返信ありがとうございました。get_queried_objectを使って
無事にカテゴリースラッグが取得できました。クライアントに納品する際は、
記事が無い場合もありますので、助かります。
ありがとうございました。【解決コード】 if ( is_category() || is_single() ) { $cat = get_queried_object(); $slug = $cat->category_nicename; }
フォーラム: 使い方全般
返信が含まれるトピック: メールアドレスの入力確認機能についてDaisuke Takahashi 様
ご返信いただきありがとうございました。
おかげで無事、正常に動作するよう修正することができました。また、質問時、コードの参照先へのアドレスが間違っておりました。
正しくはhttp://www.kitaguchi.jp/contact/96.htmlとなります。
拝見いただいた方、また関係者様にご迷惑をおかけしたことをお詫びします。ちなみに最終のコードはこちらになります。
add_filter( ‘wpcf7_validate_email’, ‘wpcf7_text_validation_filter_extend’, 11, 2 );
add_filter( ‘wpcf7_validate_email*’, ‘wpcf7_text_validation_filter_extend’, 11, 2 );
function wpcf7_text_validation_filter_extend( $result, $tag ) {
$type = $tag[‘type’];
$name = $tag[‘name’];
$_POST[$name] = trim( strtr( (string) $_POST[$name], “\n”, ” ” ) );
if ( ‘email’ == $type || ‘email*’ == $type ) {
if (preg_match(‘/(.*)_confirm$/’, $name, $matches)){
$target_name = $matches[1];
if ($_POST[$name] != $_POST[$target_name]) {
$result[‘valid’] = false;
$result[‘reason’] = array( $name => ‘確認用のメールアドレスが一致していません’ ); //変更行
//旧コード $result[‘reason’][$name] = ‘確認用のメールアドレスが一致していません’;
}
}
}
return $result;
}ありがとうございました。