0

わかりました、stackoverflow と google を検索して検索しましたが、探しているものが見つかりませんでした。次のボタンと前のボタンを同じ投稿タイプの用語にある投稿にリンクする方法を探しています。

「プロジェクト」という名前の投稿タイプがあり、分類法は「projects_category」です。その分類の下にいくつかの用語があり、1 つのプロジェクトの投稿を表示しているときに、その用語内で次と前をクリックできるようにしたいと考えています。これを行う方法はありますか?

更新 (11/13/13) (再び):

これは私が今持っているものです。

<?php
$projectCat = wp_get_post_terms($postid,"projects_category");
if(count($projectCat)){
$projectC = $projectCat[0]->slug;
}
else{
$projectC = "";
}
$args = array(

'post_type'=>'project_post',
'showposts' => -1,
'tax_query' => array(
array(
        'taxonomy' => 'projects_category',
        'terms' => '{$projectC}',  //define your category id or slug here
            'field' => 'slug',
        )
),
'order'=>'ASC', 
);

$postlist = get_posts($args);
$posts = array();
foreach ($postlist as $post) {
$posts[] += $post->ID;
}

$prev_post = get_previous_post(); 
$prevID = $prev_post->ID ;
?>
<?php 
$next_post = get_next_post();
$nextID = $next_post->ID ;
?>          

<?php if (!empty($prevID)) { ?>

<li><a href="<?php echo get_permalink($prevID); ?>"
title="<?php echo get_the_title($prevID) ." ". $projectC; ?>" 
class="p_prev widget_anim"><span></span>Previous</a>
</li>
<?php }

if (!empty($nextID)) { ?>
<li><a href="<?php echo get_permalink($nextID); ?>" 
title="<?php echo get_the_title($nextID) ." ". $projectC;; ?>"  
class="p_next widget_anim">Next<span></span></a>
</li>
<?php }  

wp_reset_postdata();
?>

single-project_post ページで見つかった現在の用語を取得していますが、クエリはそれをキャッチしているようですが、クエリは用語にとどまる必要があることに従っていません。私が持っている他の用語から投稿を抽出しています。クエリで $projectC の代わりに正確な用語を入力しても、次と前の投稿が間違っています。誰でも私を助けることができますか?以前の回答からのこれまでの助けに感謝します。

4

3 に答える 3

0

更新によって上書きされないように、子テーマに functions.php を作成します。次に、投稿の配列を返す関数を作成します。コーデックスは、あなたが求めていることを行う方法を正確に教えてくれます<?php $project_posts_array = get_posts( $args ); ?>。次に、リンクタグでカスタム投稿タイプから関数を呼び出します。

これは同じ Codex ページにあります。

    <div class="alignleft">    
    <a href="<?php echo get_permalink($prevID); ?>"
    title="<?php echo get_the_title($prevID); ?>">Previous</a>
    </div>
    <?php }
    if (!empty($nextID)) { ?>
    <div class="alignright">
    <a href="<?php echo get_permalink($nextID); ?>" 
     title="<?php echo get_the_title($nextID); ?>">Next</a>
    </div>
于 2013-11-08T06:28:04.503 に答える
0

同じ問題がありました。ここで解決策を見つけました: http://bucketpress.com/next-and-previous-post-link-in-same-custom-taxonomy

それがあなたのために働くことを願っています!

于 2014-08-13T16:46:09.130 に答える