- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет!
Помогите советом если кто знает пожалуйста, в общем при использовании Custom post type на второй странице архива записей, выводится ошибка 404, при использовании плагина Wp_pagenavi, посмотрел потыкал разные варианты, но ничего не помогает.
Заходил в Настройки -> Постоянные ссылки нажимал Сохранить изменения типа чтобы сбросить кеш этих путей, ничего не изменилось.
Нашел какой-то код, типа который решает эту проблему, но он тоже что-то не помог:
function mcpt_wpnavi() {
add_rewrite_rule( 'mycustompagetype/page/([0-9]+)/?$', 'index.php?pagename=mycustompagetype&paged=$matches[1]', 'top' );
}
add_action( 'init', 'mcpt_wpnavi' );
Чувак с форума поддержки плагина WP-PageNavi вроде тоже с такой-же проблемой только с Custom taxonomy дает ссылку на решение, но там тоже не понятно, я потыкал некоторые варианты и тоже ничего не изменилось.
https://wordpress.org/support/topic/custom-taxonomy-404-on-page-2/
А, да сама пагинация на сайте при помощи плагина Wp_pagenavi нормально работает, но для кастомного CPT типа поста, где выводится архив постов она и там появляется и все ок, но когда переходишь на вторую страницу то пишет ошибка 404. В общем не работает для кастомных типов постов.
Заранее всем спасибо за ответы и советы!
Переписал стандартный цикл в цикл WP_Query с указанием post_type, но ничего не дало.
А вот передача запроса в функцию вызова пагинации плагина wp_pagenavi дала еще более бредовый результат:
Теперь на второй странице показываются посты, которые на первой, а на третьей 404 ошибка.
Переписал свой произвольный тип записи register_post_type, там почему-то в rewrite ‘pages’=>false, поставил true, но по моему это тоже ничего не дало.
Одному только богу известно, что ему нужно, чтобы еще потыкать чтобы все сломать?Может я вывожу их как-то не так:
<?php $posts_index = new WP_Query('post_type=mycustompagetype&orderby=date&posts_per_page=5&order=DESC'); ?>
<?php while ($posts_index->have_posts()) : $posts_index->the_post(); ?>
Заголовок, миниатюра, контент...
<?php endwhile; ?>
<?php wp_pagenavi( array('query' => $posts_index) ); ?>
<?php wp_reset_postdata(); ?>
Хотя вроде все выводится нормально, кроме постраничного перехода, вот тебе и кастомный тип поста, сто пудово дело в создании register_post_type нового типа и работе с ним, глюки где-то в ссылочной структуре и путях, но хз где.
При использовании стандартной пагинации next_posts_link при переходе на следующую вторую страницу также возникает ошибка 404.
А и да там глюк был не из-за добавления в wp_pagenavi параметра запроса query, а из-за изменения register_post_type параметра rewrite его значения с pages=flase на pages=true, опять при установке его в false при переходе на 2ю страницу просто 404 ошибка.Помогите составить add_rewrite_rule правило, я так понимаю оно должно помочь в переходах с глючных 404 страниц на работающие которые через параметры.
Нужно с:
https://www.mysite.ru/mycustomposttype/page/2/
На:
https://www.mysite.ru/page/2/?post_type=mycustomposttype
Я накидал по чьему-то примеру, но оно походу не работает:
add_rewrite_rule( 'mycustomposttype/page/([0-9]+)/?$', 'index.php?pagename=mycustomposttype&paged=$matches[1]', 'top' );
Пацаны, братва, девчонки, ребята всем спасибо за помощь, разобрался я с этим add_rewrite_rule, и в моем случае это будет так:
add_rewrite_rule( 'mycustomposttype/page/([0-9]+)/?$', 'index.php?post_type=mycustomposttype&paged=$matches[1]', 'top' );
Все работает и теперь нету ошибки 404, а ссылки остаются с нормальным видом, я так и не понял это типа вид редиректа такого или внутренняя фигня WordPress’а, но главное это работает, да и ладно.
Если бы вы знали какой костыльный этот произвольный тип записи в WordPress созданный с помощью register_post_type, просто жесть, то одно отваливается то другое, видимо моя софтверная часть сайта будет ещё долго в состоянии разработки.А, да и при построении цикла на основе WP_Query надо добавить свойство paged.
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<?php $recent_posts_posttype = new WP_Query(['post_type' => 'mycustomposttype', 'orderby' => 'date', 'posts_per_page' => 5, 'order' => 'DESC', 'paged' => $paged]); ?>
а вообще не создавайте никогда произвольных типов записей.
произвольные типы записей используются в тысячах плагинов, и все работает и пагинация и чпу... просто ты что-то не то сделал, но потом исправил и все ж работает?))