Первым делом самолеты, добавляем в functions.php то что ниже,

<?
/*-----------------------------------------------------------------------------------*/
/* Каталог проектов
/*-----------------------------------------------------------------------------------*/

function my_custom_post_kat() {
   $labels = array(
      'name'               => _x( 'Каталог проектов', 'post type general name' ),
      'singular_name'      => _x( 'Каталог проектов', 'post type singular name' ),
      'add_new'            => _x( 'Добавить проект', 'kat' ),
      'add_new_item'       => __( 'Добавить новый проект' ),
      'edit_item'          => __( 'Редактировать проект' ),
      'new_item'           => __( 'Новый проект' ),
      'all_items'          => __( 'Каталог' ),
      'view_item'          => __( 'Смотреть проект' ),
      'search_items'       => __( 'Найти проект' ),
      'not_found'          => __( 'Проекты не найдены' ),
      'not_found_in_trash' => __( 'Нет удаленных проектов' ), 
      'parent_item_colon'  => '',
      'menu_name'          => 'Проекты'
   );
   $args = array(
      'labels'        => $labels,
      'description'   => 'Проекты',
      'public'        => true,
      'menu_position' => 5,
	  'menu_icon' => 'dashicons-category',
      'supports'      => array('title','editor','custom-fields','revisions','thumbnail','excerpt'),
      'has_archive'   => true,
   );
   register_post_type( 'kat', $args ); 
   flush_rewrite_rules(false);   
}
add_action( 'init', 'my_custom_post_kat' );
/* если предусмотрены рубрики или там категории, то кусок ниже тоже добавить*/
function my_taxonomies_kat() {
   $labels = array(
      'name'              => _x( 'Разделы', 'taxonomy general name' ),
      'singular_name'     => _x( 'Раздел', 'taxonomy singular name' ),
      'search_items'      => __( 'Найти категорию' ),
      'all_items'         => __( 'Все' ),
      'parent_item'       => __( 'Родительская категория' ),
      'parent_item_colon' => __( 'Родительская категория:' ),
      'edit_item'         => __( 'Редактировать категорию' ), 
      'update_item'       => __( 'Обновить категорию' ),
      'add_new_item'      => __( 'Добавить категорию' ),
      'new_item_name'     => __( 'Новая категория' ),
      'menu_name'         => __( 'Разделы' ),
   );
   $args = array(
      'labels' => $labels,
      'hierarchical' => true,
   );
   register_taxonomy( 'kat-prov', 'kat', $args );
}
add_action( 'init', 'my_taxonomies_kat', 0 );

?>

Слаг у нас получается kat

значит шаблон сингл записи будет single-kat.php у архива archive-kat.php и у таксономии taxonomy-kat-prov.php

Кастомно это дерьмо можно так вывести

 

<?php $query = new WP_Query( array('post_type' => 'kat','posts_per_page' => 20) );?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>		

<a href="<?php the_permalink(); ?>"><?php the_title();?></a>
<?php endwhile; wp_reset_query(); ?>

 

Вывести из опред рубрики кастомного поста

<?php 
 $query = new WP_Query( array(
    'post_type' => 'doctor',          // name of post type.
	'posts_per_page' => 20,
    'tax_query' => array(
        array(
            'taxonomy' => 'otdel',   // taxonomy name
            'field' => 'term_id',           // term_id, slug or name
            'terms' => 33,                  // term id, term slug or term name
        )
    )
) );
?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
						<div class="sotrudnik">
							<div class="sotrudniki_foto_block"><?php the_post_thumbnail(); ?></div>
							<p align="center"><strong><?php the_title() ?></strong></p>
							<?php the_content();?>
						</div><
<?php endwhile; ?>

 

Произвольные типы записей в WordPress, добавление по шаблону

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *