Intereting Posts

add_rewrite_endpoint не работает

У меня проблемы с этой функцией, я не знаю, что делать, потому что я все испробовал.

У меня есть пользовательский тип сообщения, назовем его изучением. Структура URL для него

http://example.com/study/studyname 

У них разные разделы, я хочу, чтобы новая структура была такой:

 http://example.com.com/study/studyname/view/view_arg 

До сих пор я пробовал функции add_rewrite_endpoint() и add_rewrite_rule() с любым результатом.

Я также пытался отключить все мои плагины на всякий случай, если одна из них может быть причиной, но все равно не работает. Это мой код, я пробовал оба варианта отдельно:

 add_filter('init', 'add_rewrite_rules'); function add_rewrite_rules() { global $wp_rewrite; add_rewrite_endpoint('view', EP_PERMALINK | EP_PAGES, 'view' ); $wp_rewrite->flush_rules(); } 

Здесь я также тестирую его с помощью EP_ALL без view , без правил EP_ALL

Также я попытался вручную создать правило перезаписи:

 add_rewrite_rule( 'study/([^/]+)/view/([^/]+)?$', 'index.php?study=$matches[1]&view=$matches[2]', 'top' ); 

И я читал, что query_var также должен быть настроен так, как и я:

 add_filter( 'query_vars', 'conf_query_vars' ); function conf_query_vars($query_vars){ $query_vars[] = 'view'; return $query_vars; } 

Я собираюсь убить себя, если я попробую URL-адрес с самим параметром (что-то вроде http://example.com/study/studyname/?view=view_args ), он работает как шарм, но я не хочу показать эту структуру.

Solutions Collecting From Web of "add_rewrite_endpoint не работает"

Ваш код должен (и работает от быстрой проверки) работать в принципе. Вы не должны постоянно очищать каждую загрузку страницы только один раз.

Используйте помощник перезаписи, например, Monkeyman Rewrite Analyzer, чтобы узнать, генерируются ли правила, каковы они и как они соответствуют реальным URL-адресам вашего сайта.