2014-09-27 3 views
1

Для плагина мне нужен subpage обычного WordPress page. Нормальный page расположен вadd_rewrite_rule для пользовательских подстраниц

http://example.com/page 

Чтобы получить subpage

http://example.com/page/subpage 

Я использую rewrite_rule:

add_rewrite_rule('([^/]+)/(subpage|subpage2|subpage3|subpage4)', 'index.php?pagename=$matches[1]&_mysubpage=$matches[2]', 'top'); 

Это работает штраф, пока я не перемещайте page к a parent страница:

http://example.com/parentpage/page/subpage 

или если я установить page как домашнюю страницу

http://example.com/subpage 

Какие дополнительные add_rewrite_rule мне нужно сделать?

ответ

0

Я нашел рабочее решение, но если у кого-то лучше, не стесняйтесь делиться.

1) субстраница

pagename на субстранице является page/subpage поэтому начальное add_rewrite_rule стать

add_rewrite_rule('(.+)/(subpage|subpage2|subpage3|subpage4)', 'index.php?pagename=$matches[1]&_mysubpage=$matches[2]', 'top'); 

2) на начальной странице

Для главной страницы вам нужен идентификатор от page и дополнительных add_rewrite_rule

add_rewrite_rule('^(subpage|subpage2|subpage3|subpage4)', 'index.php?page_id={YOUR_PAGE_ID}&_mysubpage=$matches[1]', 'top'); 

отмечает, что ИмяСтраницы прибудут Сменился с PAGE_ID

Смежные вопросы