Rachel 0 Опубликовано: 29 июня 2016 Рассказать Опубликовано: 29 июня 2016 Добрый день! Имеется онлайн кинотеатр - 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> Прошу вас помочь мне подсказать идею, каким образом можно оперативно отсортировать те страницы, которые разрешены для просмотра поисковику от тех страниц, которые запрещены? Жду ответа, спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
webair 178 Опубликовано: 29 июня 2016 Рассказать Опубликовано: 29 июня 2016 (изменено) Зайдите в phpMyAdmin -> выберите вашу базу данных слева -> в вкладку SQL вставьте следующий запрос и нажмите "Вперёд" SELECT * FROM dle_post_extras WHERE disable_index=1; Будут выведены все запрещенные к индексации новости. В столбце news_id содержатся ID новости. Что это за новость вы можете быстро узнать перейдя по site.ru/ID-.html (где вместо ID подставите нужную цифру идентификатора новости) , если у вас в настройках включена "Обработка неверных URL ЧПУ" Изменено 29 июня 2016 пользователем webair 1 Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 29 июня 2016 Рассказать Опубликовано: 29 июня 2016 (изменено) А я вот что-то не понял следущего 6 часов назад, Rachel сказал: В процессе создания, большая часть страниц сайта была закрыта от роботов с помощью установки галочки "Запретить индексацию страницы для поисковиков"...... ...Теги <meta name="robots" content="noindex,nofollow"> не выводятся, так как все настроено через robots.txt Так через роботс запрет стоит или через скрипт? Изменено 29 июня 2016 пользователем alex32 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Rachel 0 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Автор 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, но я могу и ошибаться. Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 2 часа назад, Rachel сказал: А можно как нибуь сконфигурировать вопрос так, чтобы в ответе БД на этот запрос сразу содержался и Title ? там будет и title и shortstroy и все остальные поля. Этот запрос просто отсортирует и выведет только запрещеные к индексации Цитата Ссылка на сообщение Поделиться на других сайтах
Rachel 0 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Автор 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, надо перед каждым проставить запятую и вынести в одну строку - весьма трудоемкая задача получается... Цитата Ссылка на сообщение Поделиться на других сайтах
alex32 942 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 10 минут назад, Rachel сказал: Но к сожалению, таблица dle_post_extars не содержит информацию о Title. а да, сорри, спросонок не разглядел о чем речь. С таким количеством новостей я бы не стал такие запросы делать. чем айди то неустраивает Цитата Ссылка на сообщение Поделиться на других сайтах
Rachel 0 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Автор 1 час назад, alex32 сказал: а да, сорри, спросонок не разглядел о чем речь. С таким количеством новостей я бы не стал такие запросы делать. чем айди то неустраивает Да просто приходится выполнять несколько лишних операций, прежде чем узнать название статьи. А при таком огромном количестве новостей, лишнее количество операций возрастает пропорционально количеству новостей:)) Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 077 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Можно сделать все одним запросом. SELECT * FROM dle_post p LEFT JOIN dle_post_extras e ON (p.id=e.news_id) WHERE e.disable_index=1; 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Rachel 0 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Автор 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 плюсов вам:)) Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 077 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 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; Тут думаю опять все понятно, выборку делаем по нужному условию 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Rachel 0 Опубликовано: 30 июня 2016 Рассказать Опубликовано: 30 июня 2016 Автор ххм, оказывается я не знал о возможности сокращения "e" - теперь буду знать! Большое спасибо:) Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.