質問: 投稿ナビゲーションのために特定の投稿に入れるためのショートコード[next]と[previous]の作成 私は本当にいくらか助けを必要としています、私はこの要求で他に向けるべき場所を知りません。自分の投稿にショートコードを追加したいのですが。テンプレートタグget_next_post()およびget_previousは、各投稿ページで投稿ナビゲーションを表示したくないため、表示される場所を制御したいので、使用できません。 html構造のdivでは、投稿で作成しました。だから私が必要なのはget_next_post()とget_previous_post()からショートコードを生成することです。
回答: 上記のコードにはいくつか問題がありました。正しい場所で画面にエコーを表示させるには、ショートコードの出力をob_start()で囲む必要があります。また、上記のコメントの1つとして、これらの関数はすでに結果をエコーしているので、それらをreturnステートメントに入れても正しく機能しません。これが私の修正です:add_shortcode( 'prev', 'prev_shortcode' ); add_shortcode( 'next', 'next_shortcode' ); function next_shortcode($atts) { global $post; ob_start(); next_post_link( '<div class="nav-next">%link</div>', 'next post link' ); $result = ob_get_contents(); ob_end_clean(); return $result; } function prev_shortcode($atts) { global $post; ob_start(); previous_post_link( '<div class="nav-previous">%link</div>', 'previous post link' ); $result = ob_get_contents(); ob_end_clean(); return $result; }