Большая проблема плагина WP NoExternaLlinks

  Александр Маврин   19 комментариев

Иконка плагина WordPressЗдравствуйте, друзья. Как и обещал, пишу дополнение к предыдущей статье: Оптимизация базы данных WordPress. Если вы давно ведете блог,то наверняка знаете, что из себя представляет плагин wp noexternallinks, но вряд ли догадываетесь какую опасность он может с собой нести для вашего сайта. Он действительно хорош по своему функционалу, но сейчас мы поговорим о минусах, нежели о плюсах. Для тех кто не в курсе, даю справку по этому плагину:

Плагин wp noexternallinks позволяет маскировать все внешние ссылки и делать их внутренними или прятать, используя специальные редиректы и атрибуты.

Дело в том, что все ссылки, имеющиеся на сайте, он заносит в базу данных и ежедневно к ним обращается, перестраивая список заново. И все это нужно для того, чтобы посмотреть статистику по ссылкам на странице настроек плагина. То есть плагин самостоятельно создает специальную таблицу в БД под названием link_stats и заносит в нее данные. И как раз эта бесполезная функция очень грузит базу данных, уменьшая скорость загрузки страниц сайта. Вот эта функция на странице настроек:

Скриншот настроек плагина wp noexternallinks

Когда я заглянул в базу данных, то был слегка шокирован количеством ссылок и сначала не мог понять откуда они взялись и почему так много. Но копнув немного глубже, понял, что это как раз та самая бесполезная функция плагина wp noexternallinks. Если просто удалить эту таблицу из БД, то через несколько минут она снова появится с тем же содержимым. Нужно отключить функцию создания таблицы в главном файле плагина. А пока немного цифр. Когда я открыл базу данных в редакторе Notepad++, то увидел, что она состоит из 68681 строки, а после того, как таблица была удалена, осталось 17329 строк. Чувствуете разницу? Это более 50000 строк с ненужными ссылками! После проделанной работы блог заметно прибавил в скорости. Теперь о том, что нужно делать, чтобы отключить функцию.

Нужно открыть на редактирования файл плагина wp-noexternallinks.php, опуститься вниз и на строке примерно 147 найти код функции подключения к базе данных. Выглядит он следующим образом:

147
148
149
150
151
152
153
154
155
156
157
/*statistic*/
  if($this->options['stats'])
  {
  	$flush=get_option('wp_noexternallinks_flush');
  	if(!$flush || $flush<time ()-3600*24)/*flush every 24 hours*/
  	{
  		$sql='delete from '.$wpdb->prefix.'links_stats where `date`<date_sub (curdate(), INTERVAL '.$this->options['keep_stats'].' DAY)';
  		@mysql_query($sql);
  		update_option('wp_noexternallinks_flush',time());
  	}
  }</date_sub></time>

Удаляем этот код, затем удаляем таблицу link_stats из БД. Как это делать, читайте в предыдущей статье. Вот, собственно и все. Не забывайте делать резервные копии, если боитесь накосячить. Напишите о своих результатах в комментариях и не забудьте поделиться этой записью в социальных сетях. Спасибо. Возможно мой опыт вам пригодится. Подпишитесь на рассылку.

Не стесняйтесь делиться записью в социальных сетях. Спасибо

19 комментариев
  1. А я вообще от него отказалась и маскирую ссылки вручную. И очень рада, хоть он мне и нравился. Кроме того, что он тяжёлый, так ещё и здорово глючил в последнее время.
    То есть не давал переходить по ссылкам и не давал посмотреть обновлённый новый пост (это во время написания новой статьи), а это очень не удобно. Удалила и совершенно не жалею, просто трачу на пару секунд больше, чтобы поставить nofollow в ссылку, когда пишу статью.

  2. Доброго времени! Так можно же в настройках этого плагина отключить функцию сбора статистики. И все 😉

  3. Лично у меня таких проблем не возникло! Может еще зависит от версии плагина? 😕

    • Посмотрите в базе данных, есть ли там таблица link_stats. Если есть, то значит ведется статистика и база наполняется кучей ненужного мусора.

    • Это ещё зависит от величины Базы данных.На новом у меня мало статей, так он нормально пока что работает. Хотя…надо срочно удалять, а то потом всё это дольше будет. Ссылки то нужно будет вручную закрывать.

  4. Коста:

    Спасибо за совет. Сделал все как написано, база данных уменьшилась в два раза и сайт кажется быстрее стал грузиться. 😈

  5. В первый раз здесь, и что называется — я удачно зашла…. У меня он стоит, даже и не догадывалась о таких «сюрпризах». Пошла рыться в БД. 😯 😯

  6. Спасибо Вам за ценную информацию — работа предстоит непростая, но нужная.

  7. У меня сайт с мини обзорами других сайтов и в каждом мини обзоре есть ссылка на обозреваемый ресурс. В одном блоге я прочитал , что много ссылок на сайте -это плохо , теряется масса и поэтому я поставил WP NoExternaLlinks. Теперь тут я прочитал , что плагин тяжелый и лучше избавится… Как мне поступить? Порекомендуйте, пожалуйста, оптимальное решение касательно моего сайта.

  8. Сергей:

    А может ссылки делать не активными,а текстовыми?

  9. Илья:

    Хотел спросить по этому поводу «Интересуетесь современными девайсами и электроникой? Добро пожаловать на сайт devaysy.ru» Почему сайт не открывается?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *