Перейти к содержимому



Как открывать внутренние ссылки в постах wordpress в новых вкладках

#1

Поделиться сообщением #1



Sosnovskij

Sosnovskij
  • Администратор
  • 4 246 сообщений
  • Репутация: 640
0

Отправлено 29 Январь 2015 - 10:52

Есть ли решения, которые бы позволяли открывать все внутренние ссылки в постах в новых вкладках? То есть не все линки на внутренние страницы сайта, а именно те, которые размещены в основном содержании записи. Желательно , конечно, чтобы это была какая-то строчка кода, а не плагин :)


 

 

  • 0

Не стесняйтесь ставить оценки темам :) Правила форума. Мой блог http://sosnovskij.ru/.



robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85
Советую обратить внимание на следующее:
  1. Закрыть внешние ссылки на wordpress
  2. Открытие внутренних ссылок в новом окне или в существующем
  3. Как убрать вшитые ссылки в шаблоне Wordpress
  4. Убрать открытие внутренних ссылок в новой вкладке
  5. Как убрать внешние ссылку из шаблона WordPress

#2

Поделиться сообщением #2



matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 29 Январь 2015 - 12:27

Примерно так можно попробовать (код для файла functions.php):

add_filter( 'the_content', 'wfm_add_target' );
function wfm_add_target($content){
	if( !is_single() ) return $content;
	return preg_replace("#<a([^>]+)>(.+?)</a>#", "<a$1 target='_blank'>$2</a>", $content);
}

  • 3


#3

Поделиться сообщением #3



Sosnovskij

Sosnovskij
    Topic Starter
  • Администратор
  • 4 246 сообщений
  • Репутация: 640

Отправлено 29 Январь 2015 - 12:43

matroskin8, супер! Работает. Спасибо :)


  • 0

Не стесняйтесь ставить оценки темам :) Правила форума. Мой блог http://sosnovskij.ru/.



#4

Поделиться сообщением #4



matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 29 Январь 2015 - 13:58

Пожалуйста :)


  • 0


#5

Поделиться сообщением #5



Sosnovskij

Sosnovskij
    Topic Starter
  • Администратор
  • 4 246 сообщений
  • Репутация: 640

Отправлено 04 Февраль 2015 - 10:08

@matroskin8, если создавать якоря вручную на странице domen.ru/statya-1/#punkt-1 , то при клике на эти ссылки они открываются в новой вкладке, а по логике должны перекидывать на нужную место существующей страницы. Можно обойти этот момент? :) 


  • 0

Не стесняйтесь ставить оценки темам :) Правила форума. Мой блог http://sosnovskij.ru/.



#6

Поделиться сообщением #6



matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 04 Февраль 2015 - 10:39

Sosnovskij, без проблем. Немного изменим регулярное выражение:

return preg_replace("#<a([^>\#]+)>(.+?)</a>#", "<a$1 target='_blank'>$2</a>", $content);

Остальное без изменений.


  • 1


#7

Поделиться сообщением #7



Sosnovskij

Sosnovskij
    Topic Starter
  • Администратор
  • 4 246 сообщений
  • Репутация: 640

Отправлено 04 Февраль 2015 - 15:09

matroskin8, здОрово. Спасибо!


  • 0

Не стесняйтесь ставить оценки темам :) Правила форума. Мой блог http://sosnovskij.ru/.



#8

Поделиться сообщением #8



matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 04 Февраль 2015 - 16:10

Пожалуйста)


  • 0


robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru