投稿したのページめくりの順番を変えたい

0
いいねをした人: 居ません
  • このトピックには16件の返信、3人の参加者があり、最後にアバター画像otomewebにより2週、 6日前に更新されました。
15件の投稿を表示中 - 1 - 15件目 (全17件中)
  • 投稿者
    投稿
  • #139867
    アバター画像otomeweb
    参加者
    17

    【お使いの Snow Monkey のバージョン】 25.4.6
    【お使いの Snow Monkey Blocks のバージョン】20.5.4
    【お使いの Snow Monkey Editor のバージョン】9.4.0
    【お使いの PHP のバージョン】7.4.33
    【お使いのブラウザ】chrome
    【当該サイトのURL】https://x05.piemx.me/%e8%a8%98%e4%ba%8b%e4%b8%80%e8%a6%a7/

    ### 実現したいこと

    投稿下のページめくりが、投稿順になっている。
    これを、表示順と同様、ASCIIコード順にしたい

    ### 発生している問題

    投稿下のページめくりが、投稿順になっていて、読者に何の順番かわからない

    ### 試したこと

    以下のコードを改良してできないかとおもったけど、該当箇所をフックする方法がわからなかった。

    
    /**
    投稿一覧の制御
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 一覧または関連用語のとき
    		if ( 'archive' === $args['vars']['_context'] || 'snow-monkey/related-posts' === $args['vars']['_context'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 抜粋の文字数を変更
    				$args['vars']['_excerpt_length'] = 40; // 任意の数値を設定してください
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'title' );
    				$args['vars']['_posts_query']->set( 'order', 'ASC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    		}
    		return $args;
    	}
    );
    
    
    0
    いいねをした人: 居ません
    #139872
    アバター画像キタジマ タカシ
    閲覧者
    2336

    「投稿下のページめくり」というのは具体的にどの部分のことでしょうか?
    提示いただいた URL に表示されている一覧は

    AFAB → AGA → AID、IVF-D → AMAB → A面 → BDSM
    

    となっていて、意図した順序になっているように見えますが…。

    0
    いいねをした人: 居ません
    #139878
    アバター画像otomeweb
    参加者
    17

    いや、そのはあとから追加したから、たまたまなんです

    0
    いいねをした人: 居ません
    #139888
    アバター画像otomeweb
    参加者
    17

    中性、中性的  → おかま → パートナーシップ宣誓制度、同性パートナシップ条例

    と、ページめくりは後半なってるので、やはり投稿順になってるとおもわれます

    項目の並び順は

    Xジェンダー

    おかま

    おねぇ

    です

    0
    いいねをした人: 居ません
    #139900
    アバター画像キタジマ タカシ
    閲覧者
    2336

    検索してみたら、五十音順に並べる用のカスタムフィールドを用意して、そのカスタムフィールドで並び替えるという記事がでてくるので、そもそも五十音順にするというのが普通にはできないのかも?

    自動が無理なら下記のようなプラグインで管理画面上で並べ替えてしまうのも良いかもしれません。

    0
    いいねをした人: 居ません
    #139903
    アバター画像otomeweb
    参加者
    17

    その手しかないのですね。てっきり用語一覧はできたから出来るのかなとおもってました

    どっちを採用するか検討してみます。ありがとうございました

    ちょっと、結果でるまでトピックこのままにさせて下さい

    0
    いいねをした人: 居ません
    #139905
    アバター画像otomeweb
    参加者
    17

    カスタムフィールドつくる方法で作業をはじめました
    ふりがなには初期値で「あ」がはいってます
    一部にフリガナを振りました

    しかしページめくりが変わりません
    投稿一覧と、投稿でのページめくりが混乱しています
    どちらもカスタムフィールドでならべたいです

    コードおかしいところみてもらえますか

    
    /**
    投稿一覧の制御
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 一覧または関連用語のとき
    		if ( 'archive' === $args['vars']['_context'] || 'snow-monkey/related-posts' === $args['vars']['_context'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 抜粋の文字数を変更
    				$args['vars']['_excerpt_length'] = 40; // 任意の数値を設定してください
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'title' );
    				//$args['vars']['_posts_query']->set( 'meta_key', 'furigana' );
    				//$args['vars']['_posts_query']->set( 'orderby', 'meta_value' );
    				$args['vars']['_posts_query']->set( 'order', 'ASC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    		}
    		return $args;
    	}
    );
    
    /**
    投稿の並び順
     */
    function my_orderby_meta_key( $query ) {
      if ( ! is_admin() ) {
        if( $query->is_main_query() ) {
          if( $query->is_post_type('post') ) {
            $query->set( 'meta_key', 'furigana' ); // ふりがなのカスタムフィールド名
            $query->set( 'orderby', 'meta_value' );
            $query->set( 'order', 'ASC' );
            $query->set( 'post_type', array( 'post' ) );
          }
        }
      }
    }
    add_action( 'pre_get_posts', 'my_orderby_meta_key' );
    
    0
    いいねをした人: 居ません
    #139913
    アバター画像キタジマ タカシ
    閲覧者
    2336

    すみません、上のほうでも書きましたが、「投稿一覧」と「投稿でのページめくり」というのが具体的にどこを指しているのかがわかっていないので、それぞれの URL、あるいはそれぞれのスクショを頂くことはできますか?

    0
    いいねをした人: 居ません
    #139916
    アバター画像otomeweb
    参加者
    17

    投稿でのページめくりとはここの部分のことです! わかりにくくてスミマセン

    0
    いいねをした人: 居ません
    #139921
    アバター画像キタジマ タカシ
    閲覧者
    2336

    ありがとうございます! 前後それぞれの投稿は、WordPress 標準の「前後の投稿を取得する関数」で取得しています。その関数の処理を辿っていくと、下記の関数で実際の取得処理が行われているようでした。

    ただ、具体的にどうやればその取得条件を変えて、つまり特定のソート条件の中で前後の投稿を取得するかというやり方まではわかりませんでした。いっぱいフックがあるみたいなのでめちゃくちゃ工夫すればできないことはないのかもしれませんが、そこまでやるのであれば各記事の公開日を調整するとか、並び替えプラグインで並び替えて get_{$adjacent}_post_sort フックでソート条件を menu_order にする(動作未確認)、のほうができそうかなと感じました。

    0
    いいねをした人: 居ません
    #139928
    まーちゅう
    参加者
    365

    動作確認できてませんが、こんな感じのコードになると思います

    1
    いいねをした人:
    #139931
    アバター画像otomeweb
    参加者
    17

    お二人ともありがとうございました
    思った以上に深い問題なんですね

    並び変えプラグインは200項目を50音順に手作業で並び変える手間と、新項目をかんがえると避けたく
    カスタムフィールドでいきたいです

    まーちゅーさんのGitHubのコードは、my-sonw-monkey.phpに記述して動作する可能性ありますか?
    そもそもfunction.phpとmy-sonw-monkey.phpは互換性あるんですよね

    それとも子テーマ作ってカスタマイズレベルですか

    0
    いいねをした人: 居ません
    #140022
    まーちゅう
    参加者
    365

    動作確認する場合は、my-sonw-monkeyにコード追加でOKです。

    0
    いいねをした人: 居ません
    #140044
    アバター画像otomeweb
    参加者
    17

    まーちゅうさんのコードをmy-sonw-monkeyにコピーしました
    エラーはでてないのですが、まだソートが動作しません

    カスタムフィールドのキーは確認しました。
    あとどっか設定等でそろえておくところありますか

    0
    いいねをした人: 居ません
    #140045
    まーちゅう
    参加者
    365

    一応断っておきますが、上のコードは動作確認もしていなくて、こんな感じでいろいろコード書かないと実現できないですよということを理解してもらうためにChatGPTに書かせたコードです。
    きちんと動作させるためには、前後の投稿のタイトル(furigana)だけでなく、リンクURLも取得しないといけないし、
    snow-monkey/template-parts/content/prev-next-nav.php の中身も書き換えないとダメだと思います。

    並び変えプラグインは200項目を50音順に手作業で並び変える手間と、新項目をかんがえると避けたく
    カスタムフィールドでいきたいです

    手作業で全部の記事を並べ替えるのは手間でしょうが、いろいろなフックを調べたりして時間をかけてコードを書くのもかなりの手間です。
    私の感覚では、誰かに頼んで有償対応してもらうぐらいのレベルだと思います。

    要望は分かりますが、このフォーラムはコミュニティであり、カスタマーサポートセンターではありませんので、そこのところは理解していただきたいと思います。

    並べ替えのプラグイン Post Types Order の有料版に Advanced Post Types Order というのがあります。

    こちらのプラグインなら、自動ソート機能があるので何百記事でも簡単に並べ替えができます。
    カスタムフィールドにも対応しているようです。

    39ドルで買い切りのプラグインですので、検討してみてはどうでしょうか?

    2
    いいねをした人:
15件の投稿を表示中 - 1 - 15件目 (全17件中)
  • このトピックに返信するにはログインが必要です。

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。