告诉WordPress显示单页而不是存档页

时间:2019-04-21 作者:Jerry

我的wordpress网站URL如下:https://example.com/?pid=a125a5&lang=en 并按如下方式查询我的存档页面:

<?php

$the_slug = get_query_var(\'pid\');

if ($the_slug){

if ( $post = get_page_by_path( $the_slug, OBJECT, \'myposttype\' ) )
    $id = $post->ID;
else
    $id = 0;
?>

<?php get_header(); ?>
<div class="warpper">



    <?php ;
    $args = array(
        \'name\'        => $the_slug,
        \'post_type\'   => \'myposttype\',
        \'post_status\' => \'publish\',
        \'numberposts\' => 1,
    );
    $query = new WP_Query( $args );
    if ( $query->have_posts() ) :   while ( $query->have_posts() ) : $query->the_post();    ?>

<?php the_title(); ?>

<?php endwhile; else: ?><?php endif; ?>
<php } else{...};
它的工作,但命令像is_single() 返回false,wordpress在管理栏中不显示编辑帖子。

2 个回复
SO网友:Ashish Yadav

为您的Custom Post Type 您可以使用single-post-type.php 需要在其中添加post type 之后的名称single- 并对此文件使用查询。WordPress将使用此文件显示CPT的单个页面。

SO网友:Eh Jewel

这个is_single() 函数将始终返回false 在存档页面模板中。原因,该页面是存档页面模板。

相关推荐

自定义帖子类型出现在Archive.php上的前一个帖子类型中

这是我的第一个自定义主题,所以我仍然在想这个循环,但我已经让每个连续的帖子围绕前一个出现了。我使用的是引导卡,所以每张新卡的边框都围绕着前一张卡,产生了嵌套效果。如何停止此操作,并将每个CPT输出为新卡?<?php get_header(); if (have_posts()) : while (have_posts()) : ?> <div class=\"card container\">