单个帖子面包屑没有链接回自定义帖子类型索引?

时间:2012-08-24 作者:zoaCode

我使用的是面包屑代码,它不会在两个自定义的单篇文章页面上放置链接,链接回两个自定义的文章类型索引页面。可在此处查看完整的面包屑代码:http://pastebin.com/xNwXxWv6


if(get_post_type() == \'Portfolio\'){
 echo \'<a href="\' . \'http://www.mysite.com/web-portfolio\'  . \'">\' .  \'Portfolio\'. \'</a>\' . $markup;

} else if(get_post_type() == \'Artwork\'){
 echo \'<a href="\' . \'http://www.mysite.com/art-portfolio\'  . \'">\' . \'Artwork\' .  \'</a>\' . $markup;
}
编辑:以上代码已经解决了这一问题,感谢所有提供帮助的人。

2 个回复
最合适的回答,由SO网友:janw 整理而成

如果您阅读codex 你会看到的is_single 接受帖子id/标题/段落和

EDIT
如果您使用两种自定义帖子类型,则WP将选择右侧single-POSTNAME.php 在您的支票中,您最好检查posttype,如:

if ( get_post_type() == \'postfolio\' ) { /*do stuff*/ }

SO网友:Tom J Nowell

此处引用模板继承权:

http://codex.wordpress.org/Template_Hierarchy

enter image description here

我们可以看到您的选择包括:

单人。php单篇文章。php

  • 单-{post type}。php
  • 但从您的问题来看,我建议不要使用多个模板。

    相反,通过后期元/自定义字段定义它是一个公文包还是一件艺术品。您可以在后端添加复选框或单选按钮来控制它,或者手动设置它。

    $url = \'<a href="">artwork url</a>\';
    $type = get_post_meta($post->ID,\'zoa_post_type\',true);
    if($type == \'portfolio\'){
        $url = \'<a href="">portfolio url</a>\';
    }
    
    此外,is_single 不采用模板名称。

    Edit

    你似乎忽略了提到你正在使用两种不同的自定义帖子类型。

    在这种情况下:

    if(get_post_type() == \'Portfolio\'){
        echo \'<a href="\' . \'http://www.mysite.com/web-portfolio\'  . \'">\' . \'Portfolio\' .  \'</a>\';
    } else if(get_post_type() == \'Artwork\'){
        echo \'<a href="\' . \'http://www.mysite.com/art-portfolio\'  . \'">\' . \'Artwork\' .  \'</a>\';
    }
    echo $markup;
    

    结束

    相关推荐

    Enable page templates. How?

    基本问题,但我想启用页面模板。我有一个启用了页面模板的主题。我切换到了另一个模板,但没有更改模板的选项,即使在创建新页面时也是如此。如何打开此选项?我在抄本和论坛上找到了根,但找不到。