Я настроил пользовательские типы записей, называемые ящиками, которые отлично работают и используют таксономию категорий по умолчанию.
Я написал get_query_var в верхней части моего category.php для обнаружения полей cp-type = вurl, и если это так, он отображает только сообщения в этой категории из пользовательских полей типа сообщений.
Это все работает нормально, но я хочу красивый URL
в идеале что-то вроде / boxes / category / fancy /
Я пытался использовать этот метод:
function my_rewrite_rules($rules)
{
global $wp_rewrite;
$my_rule = array(
'^boxes/category/(.+)/' => '^category/' . $matches[1] . '?cp-type=boxes'
);
return array_merge($my_rule, $rules);
}
add_filter('page_rewrite_rules', 'my_rewrite_rules');
function my_query_vars($vars)
{
$my_vars = array(
'cp-type'
);
return array_merge($my_vars, $vars);
}
add_filter('query_vars', 'my_query_vars');
Все, что он делает, это бросает 404.