Я в основном пытаюсь удалить таксономические базы из моей URL-адресов, например, от этого: http://www.example.com/posttype/tax/term1/tax/term2Как удалить таксономию базы из URL
Для этого: http://www.example.com/postype/term1/term2
Я прочитал много постов, заявляющих, что это достичь невозможно. Однако я столкнулся со многими сайтами, которые достигли этого. Поэтому я задаю этот вопрос в надежде, что кому-то здесь удалось это добиться.
Мой переписан код:
function add_query_vars($query_vars) {
$new_vars = array('vehicle-type', 'fuel', 'color', 'status', 'gearbox', 'interior', 'exterior', 'safety', 'extra', 'location', 'vehicle-year', 'model');
return array_merge($new_vars, $query_vars);
}
add_filter('query_vars', 'add_query_vars');`
function add_rewrite_rules() {
global $wp_rewrite;
$new_rules = array(
'vehicles/vehicle_status/(.+?)/vehicle_fuel_type/(.+?)/vehicle_color/(.+?)/vehicle_status/(.+?)/vehicle_gearbox/(.+?)/vehicle_interior_feature/(.+?)/vehicle_exterior_feature/(.+?)/vehicle_safety_feature/(.+?)/vehicle_extra/(.+?)/vehicle_location/(.+?)/vehicle_year/(.+?)/vehicle_model/(.+?)/?$' => 'index.php?post_type=vehicles&vehicle_status=' . $wp_rewrite->preg_index(1) . '&vehicle_fuel_type=' . $wp_rewrite->preg_index(2) . '&vehicle_color=' . $wp_rewrite->preg_index(3) . '&vehicle_status=' . $wp_rewrite->preg_index(4) . '&vehicle_gearbox=' . $wp_rewrite->preg_index(5) . '&vehicle_interior_feature=' . $wp_rewrite->preg_index(6) . '&vehicle_exterior_feature=' . $wp_rewrite->preg_index(7) . '&vehicle_safety_feature=' . $wp_rewrite->preg_index(8) .'&vehicle_extra=' . $wp_rewrite->preg_index(9) .'&vehicle_location=' . $wp_rewrite->preg_index(10) . '&vehicle_year=' . $wp_rewrite->preg_index(11) . '&vehicle_model=' . $wp_rewrite->preg_index(12)') ;
}
add_filter('rewrite_rules_array', 'add_rewrite_rules');`
Я имел в виду, что хочу сделать это только для пользовательских таксономий –
Попробуйте плагин для диспетчера Permalink, который имеет больше настроек постоянной ссылки. –