next_post_link()関数を使用しているときに問題が発生しました。この関数は自動的にエコーするようです。位置上の理由から、リンクを返すためにこれが必要です。この結果を達成するために使用できる機能または回避策はありますか?
next_post_link()関数を使用しているときに問題が発生しました。この関数は自動的にエコーするようです。位置上の理由から、リンクを返すためにこれが必要です。この結果を達成するために使用できる機能または回避策はありますか?
回答:
http://codex.wordpress.org/Function_Reference/get_adjacent_postで作業してみてください。
例:
$next_post_link_url = get_permalink( get_adjacent_post(false,'',false)->ID );
$prev_post_link_url = get_permalink( get_adjacent_post(false,'',true)->ID );
ソースを見ると、next_post_link
は単なるラッパーですadjacent_post_link
。
残念ながら、この関数は「echo」パラメーターの形式を取らないため、独自の関数でコードを複製して値を返すか、出力バッファーでキャッチする必要があります。
ob_start();
next_post_link();
$next_post_link = ob_get_clean();
実際には、はい:get_next_posts_link()
同じ引数を使用して、を使用します。
next_posts_lin()
この関数は、単にの戻り値をエコーget_next_posts_link()
。
編集
ええと、気にしないで。関数名を誤って読みました。
get_next_post()
postオブジェクトを返すを使用できます。次に、返されたIDオブジェクトパラメータからパーマリンクを取得できます。
$nextpost = `get_next_post( $args )`;
$nextpostid = $nextpost->ID;
$nextpostlink = get_permalink( $nextpostid );
next_post_link
てください。自分と同じようにHTMLを生成する必要があります。