У меня есть настройка страницы с постоянной ссылкой mydomain.com/events
, в которой используется шаблон страницы. На этой странице отображаются все мои события, извлеченные из внешнего источника (поэтому не может быть пользовательским типом записи). Затем я настроил переписывание для обработки параметра категории в URL, а затем для отдельных событий.
add_action('init', 'mydomain_events_rewrite');
function mydomain_events_rewrite()
{
add_rewrite_rule(
'^events/categories/?$',
'index.php?category=$matches[1]',
'top'
);
add_rewrite_rule(
'^events/?$',
'index.php?event=$matches[1]',
'top'
);
}
add_filter('query_vars', 'mydomain_events_rewrite_var');
function mydomain_events_rewrite_var($vars)
{
$vars[] = 'events';
$vars[] = 'categories';
return $vars;
}
Таким образом, идея состоит в том, что категории просто предоставляют переменную категории на страницу событий, например mydomain.com/events/categories/film
. И тогда отдельные события будут mydomain.com/events/123/my-epic-film
.
Как есть, если я перехожу на mydomain.com/events
, он просто перенаправляет меня на домашнюю страницу. Но если я использую URL перезаписи, mydomain.com/events/categories/film
он переходит к 404. Где я тут ошибаюсь?
Спасибо!