Intereting Posts
Почему я не могу использовать массив терминов slugs в WP_Query? Отображать функцию пользовательских сообщений ТОЛЬКО, если она имеет значение Невозможно использовать «CSS» в заголовке сообщения Короткий код для мест В таблице Woocommerce отсутствует заголовок – могу ли я добавить его с помощью крючка? Убедитесь, что в массиве сообщений есть сообщения из определенной категории Рабочие ступени WP cron Загрузка внешних файлов jQuery с помощью $ Почему содержимое домашней страницы не отображается с помощью этого правила перезаписи? Предел памяти PHP против ограничения памяти WP Показать только старые записи автора Отображение формы на новой странице Как передать массив Чтобы get_the_category_by_ID () и получить массив назад? Помощь в функции WP gallery, обертка галереи в div Есть ли способ добавить дополнительные стили CSS в стили CSS-файл динамически?

Правило перезаписи, предназначенное для CPT, дает 404 для страниц

Поэтому мне удалось заставить мои перезаписи работать наконец. Но поскольку я отключил слизень, который обычно добавляется к CPT, у меня есть общие перезаписи, которые заканчиваются тем, что дают мне 404 при попытке просмотра страниц в браузере.

Что я могу сделать, чтобы исправить это?

Если я изменяю top bottom я получаю обратную проблему, где работают страницы, но проект и директор этого не делают.

 add_filter('post_type_link', __NAMESPACE__ . '\\post_type_link', 1, 3); function post_type_link( $link, $post = 0 ){ if ( $post->post_type == 'project' ) { $director_id = get_field('director', $post->ID); $director = get_post($director_id); $director_name = $director->post_name; $url = home_url( $director->post_name . '/' . $post->post_name ); return $url; } elseif ( $post->post_type == 'director' ) { $url = home_url( $post->post_name ); return $url; } else { return $link; } } add_filter( 'query_vars', __NAMESPACE__ . '\\register_query_vars' ); function register_query_vars( $vars ) { $vars[] = 'director_name'; return $vars; } add_action( 'init', __NAMESPACE__ . '\\rewrites_init' ); function rewrites_init(){ add_rewrite_rule( '([^/]*)/([^/]*)/?', 'index.php?post_type=project&director_name=$matches[1]&name=$matches[2]', 'top' ); add_rewrite_rule( '([^/]*)/?', 'index.php?post_type=director&name=$matches[1]', 'top' ); } 

Solutions Collecting From Web of "Правило перезаписи, предназначенное для CPT, дает 404 для страниц"