Создание одностраничной записи пользовательского типа

#php #wordpress #post #custom-post-type

#php #wordpress #Публикация #пользовательский тип записи

Вопрос:

Я хочу создать одностраничник для моего пользовательского типа записи, но мой метод не сработал. Я создал пользовательский тип записи следующим образом:

     function portfolio(){
    $args = array(
        'public' => true,
        'label' => __('Portfolio'),
        'supports' => array('title', 'editor', 'thumbnail', 'custom-fields'));
    register_post_type('portfolio', $args);
    register_taxonomy('portfolio', 'portfolio');
}
add_action('init', 'portfolio');
  

Я сделал запрос для отображения всех элементов:

 <?php  
        // The Query
        $the_query = new WP_Query( array( 'post_type' => 'portfolio', 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page'=>-1 ) );

        // The Loop
        while ( $the_query->have_posts() ) : $the_query->the_post();                                        
            $thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id ( $the_query->ID ), 'thumbnail' );
        ?> 
            <a href="<?php the_permalink(); ?>" class="col-md-4 item-portfolio">
              <img src="<?php echo $thumbnail[0]; ?>" alt="">
              <h4><?php the_title(); ?></h4>
              <p><?php echo get_post_meta( $post->ID, 'subtitle', true ); ?></p>
            </a>
        <?php endwhile; ?>
  

И я создал single-portfolio.php файл, но когда я захожу в single item, у меня есть index.php вместо single-portfolio.php шаблон. Где я допустил ошибку? Спасибо за помощь.

Комментарии:

1. вы добавили это в свою тему или плагин?

2. Да, я объявил портфолио функций в своем functions.php и запрос в index.php

Ответ №1:

После:

 register_post_type( 'portfolio' , $args );
  

добавьте это:

 flush_rewrite_rules();