機能get_adjacent_post()
を使用できます。この機能を使用すると、次のポストオブジェクトと前のポストオブジェクトを取得できます。次の投稿の前と後を検索するには、3番目のパラメータをtrueに設定する必要があります。最後のパラメータは、選択され、制限されたタクソノミー内の隣接する投稿を得ることを可能にする。
$previous_adjacent_post = get_adjacent_post(true,'',true, 'product_cat');
$next_adjacent_post = get_adjacent_post(true,'',false, 'product_cat');
if(is_a($previous_adjacent_post, 'WP_Post')){
$previous_link = get_permalink($previous_adjacent_post->ID);
$previous_title = $previous_adjacent_post->post_title;
}
if(is_a($next_adjacent_post, 'WP_Post')){
$next_link = get_permalink($next_adjacent_post->ID);
$next_title = $next_adjacent_post->post_title;
}
この例でis_a()
条件は、応答が(応答が空またはヌルであるように文字列からオブジェクトを取得しようとしている)が発見されていない場合にエラーを回避します。
詳細および例get_adjacent_post()
カスタムフィールドでフィルタする、最終的にフィルタ"get_{$adjacent}_post_where":
を使用することができます。
EDIT:あなたが追加したリンクと説明して
、あなたが使用するプラグインでこれを行うことができますようだ:
in_same_meta
がかどうかを次/前を示します投稿は現在の投稿と同様の カスタムフィールド値を持つ必要があります。一致させるカスタムフィールドの名前を に渡す必要があります。あなたは「出版社」という名前のカスタムフィールド を持っていた、そしてあなたは、次/前のリンクは同じ出版社から タイトルにつながるしたい場合たとえば、:
<?php next_post_link_plus(array('in_same_meta' => 'publisher')); ?>
そのin_same_metaではありませんのでご注意くださいカスタムフィールド ソートと互換性があります。 order_byが 'custom'または 'numeric'に設定されている場合、 in_same_metaは無効になります。
希望すると助かります!
私は全く私を助けてくれるのではないかと恐れています。私はこの結果を得るためにこのプラグインを使用しなければなりませんでした。 http://www.ambrosite.com/plugins/next-previous-post-link-plus-for-wordpress –
私は努力を感謝しますが、そのコードは私のために働いていませんでした。これは私に正しいリンクを与えたものです: <?php next_post_link_plus(array( 'order_by' => '数値'、 'meta_key' => 'date_of_auction')); ?> –
ネイティブのWordPress関数を使用するのか、プラグインのみを使用したいのか分かりませんでした。プラグインの動作をWordPressの機能で再現したい場合は、これが可能です。別の質問です。 – Benoti