Перейти к публикации

Поиск страниц на которых стоит "Запретить индексацию страницы для поисковиков"


Рекомендованные сообщения

Добрый день!

 

Имеется онлайн кинотеатр - http://kino-line.su/

На сайте имеется около более 10 000 страниц с фальмами.

В процессе создания, большая часть страниц сайта была закрыта от роботов с помощью установки галочки "Запретить индексацию страницы для поисковиков".

Со временем часть контента обновлялась и давался доступ поисковикам к индексу.

Сейчас возникла большая путаница, какая страница разрешена к индексу, а какая запрещена. Открывать каждую страницу и прокручивать вниз для того чтобы увидеть стоит или нет галочка - не удобно.

Теги <meta name="robots" content="noindex,nofollow"> не выводятся, так как все настроено через robots.txt

 

<spoiler>

User-agent: *
Disallow: /engine/go.php
Disallow: /statistics.html
Disallow: /*subaction=userinfo
Disallow: /*subaction=newposts
Disallow: /*do=lastcomments
Disallow: /*do=feedback
Disallow: /*do=register
Disallow: /*do=lostpassword
Disallow: /*do=addnews
Disallow: /*do=stats
Disallow: /*do=pm
Disallow: /2014/
Disallow: /2015/
Disallow: /index.php?do=
Disallow: *page/    
Disallow: /catalog/
Disallow: /index
Disallow: /top
Disallow: /tags/
Disallow: /xfsearch/
Disallow: /actor/

User-agent: Yandex
Disallow: /engine/go.php
Disallow: /statistics.html
Disallow: /*subaction=userinfo
Disallow: /*subaction=newposts
Disallow: /*do=lastcomments
Disallow: /*do=feedback
Disallow: /*do=register
Disallow: /*do=lostpassword
Disallow: /*do=addnews
Disallow: /*do=stats
Disallow: /*do=pm
Disallow: /2014/
Disallow: /2015/
Disallow: /catalog/
Disallow: /top
Disallow: /index.php?do=
Disallow: /index
Disallow: /tags/
Disallow: /xfsearch/
Disallow: /actor/
Host: kino-line.su

Sitemap: http://kino-line.su/sitemap.xml

</spoiler>

 

Прошу вас помочь мне подсказать идею, каким образом можно оперативно отсортировать те страницы, которые разрешены для просмотра поисковику от тех страниц, которые запрещены? 

Жду ответа, спасибо!

Ссылка на сообщение
Поделиться на других сайтах

Зайдите в phpMyAdmin -> выберите вашу базу данных слева -> в вкладку SQL вставьте следующий запрос и нажмите "Вперёд"

SELECT * FROM dle_post_extras WHERE disable_index=1;

Будут выведены все запрещенные к индексации новости.

В столбце news_id содержатся ID новости.

Что это за новость вы можете быстро узнать перейдя по site.ru/ID-.html (где вместо ID подставите нужную цифру идентификатора новости) , если у вас в настройках включена "Обработка неверных URL ЧПУ"

Изменено пользователем webair
Ссылка на сообщение
Поделиться на других сайтах

А  я вот что-то не понял следущего

6 часов назад, Rachel сказал:

В процессе создания, большая часть страниц сайта была закрыта от роботов с помощью установки галочки "Запретить индексацию страницы для поисковиков"......
 

...Теги <meta name="robots" content="noindex,nofollow"> не выводятся, так как все настроено через robots.txt

Так через роботс запрет стоит или через скрипт?

 

Изменено пользователем alex32
Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, webair сказал:

Зайдите в phpMyAdmin -> выберите вашу базу данных слева -> в вкладку SQL вставьте следующий запрос и нажмите "Вперёд"


SELECT * FROM dle_post_extras WHERE disable_index=1;

Будут выведены все запрещенные к индексации новости.

В столбце news_id содержатся ID новости.

Что это за новость вы можете быстро узнать перейдя по site.ru/ID-.html (где вместо ID подставите нужную цифру идентификатора новости) , если у вас в настройках включена "Обработка неверных URL ЧПУ"

Добрый день!

 

Огромное спасибо вам за подсказку, все получилось.

А можно как нибуь сконфигурировать вопрос так, чтобы в ответе БД на этот запрос сразу содержался и Title ?

5 часов назад, alex32 сказал:

А  я вот что-то не понял следущего

Так через роботс запрет стоит или через скрипт?

 

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

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Rachel сказал:

А можно как нибуь сконфигурировать вопрос так, чтобы в ответе БД на этот запрос сразу содержался и Title ?

там будет и title и shortstroy и все остальные поля. Этот запрос просто отсортирует и выведет только запрещеные к индексации
 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, alex32 сказал:

там будет и title и shortstroy и все остальные поля. Этот запрос просто отсортирует и выведет только запрещеные к индексации
 

Спасибо за ваш ответ. Но к сожалению, таблица dle_post_extars не содержит информацию о Title.

 

Используя ваш запрос, мне успешно удалось вывести ID закрытых от индекса записей.

Хотелось бы модицифировать этот запрос таким образом, чтобы потом отобразить столбцы с полученным ID из таблицы dle_post.Тогда, на выходе мне бы удалось получить Title всех статей закрытых от индекса.

 

Возможно, вы можете подсказать мне такой универсальный запрос:))

Спасибо!

Вот, можно из первого запроса получить все ID, экспортировать их, проставить запятые и потом следующим запросом вывести все страницы с нужными ID из таблицы dle_post

 

SELECT * FROM dle_post where ID IN (494, 495, 497,498)

 

Но при таком раскладе, после первого запроса у меня получилось 10 000 ID, надо перед каждым проставить запятую и вынести в одну строку - весьма трудоемкая задача получается...
 

Ссылка на сообщение
Поделиться на других сайтах
10 минут назад, Rachel сказал:

Но к сожалению, таблица dle_post_extars не содержит информацию о Title.

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

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, alex32 сказал:

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

Да просто приходится выполнять несколько лишних операций, прежде чем узнать название статьи.

А при таком огромном количестве новостей, лишнее количество операций возрастает пропорционально количеству новостей:))

Ссылка на сообщение
Поделиться на других сайтах

Можно сделать все одним запросом.

SELECT * FROM dle_post p LEFT JOIN dle_post_extras e ON (p.id=e.news_id) WHERE e.disable_index=1;

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, celsoft сказал:

Можно сделать все одним запросом.


SELECT * FROM dle_post p LEFT JOIN dle_post_extras e ON (p.id=e.news_id) WHERE e.disable_index=1;

 

Потрясающе! Сказать честно, моих знаний в SQL недостаточно для того, чтобы понять как это работает, но это работает!

 

Огромное спасибо, 100500 плюсов вам:))

Ссылка на сообщение
Поделиться на других сайтах
16 минут назад, Rachel сказал:

Сказать честно, моих знаний в SQL недостаточно для того, чтобы понять как это работает, но это работает!

 

Разбираем по частям:

SELECT *

Думаю с этим понятно. Означает что выбрать значения всех полей.

FROM dle_post p

Выбрать нужно из таблицы dle_post а для удобства чтобы не писать все имя таблицы, мы ее обзовем просто "p" в этом запросе

 

LEFT JOIN dle_post_extras e

К таблице dle_post нужно присоедить таблицу  dle_post_extras а для удобства чтобы не писать все имя таблицы, мы ее обзовем просто "е" в этом запросе

 

ON (p.id=e.news_id)

Обе таблицы мы обьеденяем по  id у таблицы dle_post которую назвали просто p и по news_id у таблицы dle_post_extras которую назвали просто e

 

WHERE e.disable_index=1;

Тут думаю опять все понятно, выборку делаем по нужному условию 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...