WordPress Stop Post перенаправления - PullRequest
1 голос
/ 10 января 2010

У меня проблема с Wordpress относительно постоянных ссылок.

Когда у меня есть пост, чья постоянная ссылка, скажем, / 2009/10 / podcasts, попытка получить доступ / podcasts перенаправляет на / 2009/10 / podcasts. Есть ли способ остановить это поведение, чтобы я мог обращаться с ним как 404?

Я использую пользовательский обработчик 404, который проверяет, является ли запрос ошибкой 404, и выполняет запрос Kohana из Wordpress.

Ответы [ 2 ]

3 голосов
/ 14 января 2010

Я только что получил ответ на форумах WP. Это

remove_filter('template_redirect', 'redirect_canonical');
0 голосов
/ 10 января 2010

только что проверил с установкой WordPress по умолчанию - и действительно, WordPress по умолчанию ищет путь в любом случае - независимо от того, какие каталоги вы добавляете, скрывать. Таким образом, замена "/ 2010/01 / some-long-url" на "/ error / some-long-url" перенаправит запрос на "/2010/01/some-long-url".

В любом случае - я все еще могу предложить два обходных пути: 1) если вы действительно хотите получить настоящую ошибку 404, вы можете использовать метод перенаправления в вашем htaccess для пересылки запроса на несуществующий URL-адрес - просто добавьте одну строку перенаправления, как это:

Redirect /podcasts /podcasts-error

все вместе htacces может выглядеть так:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Redirect /podcasts /podcasts-error
</IfModule>

2) Если вам не нужна ошибка 404, вы также можете просто добавить страницу и дать ей точно такой же URL-адрес - в этом случае это будут «подкасты». Это деактивирует пересылку. Затем вы можете добавить свое собственное «сообщение об ошибке» на эту страницу ..

Greetz, t ..

...