- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
На форуме уже поднималась эта проблема:
/ru/forum/720247
Там даже есть решение, но оно немного неправильное. Сейчас объясню.
Само решение:
Решение найдено:
В файле engine/modules/show.short.php (DLE 9.6 — строка 583 / DLE 9.5 — строка 530) необходимо удалить следующий код:
Проблема в том, что DLE будет отдавать код статуса HTTP: "404 Not Found" для всех пустых категорий на сайте. Для меня это недопустимо, т.к. в некоторых категориях я хочу вывести статический контент + новости через тег {custom}.
Решение по ссылке вначале этой темы помогает, но и создает дополнительную проблему. Теперь DLE отдает код статуса HTTP: "200 OK" для любых категорий, даже для несуществующих.
У меня такая структура:
site.ru/category/
site.ru/category/subcategory/
Новости добавляются в подкатегорию. Для site.ru/category/ DLE отдает "404 Not Found", а для site.ru/category/subcategory/ "200 OK".
Бывают ситуации, когда подкатегория тоже пустая, но на ней выводится статический контент, поэтому она тоже должна отвечать "200 OK".
Можно ли как-то заставить DLE проверять, существует ли категория на сайте и если да, то отвечать "200 OK", а если категории не существует (или подкатегории), то отвечать "404 Not Found".
PS Это, конечно, недоработка движка. Стоило предоставить вебмастерам решать, какие категории будут индексироваться, а какие нет. Вебмастер сам в состоянии удалить категорию, если она не нужна на сайте.
Возможно такой способ прокатит:
LovelAss, я в пхп не силен. Не подскажите куда вставить этот код или что им заменить?
Korew, ну видимо строку из примера выше:
if ( $newsmodule ) @header ( "HTTP/1.0 404 Not Found" );
LovelAss, получилось. Все работает вроде правильно. Спасибо большое!
Я немного упростил, в строку:
} elseif( !$news_found AND !$allow_userinfo AND $do != '' and $do != 'favorites' and $view_template != 'rss' ) {
добавил:
and $category_id == "not detected"
заработало.
Конечная инструкция, может кому-нибудь пригодится:
в файле /engine/modules/show.short.php строку
заменить на: