404 страница не найдена ошибка с нумерацией страниц и постоянными ссылками на пользовательский тип записи
Я создал пользовательский тип записи в WordPress, добавив следующее в мои пользовательские темы function.php
function oil_paintings_init() {
$args = array(
'labels' => array(
'name' => __( 'oil-paintings' ),
'singular_name' => __( 'oil-painting' ),
'rewrite' => array( 'slug' => 'oil-painting'),
),
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'query_var' => true,
'menu_icon' => 'dashicons-format-image',
'supports' => array(
'title',
'editor',
'revisions',
'page-attributes',)
);
register_post_type( 'oil-paintings', $args );
}
add_action( 'init', 'oil_paintings_init' );
Я создал пользовательский шаблон страницы, который зацикливает и отображает сообщения из пользовательского типа сообщения, который я добавил выше. Я хочу показывать 5 постов за раз и отдыхать по следующим и предыдущим ссылкам на странице. Это код, который я использовал:
<?php
$currentPage = (get_query_var('paged'))? get_query_var('paged') : 1;
$args =array(
'post_type'=>'oil-paintings',
'posts_per_page' => 5,
'nopaging' => false,
'paged' => $currentPage,
);
$wp_query = new WP_Query($args);
?>
<?php if($wp_query->have_posts()): while($wp_query->have_posts()) : $wp_query->the_post(); ?>
<div class="columns">
<img src="<?php the_field('image1'); ?>" alt="" />
<a href="<?php the_Permalink(); ?>"><?php the_title(); ?></a>
</div>
<?php endwhile;
next_posts_link("next");
previous_posts_link("prev");
endif;
wp_reset_postdata(); ?>
Проблема, с которой я сталкиваюсь, заключается в том, когда я включаю постоянные ссылки в моем WordPress для
'http://www.domainname.com/%postname%/' -->this does not work
ссылка на следующие и предыдущие сообщения перестает работать, и я получаю страницу не найдена ошибка. все работает нормально, если мои постоянные ссылки установлены равными
'http://www.domainname.com/?p=123' --> this works
любая помощь в этом отношении приветствуется. Спасибо
Хорошо, я понял, где я иду не так. Перемещение перезаписи из массива меток решило это для меня. Вот рабочий код в functions.php
function oil_paintings_init() {
$args = array(
'labels' => array(
'name' => __( 'oil-paintings' ),
'singular_name' => __( 'oil-painting' )
),
'rewrite' => array( 'slug' => 'oil-painting'),
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'query_var' => true,
'menu_icon' => 'dashicons-format-image',
'supports' => array(
'title',
'editor',
'revisions',
'page-attributes',)
);
register_post_type( 'oil-paintings', $args );
}
add_action( 'init', 'oil_paintings_init' );