Переписывание URL-адреса настраиваемого сообщения на определенную страницу

Я создаю плагин меню ресторана. На странице asdf.com/menu показан список категорий меню, который является настраиваемым типом сообщения. Я хочу, чтобы URL asdf.com/menu/category-name был переписан на страницу, созданную мной с помощью slug категории menu. У меня есть следующая функция в моем плагине:

add_action('init', function(){ add_rewrite_rule('^menu/(.*)/?', 'index.php?pagename=menu-category', 'top'); }, 1); 

Когда я посещаю URL-адрес asdf.com/menu/chicken-fish, ничего не переписывается. Я получаю ошибку «Эта страница не найдена». Я делаю что-то неправильно?