フォーラムへの返信

15件の返信を表示中 - 1 - 15件目 (全28件中)
  • フォーラム: プラグイン
    返信が含まれるトピック: theme my loginで英語表記の部分を日本語にしたい

    yah!!さん!!
    こちらの環境でも無事出来ました!!

    驚いたことに、仕組み上、英語だけでなく日本語でも
    いけるということがわかり、
    さらに重宝するという感じです。

    もちろん、最初から日本語表記出来ている部分については、
    poeditなどで編集するのも良いのでしょうが、
    yah!!さんのコードの応用で変更できるのは、大変助かります。
    ※私は、メールアドレスがすでに利用されている時のエラー表示を
     変更させていただきました。

    この問題は、私の中でも常に問題として抱えていたのですが、
    このような形で対応することが出来て、
    本当に感謝しています。
    半ば興奮のような感じです。

    このコードはぜひ使わせていただきたいと思います。
    ありがとうござます!!!

    フォーラム: プラグイン
    返信が含まれるトピック: theme my loginで英語表記の部分を日本語にしたい

    yah!!さん
    こちらこそ、返信が遅くなってしまい、
    大変申し訳ありませんでした。

    return $custom_error;
    return $errors;

    の2行を削除したのですが、
    特に変化は見られませんでした。

    ご報告という形になってしまいましたが、
    よろしくお願い致します。

    フォーラム: プラグイン
    返信が含まれるトピック: theme my loginで英語表記の部分を日本語にしたい

    何度もすいません。
    報告という形になるのですが、

    yah!!さんがこのトピックで提示してくださいましたコードを
    add_filterのところを
    registration_errorsから
    user_profile_update_errorsに変更して
    貼り付けてみました。

    その結果、
    エラー: お名前を入力してください
    エラー: お名前フリガナを入力してください
    エラー: 電話番号を入力してください
    エラー: 会員規約に同意をチェックしてください
    というのが表示されましたが、
    パスワードとメールアドレスのエラーは英語表記のままでした。

    また、英語表記でのエラーなのですが、
    私の画面では、
    ERROR: You entered your new password only once.
    ERROR: Please enter the same password in the two password fields.
    ERROR: Please enter an e-mail address.
    というように表示され、
    yah!!さんの提示して下さっているコードと
    若干の違いが見られました。
    これらも、英語表記が変化しない原因なのでしょうか。

    この後も自分で調べてみたのですが、
    やはり変更方法がわからないので、
    もしわかるようでしたら、教えていただけますと幸いです。

    フォーラム: プラグイン
    返信が含まれるトピック: theme my loginで英語表記の部分を日本語にしたい

    yah!!さん
    たびたび失礼します。

    yah!!さんが上記のコードでも記述してくださっている通りですが、
    まさしくプロフィールのパスワードとメールアドレスの部分だけが
    英語表記のままとなってしまいます。

    そこで、yah!!さんのサイトやここでのお話をもとに、
    プロフィールの英語表記について以下のようなコードを
    functions.phpに記述したのですが、
    特に変化が見られませんでした。

    <?php
    function tml_registration_errors( $errors ) {
    
        $rep1 = array();
        $rep2 = array();
        array_push($rep1, "<strong>ERROR</strong>");
        array_push($rep2, "<strong>エラー</strong>");
        array_push($rep1, "Please enter your password twice.");
        array_push($rep2, "パスワードを2回入力してください。");
        array_push($rep1, "Please enter the same password in the two password fields.");
        array_push($rep2, "パスワードは同じものを2回入力してください。");
        array_push($rep1, "This username is already registered, please choose another one.");
        array_push($rep2, "同じメールアドレスがすでに登録されています。");
        $custom_error = new WP_Error();
        foreach ( $errors -> errors as $key => $val ) {
            $tmp = str_replace($rep1,$rep2,$val[0]);
            $custom_error -> add($key, $tmp);
        }   
    
        return $custom_error;
        return $errors;
    }
    add_filter( 'user_profile_update_errors', 'tml_registration_errors' );
    ?>

    なにか他に書き加える必要などあるのでしょうか?
    やはりコアファイルを書き換える必要があるのでしょうか?
    もしよろしければご意見をいただけますと幸いです。

    フォーラム: プラグイン
    返信が含まれるトピック: theme my loginで英語表記の部分を日本語にしたい

    yah!!さん、
    ご返信ありがとうございます。

    2点確認したいのですが、
    このコードは具体的にどこに記述するのがよいのでしょうか?
    functions.phpではないかも・・と思いました

    また、私の希望としては、プロフィール画面のエラーの英語表記の
    変更なのですが、コアファイルなどを
    いじることなく、プロフィールのエラーを日本語化することが出来る
    ということで大丈夫なのでしょうか?

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    gqevu6bsizさん

    丁寧にご回答いただき、本当にありがとうございます。
    また、返信が遅くなってしまい、
    申し訳ありませんでした。

    $public_query_varsにmeta_keyを追加する

    ですが、私の理解力が足りなくて
    すいませんでした。
    理解して、導入することができました。ありがとうございます。

    また、ドロップダウンメニューについては、
    無事機能しました。
    1つにする、query_postsを使用しないという
    2つの大きな目標を達成できたので、
    大変感謝いたします。
    chrome以外(IEとfirefox)でも機能しました。
    javascriptは、ドロップダウンリストの下に貼り付けることにしました。

    そして、hissyさんが教えてくださいました、
    投稿日時の絞り込みも、ソートのドロップダウンリストと同時に
    機能させることが出来ました。

    gqevu6bsizさんには、突然のご質問に対応していただき、
    感謝いたします。
    また、hissyさんには、長期間にわたりまして、教えていただき
    感謝いたします。

    お2人には大変お世話になりました。
    理解力が足りず、本当に申し訳なかったです。

    トピックのタイトルの目的は達成できましたので、
    こちらの一方的な行動で申し訳ないですが、
    解決済みとさせていただきます。

    また、お世話になる場面がありましたら、
    その時は、またご迷惑をおかけするかもしれませんが、
    よろしくお願いいたします。

    今回は本当にありがとうございました。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    gqevu6bsizさん

    こちらの一方的かつわがままなご質問に対応していただき、
    本当にありがとうございます。
    こちらのトピックの延長です。

    追加的な質問になってしまい、申し訳ありません。

    まず、
    gqevu6bsizさんとgakuseiさんとのやりとりで
    作成されているコードで
    <?php query_posts( $args ); ?>を使用しない場合、

    function my_query_vars( $public_query_vars ) {
        $public_query_vars[] = 'start_date';
        $public_query_vars[] = 'meta_key';
        return $public_query_vars;
    }

    というコードの貼り付けで大丈夫なのでしょうか。

    また、
    「記事一覧のソートをpre_get_postsで出来るようにしたい」という
    タイトルで、以下のコードをhissyさんが紹介して下さっていましたが、

    <form action="<?php echo home_url(); ?>" method="get">
    <?php if(is_category()){
    	$cat_id = get_queried_object_id(); ?>
    	<input type="hidden" name="cat" value="<?php echo esc_attr($cat_id); ?>" />
    <?php } ?>
    <?php if(is_tag()){
    	$tag = get_query_var('tag'); ?>
    	<input type="hidden" name="tag" value="<?php echo esc_attr($tag); ?>" />
    <?php } ?>
    <?php if(is_search()){
    	$search = get_query_var('s'); ?>
    	<input type="hidden" name="s" value="<?php echo esc_attr($search); ?>" />
    <?php } ?>
    	<select name="orderby" onchange="submit(this.form)">
    		<option value="date" <?php selected(get_query_var('orderby'),'date'); ?>>日付</option>
    		<option value="title" <?php selected(get_query_var('orderby'),'title'); ?>>タイトル</option>
    		<option value="meta_value_num" <?php selected(get_query_var('orderby'),'meta_value_num'); ?>>カスタムフィールド</option>
    	</select>
    	<select name="meta_key" onchange="submit(this.form)">
    		<option value="">カスタムフィールド指定なし</option>
    		<option value="test_field_key" <?php selected(get_query_var('meta_key'),'test_field_key'); ?>>カスタムフィールド指定する</option>
    	</select>
    	<select name="order" onchange="submit(this.form)">
    		<option value="DESC" <?php selected(get_query_var('order'),'DESC'); ?>>降順</option>
    		<option value="ASC" <?php selected(get_query_var('order'),'ASC'); ?>>昇順</option>
    	</select>
    </form>

    このコードを1つにまとめたいということでした。
    自分の解釈が間違っていたら申し訳ないです。
    (このトピックでの、日付での絞りこみはまた別のドロップダウンにしたいと思っています。
     なので、日付での絞り込みと、記事一覧のソートを両方使えるようにしたいと
     いう感じです。
     そこで、gqevu6bsizさんのソートを使いたいのですが、gqevu6bsizさんの
     コードの最後のquery_postsと日時の絞り込みのコードとがぶつかってしまう、
     というところが問題のようです)

    そして、最後に記載していただいていますjavascriptは
    どこへ記載するのがよいのでしょうか?
    functions.phpに貼り付けたらエラーになってしまったので・・

    firth

    (@firth)

    解決済みのところ、申し訳ございません。

    実は、gakuseiさんとgqevu6bsizさんとのやりとりで
    作成されたソートのコードを使用しているものです。

    今回質問をしたいのですが、
    どうしてもgqevu6bsizにお答えをいただきたかったので、
    質問をさせていただきました。
    (別のトピックが必要であれば、こちらでたてさせていただきます。)

    私は、以下のコードを使用させていただいています

    <?php $uri = home_url( '/' ); ?>
        <?php if( is_category() or is_tag() or is_tax() ) : ?>
          <?php $term = get_queried_object(); ?>
          <?php if ( $term ) : ?>
            <?php $uri = get_term_link( $term , $term->taxonomy ); ?>
          <?php endif; ?>
        <?php endif; ?>
    	<?php echo $uri; ?>
    
        <div class="sort">
        <select name="original-sort-dropdown" onchange='document.location.href=this.options[this.selectedIndex].value;'>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'date' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'date' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>日付の新しい順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'date' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'date' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>日付の古い順</option>  
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'title' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'title' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>タイトル順(あ~わ・A~Z)</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'title' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'title' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>タイトル順(わ~あ・Z~A)</option>  
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_average' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_average' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価の高い順(平均)</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_average' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_average' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価の低い順(平均)</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_score' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_score' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価の高い順(総合)</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_score' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_score' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価の低い順(総合)</option>  
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_users' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_users' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価数の多い順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'ratings_users' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'ratings_users' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>評価数の少ない順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'comment_count' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'comment_count' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>コメント数の多い順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'comment_count' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'comment_count' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>コメント数の少ない順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'views' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'views' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>閲覧数の多い順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["meta_key"] ) && !empty( $_GET["order"] ) ) : if( $_GET["meta_key"] == 'views' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'meta_key' => 'views' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>閲覧数の少ない順</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'author' && $_GET["order"] == 'ASC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'author' , 'order' => 'ASC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>投稿者順(A~Z・あ~わ)</option>
    
          <?php $Selected = ''; if( !empty( $_GET["orderby"] ) && !empty( $_GET["order"] ) ) : if( $_GET["orderby"] == 'author' && $_GET["order"] == 'DESC' ) : $Selected = 'selected="selected"'; endif; endif; ?>
          <option value="<?php echo add_query_arg( array( 'orderby' => 'author' , 'order' => 'DESC' , "s" => get_query_var('s') ), $uri ); ?>" <?php echo $Selected ?>>投稿者順(わ~あ・Z~A)</option>  
    
        </select>
            </div>   
    
        <?php
        // 何の指定もないときのデフォルトのソート順
    	$paged = get_query_var( 'paged' );
    	if( empty( $paged ) ) {
    		$paged = 0;
    	}
        $args = array( 'posts_per_page' => get_option('posts_per_page') , 'orderby' => 'date' , 'order' => 'DESC' , 'paged' => $paged );
    
        if( is_category() ) {
          $args["cat"] = get_query_var( "cat" );
        } elseif( is_tag() ) {
          $args["tag"] = get_query_var( "tag" );
        }
        $taxonomy = get_query_var( "taxonomy" );
        if( !empty( $taxonomy ) ) {
          $args[$taxonomy] = get_query_var( "term" );
        }
        $args["s"] = get_query_var( "s" );
    
        if( !empty( $_GET["meta_key"] ) ) {
          $args["meta_key"] = strip_tags( $_GET["meta_key"] );
          $args["orderby"] = 'meta_value_num';
          } elseif( !empty( $_GET["orderby"] ) ) {
          $args["orderby"] = strip_tags( $_GET["orderby"] );
          unset( $args["meta_key"] );
    
        }
    
        if( !empty( $_GET["order"] ) ) {
          $args["order"] = strip_tags( $_GET["order"] );
        }
        ?>
    
        <?php query_posts( $args ); ?>
    	<pre><?php print_r($args); ?></pre>
    
    	<section id="primary" class="site-content">
    		<div id="content" role="main">
    
    		<?php if ( have_posts() ) : ?>
    
    			<header class="page-header">
    				<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentytwelve' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
    			</header>
    
    			<?php twentytwelve_content_nav( 'nav-above' ); ?>
    
    			<?php /* Start the Loop */ ?>
    			<?php while ( have_posts() ) : the_post(); ?>
    				<?php get_template_part( 'content', get_post_format() ); ?>
    			<?php endwhile; ?>
    
    			<?php twentytwelve_content_nav( 'nav-below' ); ?>
    
    		<?php else : ?>
    
    			<article id="post-0" class="post no-results not-found">
    				<header class="entry-header">
    					<h1 class="entry-title"><?php _e( 'Nothing Found', 'twentytwelve' ); ?></h1>
    				</header>
    
    				<div class="entry-content">
    					<p><?php _e( 'Sorry, but nothing matched your search criteria. Please try again with some different keywords.', 'twentytwelve' ); ?></p>
    					<?php get_search_form(); ?>
    				</div><!-- .entry-content -->
    			</article><!-- #post-0 -->
    
    		<?php endif; ?>
    
    		</div><!-- #content -->
    	</section><!-- #primary -->
    
    <?php get_sidebar(); ?>
    <?php get_footer(); ?>

    大変助かると思っていたのですが、
    query_postsのコードがあると、ぶつかってしまうコードを使用しています。
    gqevu6bsizさんが作成して下さっていましたソートのコードで
    query_postsを使用しないことは可能なのでしょうか?

    具体的には

    <?php
    // 何の指定もないときのデフォルトのソート順
    $paged = get_query_var( ‘paged’ );
    if( empty( $paged ) ) {
    $paged = 0;
    }
    $args = array( ‘posts_per_page’ => get_option(‘posts_per_page’) , ‘orderby’ => ‘date’ , ‘order’ => ‘DESC’ , ‘paged’ => $paged );

    if( is_category() ) {
    $args[“cat”] = get_query_var( “cat” );
    } elseif( is_tag() ) {
    $args[“tag”] = get_query_var( “tag” );
    }
    $taxonomy = get_query_var( “taxonomy” );
    if( !empty( $taxonomy ) ) {
    $args[$taxonomy] = get_query_var( “term” );
    }
    $args[“s”] = get_query_var( “s” );

    if( !empty( $_GET[“meta_key”] ) ) {
    $args[“meta_key”] = strip_tags( $_GET[“meta_key”] );
    $args[“orderby”] = ‘meta_value_num’;
    } elseif( !empty( $_GET[“orderby”] ) ) {
    $args[“orderby”] = strip_tags( $_GET[“orderby”] );
    unset( $args[“meta_key”] );

    }

    if( !empty( $_GET[“order”] ) ) {
    $args[“order”] = strip_tags( $_GET[“order”] );
    }
    ?>

    <?php query_posts( $args ); ?>

    の最後にあります、query_postsです。

    勝手な注文であり、お忙しいところ申し訳ないですが、
    ご回答いただけますと幸いです。
    よろしくお願い致します。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    hissyさんのコードをいろいろ変えてみようと思ったのですが、
    なかなか1つにすることが出来ませんでした。

    また、gakuseiさんとgqevu6bsizさんとのやりとりでのコードも
    query_postsが無い場合が分かりませんでした。

    ただ、hissyさんには何度もお答えをいただき、
    実際に投稿日時での絞り込みも出来るところまできたので、
    ぜひ、投稿日時に関するコードは使用したいと思っています。

    一方で、記事のソートも私にとっては必要な機能なので、
    使用できるようにしたいと思い、
    どちらか一方を諦める、というのを避けたいと思っています。

    なので、
    私も努力しますが、もしドロップダウンを1つにまとめ、
    query_postsのコードを使用しないような
    コードがあるようでしたら、ぜひ教えていただきたいです。

    長い期間申し訳ないですが、
    よろしくお願いします。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    自分のサイトで使われていたquery_postsは、
    このフォーラムのgakuseiさんとgqevu6bsizさんとのやりとりで
    作成されていました、
    記事一覧のソートをタクソノミーで出来るようにしたい
    というトピックで
    作られていた、記事一覧のソートのためのコードで
    query_postsが使われていました。

    ただ、さきほどフォーラムを見たところ、
    別のやりとりの部分で、hissyさんが作成していましたソートのコードを発見しました。
    このコードを入れて、今回の目的である日時での絞り込みを行ったところ、
    絞り込みができました。

    ただ、1点要質問というかお願いというかなのですが、
    hissyさんが作成していました、ソートのコードは
    ドロップダウンが3つ表示されるものでしたが、
    あのドロップダウンを1つにする(まとめる形というのでしょうか?)ことってできるのでしょうか?

    また、難しいようでしたら、
    gakuseiさんとgqevu6bsizさんとのやりとりで行われていたコードを
    使用したいので、
    gakuseiさんとgqevu6bsizさんとのやりとりでのコードで
    query_postsを使わないことはできるのでしょうか?

    話題がそれてしまい、申し訳ありません。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    hissyさんがおっしゃってくださったように、
    たしかにquery_postsを使っていました。

    ただ、このquery_postsをはずすと、
    別の部分のコードが機能しなくなってしまう、
    という状況でした。

    調べてもよくわからなかったのですが、
    これは仕方のないことなのでしょうか?

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    hissyさん
    丁寧に回答していただき、ありがとうございます。

    確認なのですが、
    以下のコードをfunctions.phpに

    function my_query_vars( $public_query_vars ) {
        $public_query_vars[] = 'start_date';
        return $public_query_vars;
    }
    function my_parse_query( $query ) {
        if ( $query->get('start_date') && !$query->is_category() ) {
            $query->is_search = true;
            $query->is_home = false;
        }
        return $query;
    }
    function my_search_where( $where, $query ) {
        if ( is_admin() || ! $query->is_main_query() )
            return $where;
    
        global $wpdb;
        if ( $query->is_search() || $query->is_category() ) {
            if ( $query->get('start_date') ) {
                $start_date = date('Y-m-d', strtotime($query->get('start_date')));
                $where .= " AND $wpdb->posts.post_date >= '$start_date'";
            }
        }
        return $where;
    }
    add_filter( 'query_vars', 'my_query_vars');
    add_filter( 'parse_query', 'my_parse_query');
    add_filter( 'posts_where', 'my_search_where', 10, 2 );

    以下のコードをカテゴリーアーカイブのページに

    <?php if(is_category()){
    	$cat_id = get_queried_object_id(); ?>
    	<form action="<?php echo home_url(); ?>" method="get">
    		<input type="hidden" name="cat" value="<?php echo $cat_id; ?>" />
    		<select name="start_date" onchange="submit(this.form)">
    		<option>絞り込み</option>
    		<option value="<?php echo date("Y-m-d",strtotime("-1 day")); ?>">1日前</option>
    		<option value="<?php echo date("Y-m-d",strtotime("-1 week")); ?>">1週間前</option>
    		<option value="<?php echo date("Y-m-d",strtotime("-1 month")); ?>">1月前</option>
    		<option value="<?php echo date("Y-m-d",strtotime("-1 year")); ?>">1年前</option>
    		</select>
    	</form>
    <?php } ?>

    それぞれ記述するという形で大丈夫でしょうか。

    私の作っているサイトで記述をしてみました。

    私は、<?php echo $wp_query->found_posts; ?>で
    投稿の件数を表示しているのですが、
    ここでの数字は変更されました。

    ですが、私は記事のタイトルを一覧で表示しているものの、
    一覧で表示される記事自体に変化がありませんでした。
    (説明が上手に出来なくて申し訳ありません。)

    という状況なのですが、
    他に必要な工夫などはあるのでしょうか。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    hissyさん
    返信が遅くなってすいませんでした。

    いろいろと考えて、また別のトピックをたてて
    質問することにしてみます。

    お手数をかけました。
    ありがとうございました。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    サイトに入れなくなってしまった、というのは
    画面が真っ白になってしまった状態です。
    説明不足で申し訳なかったです。

    hissyさんが教えてくださいましたコードを貼りつけ、
    私が1つ手前で記載したドロップダウンのコードを
    カテゴリーアーカイブに貼り付けて動かしてみたのですが、
    404ページになってしまいました。
    (検索のときの絞り込みでは問題が無かったのですが・・)

    hissyさんのコードと私のドロップダウンメニューは
    直接は関係ないものなのでしょうか。

    フォーラム: 使い方全般
    返信が含まれるトピック: 投稿日時で絞り込みをしたい
    firth

    (@firth)

    いろいろと理解できていないくて申し訳ないです。

    検索する時については、
    end_dateの方が無くても動くようにはなりました。
    ありがとうございます。

    ただ、category.phpなどで絞り込みが出来るように
    なるためにと思い、
    is_searchの部分をis_categoryに変更したところ、
    サイトに入れなくなってしまいました。

    また、category.phpの画面上で絞り込みをしようと思い、
    以下のようなコードにしてみたのですが、
    機能しませんでした。

    <select name="start_date" onChange="location.href=value;">
    <option value="<?php echo date("Y-m-d",strtotime("-1 day")); ?>">1日前</option>
    <option value="<?php echo date("Y-m-d",strtotime("-1 week")); ?>">1週間前</option>
    <option value="<?php echo date("Y-m-d",strtotime("-1 month")); ?>">1月前</option>
    <option value="<?php echo date("Y-m-d",strtotime("-1 year")); ?>">1年前</option>
    </select>

    このようなコードと、hissyさんが示してくださいましたコードとは
    関係があるのでしょうか?

15件の返信を表示中 - 1 - 15件目 (全28件中)