my wordpress site urls like this: /?pid=a125a5&lang=en and query of my archive page like this:
<?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{...};
its work but commands like is_single()
return false and wordpress not showing edit post in admin bar.
my wordpress site urls like this: https://example/?pid=a125a5&lang=en and query of my archive page like this:
<?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{...};
its work but commands like is_single()
return false and wordpress not showing edit post in admin bar.
2 Answers
Reset to default 0To show single page for your Custom Post Type
you can use single-post-type.php
file where you need to add your post type
name after single-
and use a query on this file. WordPress will use this file to show a single page of your CPT.
The is_single()
function will return always false
in the archive page template. Cause, the page is archive page template.