Спрашиваем и отвечаем по Wordpress-14

A
На сайте с 18.10.2007
Offline
118
#841

Уже спрашивал в теме про редирект, но наверное не с той стороны я зашёл.

Как настроить вордпресс так, чтобы просмотреть можно было только новость целиком?

Тоесть только site.ru/blog/XXX

А всё остальное отправлять на site.ru/

Тоесть перенаправлять такие запросы как

site.ru/blog/

site.ru/blog/index.php

site.ru/blog/xxx/index.html

на site.ru там совсем другая CMS.

Заранее спасибо!

O
На сайте с 30.09.2019
Offline
18
#842
alepavlenko:
Как настроить вордпресс так, чтобы просмотреть можно было только новость целиком?

Тоесть только site.ru/blog/XXX

И снова, ни чего не понятно )

Если Вы хотите редериктить со списка записей, то нужно прописать в functions.php темы


add_filter( 'excerpt_more', 'new_url' );
function new_url( $more ){
global $post;
return '<a href="site.ru/blog/">Читать дальше...</a>';
}
A
На сайте с 18.10.2007
Offline
118
#843
onep:
И снова, ни чего не понятно )
Если Вы хотите редериктить со списка записей, то нужно прописать в functions.php темы


add_filter( 'excerpt_more', 'new_url' );
function new_url( $more ){
global $post;
return '<a href="site.ru/blog/">Читать дальше...</a>';
}

У меня есть сайт на Magento в папку установил wordpress "нужно добавить пару десятков новостей" ссылки на эти новости будут постится в карточках товаров, и надо скрыть все страницы кроме site.ru/blog/статья

Как то так 🤪

S
На сайте с 30.09.2016
Offline
469
#844

alepavlenko, ну так попробуйте поэкспериментировать со стандартным htaccess вордпресса в плане добавления условий перед рерайтом на index.php и редиректа после него. Или редиректа при соответствующих условиях до правил этого рерайта.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Gerga
На сайте с 02.08.2015
Offline
94
#845
alepavlenko:
У меня есть сайт на Magento в папку установил wordpress "нужно добавить пару десятков новостей" ссылки на эти новости будут постится в карточках товаров, и надо скрыть все страницы кроме site.ru/blog/статья

Как то так


/**
* Функция выполнения редиректа на главную для не записей
* применяется к хук-событию template_redirect
*/
function theme_action_template_redirect() {
if (!is_single()) {
wp_redirect('/', 301);
exit;
}
}
add_action('template_redirect', 'theme_action_template_redirect');

вставьте этот код в functions.php темы или в плагин

A
На сайте с 18.10.2007
Offline
118
#846
Gerga:

вставьте этот код в functions.php темы или в плагин

Работает! Спасибо!!!

Немного почитал про is_single.

Можно поменять на is_page тогда только страницы или на is_singular тогда только статьи и страницы, остальное редирект! Может кому пригодится.

SeVlad
На сайте с 03.11.2008
Offline
1609
#847
Gerga:
вставьте этот код в functions.php темы или в плагин

Gerga, ну что ты... Это во первых не будет редиректить "всё остальное", во вторых может создать разные проблемы.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
Gerga
На сайте с 02.08.2015
Offline
94
#848

SeVlad, какие не будут редиректиться?

SeVlad
На сайте с 03.11.2008
Offline
1609
#849
Gerga:
какие не будут редиректиться?

Все, которые идут мимо обработки шаблонов темы. Начиная от статики и заканчивая разными плагинами.

(не говоря уже о бесполезной работе/нагрузке/запросах в базу)

Вот реально медвежья услуга - неизвестно ж вообще что конкретно надо редиректить (и почему/зачем и есть ли вообще ЧТО редиректить).

Gerga
На сайте с 02.08.2015
Offline
94
#850
SeVlad:
Все, которые идут мимо обработки шаблонов. Начиная от статики и заканчивая разными плагинами.

Ну, так и нужно. Зачем редиректить статику, если для статьи, например, может быть загружено изображение и оно будет загружено в WP.

SeVlad:
(не говоря уже о бесполезной работе/нагрузке/запросах в базу)

SeVlad, такие рассуждения ведут к самописам. К тому же, .htaccess не знает, что такое "запись", можно конечно городить RewriteRule c RewriteCond`ами, но это другой путь...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий