Intereting Posts
Проблема с локальным WordPress в Google App Engine Можно ли добавить ссылки следующей и предыдущей категории? Использование ajax при редактировании страницы редактирования категории? Нужна помощь в настройке значения по умолчанию для переключателя в настройке темы Как выбрать сообщения из нескольких категорий и метаданных? Используйте плагин wordpress в codeigniter Изменение шаблона динамически Редакторы меняют постоянную ссылку на неопубликованную запись, но только администраторы меняют постоянную ссылку на сообщение, которое когда-либо публиковалось? get_post_meta в качестве списка для раскрывающегося поискового фильтра Показать только, если x комментариев? Добавить контент в зависимости от загруженной страницы Как показать темы рецензий ниже названия форума (WordPress + bbPress-плагин)? ничего не приходит, когда я иду на мой website.com/wp-admin? Какие файлы я должен искать? Данные метаданных не сохраняются Пользовательские типы сообщений – показывать конкретные сообщения

Постоянная ссылка для конкретного имени страницы

Я создаю новую страницу с почтовым именем «my-page». У меня также есть 2 строки пользовательских запросов. Итак, URL-адрес будет выглядеть так:

http://domain.com/my-page/?qst1=aaa&qst2=bbb

Мне нужен URL-адрес:

http://domain.com/aaa/bbb

Как я могу это сделать? Как я могу сказать WP, это действительный URL-адрес, потому что WP укажет на 404 страницу (ааа страница не найдена).

Solutions Collecting From Web of "Постоянная ссылка для конкретного имени страницы"

В вашем .htaccess вы сможете сделать что-то вроде того, что показано Крисом Койером в CSS Tricks.

Ссылка на пример Крисом Койером: https://css-tricks.com/snippets/htaccess/subdirectories-redirect-query-string/

Поскольку у вас нет URL-адреса в URL-адресе, WordPress, скорее всего, уже создал правила RewriteEngine для вас не нужно .php. Но результат все равно будет работать нормально.

РЕДАКТИРОВАТЬ:

Другой пример этого показан с почти таким же точным сценарием, как и вы. Он находится на веб-сайте Apache: https://wiki.apache.org/httpd/RewriteQueryString Пример, показанный для этого в вашем .htaccess, выглядит примерно так:

RewriteCond %{QUERY_STRING} ^(\w+)=(\w+)$ RewriteRule ^/path /path/%1/%2? 

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

 add_action( 'init', 'wpse12065_init' ); function wpse12065_init() { add_rewrite_rule( 'my-page(/([^/]+))?(/([^/]+))?/?', 'index.php?pagename=my-page&qst1=$matches[2]&qst2=$matches[4]', 'top' ); 

Затем сохраните свою постоянную ссылку.

На странице моей страницы (вам нужно создать собственный шаблон страницы) вы можете поймать этот запрос с помощью этого кода

 if (isset($wp_query->query_vars['qst1']) && !empty($wp_query->query_vars['qst1']) ) { $qst1 = $wp_query->query_vars['qst1']; } else { //do something else } //do the same step for qst2 

Надеюсь, поможет

Вы можете использовать настройку постоянных ссылок Пользовательская структура /% категория% /% postname% /.

или вы можете использовать https://wordpress.org/plugins/simple-301-redirects/ плагин.