无法访问专用自定义邮寄单页或归档页

时间:2017-10-24 作者:hans3890

我使用一个特定于站点的插件创建了一个标记为“Richards”的自定义posttype,并使用以下代码。

function add_richards_posttype() {
    $labels = array(
        \'name\'                => _x( \'Richards\', \'Post Type General Name\' ),
        \'singular_name\'       => _x( \'Richard\', \'Post Type Singular Name\' ),
        \'menu_name\'           => __( \'Richard\\\'s Dagboek\' ),
        \'parent_item_colon\'   => __( \'Parent Richard\' ),
        \'all_items\'           => __( \'Alle Richards\' ),
        \'view_item\'           => __( \'Bekijk Richards\' ),
        \'add_new_item\'        => __( \'Nieuwe Richard\' ),
        \'add_new\'             => __( \'Nieuwe Richard\' ),
        \'edit_item\'           => __( \'Bewerk Richard\' ),
        \'update_item\'         => __( \'Update Richard\' ),
        \'search_items\'        => __( \'Zoek Richard\' ),
        \'not_found\'           => __( \'Niet Gevonden\' ),
        \'not_found_in_trash\'  => __( \'Niet Gevonden in Trash\' ),
    );

    $args = array(
        \'label\'               => __( \'richards\' ),
        \'description\'         => __( \'Richard\\\'s Dagboek\' ),
        \'labels\'              => $labels,
        \'supports\'            => array( \'title\', \'editor\', \'author\', \'thumbnail\', \'comments\', \'revisions\' ),
        // \'taxonomies\'          => array( \'kickstarters\' ),
        \'hierarchical\'        => false,
        \'public\'              => false,
        \'show_ui\'             => true,
        \'show_in_menu\'        => true,
        \'show_in_nav_menus\'   => true,
        \'show_in_admin_bar\'   => true,
        \'menu_position\'       => 5,
        \'can_export\'          => true,
        \'has_archive\'         => true,
    );

    register_post_type( \'richards\', $args );

}

add_action( \'init\', \'add_richards_posttype\', 0 );
我已使用添加数据richards 作为posttype,在数据库中显示正确的posttype。当我想显示此自定义帖子类型的存档页面或单个页面时(通过访问site.com/richards/site.com/richard/), WordPress提供404错误页面。

我将public设置为false的原因是为了阻止未登录用户访问此posttype。登录的用户应该能够访问站点。com/richards/未登录时,用户不应。

我搜索这个解决方案已经有一段时间了,我尝试过调整永久链接设置并将其更改回来,添加和删除存档richards。php文件(虽然我希望样式可以依赖于常规的帖子样式),添加和删除菜单按钮?post_type=richards 还有其他一些我记不起来的方法。

我还能尝试什么?我现在该如何着手寻找解决方案?

3 个回复
SO网友:socki03

这看起来像是similar question, 但我也会把它放在这里。

\'has_archive\' => \'richards\'
然后刷新永久链接(设置>永久链接)。

SO网友:Tom

可能需要刷新永久链接。保存代码后,前往WP Admin>Settings>Permalinks,单击save(保存),不做任何更改。然后尝试访问归档文件或单个页面。

SO网友:hans3890

显然,我误用了“公开”的论点。我试图将整个自定义posttype设置为私有(这样不仅可以隐藏所有帖子,而且可以阻止人们完全了解此posttype)。

虽然我还没有弄清楚如何完全隐藏帖子类型,但我决定将该值设置回public(这会显示所有内容),同时将该自定义帖子类型的每个帖子都设置为private。我用过another script 这将强制此posttype的所有发布都变为私有。我还设置\'exclude_from_search\' => true 使来自此自定义posttype的帖子不会显示在搜索结果中。

这确实产生了一个问题,在URL中,自定义帖子类型被用作普通帖子页面的“子级”(即。site.com/news/richards/) 虽然在$args:

\'rewrite\'         => array( \'with_front\' => false )
谢谢你的回答!

结束

相关推荐

Custom Single Template

好啊这可能已经被问了好几次了,但现在又来了。我在网上找到的所有东西都是关于如何为类别创建自定义模板的,我不想这样,其余的都不行。我想为单篇文章创建一个自定义模板,以提供简单明了的模板选择。其中一篇博文说找到单个。php创建一个副本,并将其称为类似于单个新闻帖子的内容。php我做到了。然后,我应该做一个像这样的php语句<?php /* Single Post Template:News Post */ ?> 我也做到了。但它没有起作用。我的猜测是,函数