Привет, друзья. Я почти все свое время уделяю внутренней оптимизации сайта и целевых страниц. Так как большинство моих сайтов построены на CMS DLE, то и приходится много работать с этим движком. Я и раньше говорил, что с SEO разработчики не дружат, и вообще такого слова не слышали никогда, но оказалось все еще хуже, чем могло бы быть. Я даже подготовил целую серию постов, посвященных «осеошиванию» народного движка (см. в категории Datalife Engine).
Но сегодня я бы хотел поговорить про такую важную вещь как html карта сайта для DLE. Сколько я не искал в интернете нормальный модуль карты, так и не нашел. Есть, конечно, несколько решений, но все они дают совсем не тот результат, который нужен, а порой даже наносят вред. Пришлось писать модуль самому, а точнее поручить профессионалам реализацию моих «хотелок». Выражаю огромную благодарность Фомину Александру за энтузиазм и невероятную скорость работы.
Модуль карты сайта для ДЛЕ, который я собираюсь вам представить, отвечает всем требованиям seo и предельно прост в установке.
Полный список модулей для DLE от АлаичЪ'а:
SiteMap – модуль генерации HTML карты сайта для DLE
Оригинальное название: SiteMap
Совместимость с CMS: DLE 8.2-10.6
Распространение: Бесплатно, As Is, при распространении ссылка на источник обязательна
Актуальная версия: 2.2 (от 08.05.2014)
Назначение: Вывод ненумерованного списка со ссылками на все публикации, категории и статические страницы.
Особенности: Визуальный генератор кода для вставки. Детальная настройка принципа вывода всех элементов сайта — новости, категории, статические страницы — количество выводимых элементов, принцип сортировки и порядок сортировки, отображение элементов в виде ссылки или простым текстом, возможность включить/исключить конкретные элементы.
Описание и настройка модуля HTML карты сайта для DLE
Друзья, 3 июня 2012 — это большой день, в свет вышла совершенно новая карта сайта версии 2.0. Мы поднимаем планку удобства использования нашего модуля на новый уровень. Реализованная в модуле LinkEnso система визуальной генерации кода нам (надеюсь, и вам тоже) очень понравилась и мы решили внедрить ее и в модуль карты сайта. Теперь вам не надо читать руководства и описания всех функций и их значений — достаточно зайти в админку, указать несколько значений и все — модуль готов к работе!
Помимо сказанного выше, хочется перечислить еще несколько важных особенностей:
- модуль полностью кешируется;
- модуль использует API DLE;
- в карте не выводятся публикации, не прошедшие модерацию, а так же запланированные на будущее;
- учитывается наличие/отсутствие ЧПУ, а так же тип ЧПУ;
- предусмотрена такая тонкость – если кто давно работает с движком ДЛЕ, то помнит, что в ранних версиях вообще не было ЧПУ, а потом оно появилось, но только одного типа (такого же, как сейчас формируется тип 3). Так вот это тоже предусмотрено в данном модуле — новые публикации выводятся с url’ом, тип ЧПУ которого выбран в админке, а старые, соответственно, с url’ом ЧПУ старого типа.
Не смотря на появление визуального генератора, предлагаю ознакомиться с механикой модуля.
Модуль вставляется в шаблон main.tpl с помощью тега:
{include file="engine/modules/sitemap.php?param1=value1¶m2=value2"}
param1= — параметр модуля, value1 — значение параметра. Настройки модуля следуют после знака ? и разделены знаком &.
Пример вставки (выводит карту сайта со списком статических страниц и новостями из категорий с id=2,3,4):
[not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file="engine/modules/sitemap.php?show_static=1&need_cats=2,3,4"}[/aviable]
Для того, чтобы карта сайта отображалась на отдельной странице, тег {include ...} необходимо заключить в [aviable=sitemap][/aviable], а тег {content} заключить в [not-aviable=sitemap][/not-aviable]. После этого модуль будет доступен по адресу http://site.ru/sitemap/
После любых изменений параметров и их значений необходимо очищать кеш в админпанели.
Параметры модуля, передаваемые через tpl при вставке:
- need_cats — список id категорий через запятую для вывода в карте
- exc_cats — список id категорий через запятую, исключаемых из карты
- данные параметры бессмысленно указывать одновременно
- need_news — список id статей через запятую для вывода в карте
- exc_news — список id статей через запятую, исключаемых из карты
- данные параметры бессмысленно указывать одновременно
- need_static — список id статических страниц через запятую для вывода в карте
- exc_static — список id статических страниц через запятую, исключаемых из карты
- данные параметры бессмысленно указывать одновременно
- cats_as_links — показывать названия категорий как ссылки (1 или 0)
- show_static — отображать в карте статические страницы (1 или 0)
- cats_sort — поле сортировки списка категорий (поле из таблицы dle_category)
- cats_msort — направление сортировки списка категорий (ASC или DESC)
- news_sort — поле сортировки списка статей (поле из таблицы dle_post)
- news_msort — направление сортировки списка статей (ASC или DESC)
- static_sort — поле сортировки списка статических страниц (поле из таблицы dle_static)
- static_msort — направление сортировки списка статических страниц (ASC или DESC)
- возможны 2 варианта направления сортировки:
- ASC — по возрастанию (по алфавиту)
- DESC — по убыванию (в обратном порядке)
- если поле и порядок сортировки не указаны — используются заданные настройки категорий или стандартные параметры DLE
- cats_limit — максимальное количество выводимых подкатегорий
- news_limit — максимальное количество выводимых статей из категории
- static_limit — максимальное количество выводимых статических страниц
Заметьте, ни одна из приведенных выше настроек не является обязательной, можно вообще ничего не указывать — достаточно просто вставить тег {include file="engine/modules/sitemap.php"} — тогда будут использованы настройки по умолчанию.
Внешний вид и классы стилей карты сайта
Опционально предусмотрено изменение внешнего вида карты сайта, для этого открываем файл стилей (style.css) своего шаблона и прописываем нижеописанные классы.
Перечень CSS классов карты сайта:
.sitemap_categories - элемент <ul> списка категорий
.sitemap_categories li - элемент <li> списка категорий
.sitemap_items - элемент <ul> списка статей
.sitemap_items li - элемент <li> списка статей
.sitemap_static_pages - элемент <ul> списка статических страниц
.sitemap_static_pages li - элемент <li> списка статических страниц
.root - класс для вышеперечисленных элементов, находящихся в корне списка
.sitemap_categories a - элемент <a> c названием категории
.sitemap_categories span - элемент <span> c названием категории
.sitemap_items a - элемент <a> c названием статьи
.sitemap_static_pages a - элемент <a> c названием статической страницы
Установка, удаление и обновление модуля карты сайта на DLE
Установка модуля
- Распакуйте архив с модулем;
- Скопируйте содержимое папки uploads (кроме /templates/) на сервер;
- Содержимое папки uploads/templates/Default/ поместите в папку своего шаблона;
- Запустите файл http://site.ru/sitemap_installer.php и следуйте инструкциям;
- Удалите файл sitemap_installer.php с сервера;
- Зайдите в админпанель, выберите модуль SiteMap и сгенерируйте код;
- Откройте файл main.tpl своего шаблона и найдите:
{content}
Замените на:
[not-aviable=sitemap]{content}[/not-aviable] [aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable]
- Откройте файл .htaccess, который лежит в корне (т.е. там, где лежит основной index.php) и найдите:
RewriteEngine On
Ниже добавьте:
# Карта сайта RewriteRule ^sitemap(/?)+$ /?do=sitemap [L]
- Откройте файл /engine/engine.php и найдите:
$metatags = <<<HTML
Выше добавьте:
if ($do == 'sitemap') { $nam_e = "Карта сайта"; $metatags['title'] = "Карта сайта {$config['home_title']}"; $metatags['description'] = "Карта сайта {$config['description']}"; $canonical = ''; }
- Процесс установки завершен — карта сайта доступна по адресу http://site.ru/sitemap/
Удаление модуля
- Загрузите файл sitemap_uninstaller.php на сервер (в папку где установлен DLE);
- Запустите файл http://site.ru/sitemap_uninstaller.php и следуйте инструкциям;
- Удалите все файлы модуля, загруженные при установке;
- Отмените все правки файлов движка (main.tpl и .htaccess), внесенные при установке;
- Не забудьте удалить файл sitemap_uninstaller.php.
Обновление модуля
- Скачайте новую версию модуля со страницы https://alaev.info/blog/post/1974
- Распакуйте архив с модулем.
- Скопируйте содержимое папки upload (кроме файла sitemap_installer.php и папки /templates/) на ваш сервер, отвечая «Да» на вопросы вашего FTP-клиента о замене существующих файлов.
Внимание! Для обновления с версии v.1.x до версии v.2.x:
Необходимо полностью скопировать новые файлы из версии 2.x на сервер, при совпадении имен подтвердить замену. После этого необходимо запустить http://site.ru/sitemap_installer.php и следовать инструкциям. На этом обновление завершено.
Живой пример работы можете видеть тут: http://www.winterlife.ru/sitemap
Скачать модуль HTML SiteMap для DLE
АКТУАЛЬНАЯ ВЕРСИЯ: html sitemap dle v.2.2 — описание на store.alaev.info или скачать на store.alaev.info
История версий (History Log)
- v.2.2 — 08.05.2014
- Полностью переработано оформление модуля для всех версий DLE.
- Исправлены мелкие ошибки и произведены улучшения. Обязательно при обновлении проделайте пункт с правкой файла engine.php в инструкции по обновлению.
- v.2.1.1 — 17.04.2014
- Обновлен код модуля для совместимости с новым форматом файла настроек DLE версии 10.2 и выше.
- v.2.1 — 08.10.2012
- Исправлен баг в генераторе кода.
- Исправлены опечатки в админке.
- v.2.0 — 03.06.2012
- Добавлен установщик.
- Появилась админка с генератором кода для вставки в шаблон.
- v.1.2 — 02.06.2012
- Введен контроль за версией DLE.
- Модуль теперь совместим с линейкой DLE 8.2-9.6.
- v.1.1 — 02.11.2011
- Устранены баги с некоторыми функциями модуля.
- v.1.0 — 16.03.2011
- Официальный релиз.
FAQ — ответы на часто задаваемые вопросы
Q: Зачем мне две карты сайта xml и html? В чем их отличие? Можно ли их использовать одновременно?
A: Это совершенно две разные сущности: xml-карта сайта предназначена только для поисковиков. html-карта сайта предназначена для пользователей для навигации по сайту. Их можно и нужно использовать одновременно.
Q: Какую карту сайта надо добавить в панель вебмастера Яндекс и Google?
A: Поисковикам необходимо «скормить» именно xml-карту сайта, а не ту карту, что создает данный модуль.
Q: Ссылку на какую карту сайта можно поставить на сайта (например, в футере)?
A: Ссылаться нужно только на html-карту сайта, т.е. ту, которая создается данным модулем и доступна по адресу http://site.ru/sitemap/
Q: У меня возникла следующая ошибка, что делать?
Fatal error: Cannot redeclare class Sitemap in /.../engine/modules/sitemap.php on line 55
A: Воспользуйтесь альтернативной установкой карты сайта через статические страницы — метод описан тут #comment-4816
Q: Работает ли данный модуль на DLE 10?
A: Да, все работает нормально. Но если у вас возникли какие-то трудности, то есть еще один альтернативный вариант. Спасибо пользователю под ником Ryan — метод описан тут #comment-16865
Q: У меня очень много публикаций на сайте, и все эти ссылки выводятся на одной странице. Это же лажа, Яндекс ругается!
A: Да, Яндекс ругается. Чтобы сократить количество ссылок на странице, воспользуйтесь параметром ограничения вывода количества новостей news_limit (см. подробности в списке параметров).
Q: Сколько ссылок на странице карты можно/нужно выводить?
A: Из официального ответа службы поддержки Яндекса: рекомендуемое количество ссылок в html карте сайта не должно превышать 3000 ссылок.
Q: А как же разделение карты сайта на страницы? Сделайте пожалуйста.
A: Постраничная разбивка карты сайта не подразумевается структурой БД и логикой модуля. В ближайшее время возможность разбивки на страницы не предвидится.
Вот я вам все и рассказал, прошу скачивать, тестировать и писать отзывы. Если найдете какие-то ошибки — пишите, все максимально оперативно будем править. Так же если есть какие-то пожелания по поводу функционала, доработок, тоже пишите, все обсудим и сделаем!
Кстати, карта сайта работает только по адресу http://site.ru/index.php?do=sitemap
По адресу http://site.ru/sitemap недоступна. А должна? Или нет?
Разобрался почему не открывается карта по адресу http://site.ru/sitemap
У меня, почему то, не работает редирект который прописан в мануале:
RewriteRule ^sitemap(/?)+$ /?do=sitemap
Нужно было прописать явно:
RewriteRule ^sitemap(/?)+$ index.php?do=sitemap
Автор, может стоит такой редирект прописать в help?
Если у кого возникает подобная ошибка, надеюсь этот пост поможет.
Ещё раз спасибо за модуль.
Не-не, в мануале все прописано верно, за исключением одного момента. В конце забыли мелкую деталь, строчка должна быть такой:
RewriteRule ^sitemap(/?)+$ /?do=sitemap [L]
Буква L в квадратных скобках важна. index.php прописывать там точно не надо!
Точно. С буквой L работает. А что она означает если не секрет? Долго рыться в мануалах...
Так все просто же, модификатор L (last) — останавливает процесс преобразования, т.е. текущее преобразование считается окончательным.
Доброго времени суток — у меня вот такой вопрос я все сделал по инструкции но мой файл .htaccess состоит из таких строк:
Это я вставил сверху:
И карта моя доступна по адресу http://site.ru/index.php?do=sitemap, как написал Stanislav. Нужно ли мне что нибудь править или таквсе работает как надо?
Ну если карта будет доступна по адресу http://site.ru/sitemap, то значит все путем и ничего больше делать не надо!
По этому адресу у меня только это:
«Внимание, обнаружена ошибка.
По данному адресу публикаций на сайте не найдено, либо у вас нет доступа для просмотра информации по данному адресу.»
Все это я пробую на домашнем хостинге — может ли это повлиять?
Встряну в Ваш разговор. Несколько вопросов:
— Вы устанавливаете карту на движок dle?
— Вы прописываете строку в файл .htaccess, который находится в корневой папке сайте?
— Вы включили ЧПУ в движке сайта?
Если на все вопросы ответ утвердителен, тогда пропишите в верху .htaccess следующую строку:
RewriteEngine On
Проще говоря, у вас не включены ЧПУ и страница не может редиректить по адресу site.ru/sitemap
Спасибо все сделал все получилось!!!
Stanislav и АлаичЪ Спасибо большое, все работает:)
1) Не написано для какой версии DLE
2) Не написано как удалить модуль или как обновить его.
Подойдет для любой версии (полагаю, что начиная с 8.x). Сам лично проверял на 8.2, 8.5, 9.2
Удалить просто — все, что заливали на сервер, какие изменения делали в файлах надо удалить. А обновлять нечего, новых версий еще не было, да и не планируется, если не будет конструктивных предложений от пользователей.
Поставил, все нормалек, работает.
Но! Сверху над картой выводит:
Как пофиксить?
Ага, работает. Чтобы не выводило ошибку, надо было вставлять такой код, как указан в публикации:
Первая строчка как раз отвечает за то, чтобы ошибка не выдавалась.
Именно такой код у меня и стоит.
Вооще то в ДЛЕ 9.2 тег {content} выводи содержимое.
А за вывод служебной инфы отвечает тег {info}.
Ну так-то да... В таком случае можно попробовать добавить {info} сюда:
Скажите пожалуйста, а зачем нужна ХТМЛ карта сайта?
Чтобы сократить уровень вложенности страниц, например. А для каких-то сайтов такая карта служит помощником в навигации для пользователей, так же как оглавление в книге.
Ясно. Думаю надо установить
Спасибо автору за карту сайта.
Эту карту можно значительно проще поставить чем написано в инструкции по установке.
1. Распаковываем скачанный архив и загружаем файлы на сервер:
Файл sitemap.php загружаем в /engine/modules/
Файл sitemap.tpl загружаем в /templates/{THEME}/
2. Создаём статическую страницу
Вписываем {include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1"}
ставим галочку "Исходный текст HTML без фильтрации и изменений"
3. Всё, ваша карта сайта доступна по адресу http://site.ru/sitemap.html
Всё красиво и по человечески. И ненужно мутить кашу с авиаблами в main.tpl, и ненужно лезть и править .htaccess (с которым я вижу у многих возникли проблемы).
Жаль я не разбираюсь в PHP, но догадываюсь что можно ещё переделать так что бы вообще не было файла sitemap.tpl.
Классная идея ;) Действительно так гораздо проще будет! Спасибо за идею, сейчас обновлю пост!
В свете последних событий и фиксов безопасности теперь вставка {include file=...} в статических страницах не работает.Надо изобретать что-то новое.
Да, я знаю. Но вот как раз ничего изобретать и не надо! Использовать надо тот способ, что был предусмотрен изначально!
Теперь понятно почему у меня перестала работать Карта сайта. Вместо нее, сообщение Filtered.
sitemap.tpl устранить вообще не проблема! Наоборот — его добавление прибавило пару проблем, ведь проще всего было сделать без него. Странно, что файл шаблона считают артефактом, ведь вывод модуля через шаблон реализован именно для удобства конечного пользователя, которому может вдруг понадобиться стилизовать карту сайта каким-то особым образом, не лазая в php код и не трогая файл модуля. Это же относится и к модулю CatFace.
Ну так стилизировать можно и в статической странице:
Вписываем
И задаём стили для класса
Согласен, это вариант. Но, в то же время, это дело вкуса. Так-то, любой модуль DLE, располагающийся на отдельной страничке (FeedBack, например, или тот же PM), можно было реализовать с помощью статических страничек, таким образом, сократив количество tpl и упростив процедуру настройки внешнего вида для этих модулей. Но создатели движка поступили иначе, отделив «компот» от «мух». Вывод модулей через шаблоны — это всего лишь следование общей логике создателей данного движка. Но, если уж очень хочется избавиться от tpl-ки, достаточно в файле /engine/modules/sitemap.php заменить следующий код:
На вот этот:
Вот этот вариант мне подошел лучше всего. Версия движка 10,3 , ЧПУ отключено. С отключенным ЧПУ другие варианты не работают.
Спасибо за совет.
Всё сделала, как вы советовали, но у меня, когда открываю просмотр страницы показывается вот эта сточка {include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1"} , а самой созданной карты сайта нет, кроме названия КАРТА САЙТА. Что я не правильно сделала, подскажите?
2 предложения по доработке модуля:
1) кеширование (ускорение загрузки)
2) постраничная навигация (устраняем проблемы с ПС)
А кеширование в нём помоему есть.
Да, кеширование есть, об этом даже в посте написано.
А постраничная навигация не получается по причине строгой логики, связанной с вложенностью категорий, которая будет нарушена.
Если делать постраничную навигацию, то придется выводить все записи просто списком, что уже не совсем соответствует карте сайта.
Да, про кеширование проглядел.
А по поводу навигации — можно сделать 2 уровня:
1 — только категории с подкатегориями
2 — новости из выбранной категории (подкатегории)
И во втором пункте уже постраничная навигация.
Это конечно актуально только для сайтов на которых больше 1000 новостей.
Как-то это все слишком хитро!
Вопрос такой, мой main.tpl выглядит так:
Как мне правильно подключить карту сайта? Как не пытался ничего не выходит, точнее выходит, но отображается неправильно.
В Вашем случае код должен быть такой:
mithrandir, спасибо, всё заработало.
Спасибо за мод! Есть одно недоразумение с созданием карты, с временем исполнения скрипта, а именно ограничение хостера в 30 секунд, иногда хостер просто отрубает сайт.
Было бы не плохо сделать как и с перестроением публикаций в самом движке сделано, с паузой, если много категорий и новостей, то нагрузку этот мод создаёт просто космическую.
И ещё, при попытке распечатать карту из статической страницы по адресу http://xxxxxxx.ru/sitemap.html, прописанной по методу asmakovec2, получаем вот такую ошибку:
Fatal error: Call to a member function load_table() on a non-object in /home/xxxxxxx/public_html/engine/modules/sitemap.php on line 351
Добавлю ещё пару строк...
Это у меня только с кешем непонятка какая то? в разных браузерах карта создаётся по новой, и через некоторое время кеш этот мод не видит снова... и опять снимает всю карту... ХОТЯ файл кеша site_tree.tmp присутствует!!! и весит около 560 KB
Снёс пока мод, просто пока снимает карту — напрочь ложит сайт, хостер сначала ругался, теперь просто отрубает сайт на 10 минут...
да и с кешем не пойму что творится... хотя идея понравилась, и всё красиво настроилось... но такие нагрузки не для моего тарифа, видимо... Может есть лечение или исправление этой проблемы?
(Во время тестирования изменений на сайте не происходило...)
Ложит сайт скорее всего из-за того что у вас много новостей, и количество ссылок выводимых в карте очень большое.
1. По поводу кеша — по умолчанию в DLE API (если включено кеширование) время актуальности кешированной информации составляет 300 секунд, т.е. 5 минут. Это значение для конкретного модуля SiteMap можно изменить в строке №478 файла /engine/modules/sitemap.php
На ней мы видим следующий код:
Чтобы установить время жизни, допустим, один час, нужно заменить его на такой:
2. На сколько много информации у вас на сайте? Сколько категорий? Сколько статей? У меня навязчивое ощущение, что база данных или не проиндексирована, или индексы сбились. Попробуйте выполнить операцию «оптимизация базы данных» в системе администрирования, если не поможет, нужно смотреть состояние самих таблиц.
3. Если ничего не поможет, можно попробовать «разбить» карту на несколько страниц, т.е. в том случае, если Вы делали карту по методу asmakovec2, то создайте, допустим, 5 статических страниц и выводите на них по 1/5 от всех категорий сайта, а под вставкой модуля можно руками сделать ссылки постраничной навигации. Это уже конечно акробатика какая-то, но такой вариант тоже есть.
Модуль действительно может жрать ресурсы, это его минус, зато при этом он рекурсивно проходит всю базу, какой вложенности бы она ни была и всё расставляет на свои места — это, согласитесь, плюс!
Сайтик молодой
Общее количество новостей: 4266
Категорий: 560
Не думаю что это слишком много...
Что такое " Оптимизация базы данных " я, конечно же знаю...
Спасибо за подсказку про кеш, тогда у меня этот мод ещё поживёт... ;-)
Только вот изначально пять минут — это очень мало, раз нагрузка высокая, может по дефолту хотя бы часа 3-4 было бы...
А что насчёт ошибки
Fatal error: Call to a member function load_table () on a non-object in /home/xxxxxxx/public_html/engine/modules/sitemap.php on line 351
А то первым желанием было распечатать эту красотищу, весь сайт как на ладони!!!
Данная ошибка вылезает именно из-за того, о чём я говорил в данном комментарии — статические страницы в данном случае используются не по их прямому назначению. Вылечить ошибку можно следующим образом:
1. Удаляем нафиг sitemap.tpl из папки с шаблонами.
2. Открываем /engine/modules/sitemap.php
3. Находим код
Заменяем его на:
4. Находим код
Заменяем на
Спасибо, пункт №3 выправил ситуацию... всё остальное уже было проделано.
Теперь следующий вопрос... ;-)
Возможно ли страницу для печати так же закешировать? и если да, то как?
По идее-то скрипт срабатывает один и тот же и кеш он должен использовать один и тот же!
Но если она сейчас не кешируется, то уже и не будет ;-) Похоже, что печать в DLE как-то кривовато устроена, с путями до файлов косяки, возможно, поэтому не кеширует. Советую не заморачиваться слишком с этой печатью ;-)
Согласен, хватит голову морочить с этой печатью, можно просто, в конце концов, убрать эту ссылку...
Хотел бы посоветовать автору закрепить все интересные решения из комментариев в шапку, а то "размазались" на всю страницу...
Удачи в разработке модов, ждём новые! ;-)
Всем привет!
Подскажите пожалуйста где настраивать вывод только необходимых категорий в карту и как изменить порядок выводимых категорий.
Все настройки подробно описаны в тексте данного поста. Добавляются настройки прямо при вставке модуля в main.tpl, допустим, {include file="engine/modules/sitemap.php?need_cats=2,3,4&cats_sort=name&cats_msort=ASC"} — выведет в карте категории, имеющие id 2, 3 и 4 в альфавитном порядке по направлению от А к Я. Для регулировки порядка вывода категорий используются параметры "cats_sort" и "cats_msort" — поле и порядок сортировки. Если они не указаны, то категории будут отсортированы по полю "posi", т.е. выведутся в том же порядке, в котором они расположены в разделе "Категории" системы администрирования. В этом же разделе можно установить произвольный их порядок.
А кэш разве нет включаецца?
$site_tree = $dle_api->load_from_cache('site_tree', $timeout=3600);
Тут уже решали проблему с кешем... #comment-4882
Вот я и говорю, что кеш включаецца вот так вроде бы:
$site_tree = $dle_api->load_from_cache ('site_tree', $timeout=3600);
Т.е. добавляецца параметр $timeout.
$site_tree = $dle_api->load_from_cache ('site_tree', 3600); // 3600 секунд = 60*60 = 1 час
Подключил, как советовали — всё работает, время себе увеличил до 4 часов...
PS А что мешает проверить работу скрипта с кешем?
Я ошибался, все работает как написано в комменте #comment-4882!
Спасибо за модуль, но есть один вопрос, можно ли как то эту карту сайта разделить на несколько страниц, к примеру 50 ссылок на каждой?
Данный вопрос уже поднимался в комментах, вот ответ на него #comment-4820
Но если очень хочется, то можно и поизвращаться, как я писал тут #comment-4882 (пункт 3)
Кто знает почему при вставке модуля через статические страницы обрезаются параметры (не учитываются), все кроме первого?
Покажите строку, которую Вы вставляете в статическую страницу для вставки модуля!
Учитывается только первый параметр — cats_as_links:
{include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1&exc_news=4,7,8,41"}
Или exc_news при таком включении:
{include file="engine/modules/sitemap.php?exc_news=4,7,8,41&show_static=1&cats_as_links=1"}
Добавлю:
Такая же картина и при вставке в шаблон main.tpl
Двиг DLE 8.3, жутко мною переписан, но то что касается статических страниц точно не трогал, и свои модули, подключаемые с параметрами, работают нормально.
Не пойму, где я скосячил.
PS Кстати, строка 492 и 493 дубли
В main.tpl мой косяк был (с кодировкой), а в статической странице параметры режутся потому, что символ амперсанда (&) редактором TinyMCE переводится и пишется в базу уже как мнемоника (&).
Как решение: задать параметры в sitemap.php. Или отключить WYSIWYG для статических страниц.
Прошу прощения за навязчивость и кучу комментов, автору спасибо за мод.
Зато это обсуждение может быть полезным для пользователей с аналогичной проблемой ;) За строки 492 и 493 спасибо =)
При добавлении карты сайта в Яндекс Вебмастер после проверки выдало ошибку — «Неверная кодировка».
Файл Sitemap не начинается с корректного префикса utf-8 (0xEF 0xBB 0xBF). Файл sitemap.xml должен начинаться со следующей строки: <?xml version="1.0" encoding="UTF-8"?>
Как исправить проблему?
Так у нас и речь не шла про xml-карту сайта. html и xml карты сайта это совершенно разные вещи.
XML находится по адресу http://site.ru/sitemap.xml, ее и надо отправлять.
Устанавливается на ура. Хочу спросить где именно настраивается вывод блока (дизайн) и если мне нужно вывести список всех новостей из определенной категории, то как мне убрать название самой категории?
Дизайн в файле шаблона sitemap.tpl, разумеется. Ну и не забываем про описанные в посте css классы.
Убрать название категории видимо не получится :( Как-то мы не рассматривали такой вариант, подразумевается только возможность делать или не делать название категории ссылкой.
Алаич, уважаемый, подскажи как перенос строки настроить в выводах статей. Что-то слишком мудрено оказалось... Вот карта http://trexlebov.ru/sitemap
Вот это:
ul.root li {display: list-item}
Пропишите в свой style.css, должно помочь.
Класс! Помогло, сам бы точно не догадался.
Здравствуйте, а вы можете подсказать что мне делать со своей родной картой (вашу не устанавливал).
После обновления dle 9.0-9.3. Яндекс удалил мои страницы из поиска и написал что мой сайт есть зеркалом, и выбрал для меня домен с www.
Вот собстенно говоря и проблема, я настроил файл .htaccess, и теперь в адресной строке показует с www.
Но Гугл и яндекс матюкаются на мою Sitemap, мол в карте адреса без www.
Как это можно исправить???
Я уже сам разобрался...
админка — настройка системы — Домашняя страница сайта: — прописать с www
потом заново сгенерировать карту сайта.
Да, все верно. Только вот вы говорили про sitemap.xml, а я в посте писал про html карту сайта, это совершенно разные вещи.
http://picsee.net/upload/2011-09-30/23b0ed9b04d9.png, у меня вопросик, как сделать, чтобы категории выводились другим цветом?
Прописать с style.css класс .sitemap_categories {color:#ffffff;}, где в данный момент ffffff указывает на белый цвет, надо его заменить на нужный.
Извините, но что-то я не догнал! Файл sitemap.tpl загружаем в /templates/{THEME}/ — в папке httpdocs/templates, а THEME это где? Выделен как тег. Глупый вопрос, но 2 часа ночи, и я не могу разобраться.
Спасибо за внимание.
{THEME} — это название вашей темы оформления, той которая в данный момент используется на сайте. Она выбирается на первой странице в настройках системы под пунктом "Шаблон сайта по умолчанию:". Вот это название и надо подставить вместо {THEME}.
Внутри шаблонов это, разумеется, тег, но когда речь идет о загрузке файлов, то это обозначает путь в вашу папку с шаблоном.
И еще, АлаичЪ, я натыкаюсь на сотни мнений, но единого и близко не увидел, везде чутли не 50×50 делятся мнение. Карта сайта, она увелечивает скорость и качество индексирования поисковиком? Проще говоря, какая у нее главная цель?
По идее да, карта сайта улучшает индексацию сайта, уменьшает уровень вложенности и все такое. Особенно для тех кто барыжит ссылками в сапе, это замечательный способ сделать все страницы сайта 3 ур. вложенности.
А как убрать из карты правила сайта?
Это можно сделать если только полностью исключить статические страницы.
А вот и не правда ;) Нужно лишь прописать в параметр exc_static идентификатор 1!
Например
{include file="engine/modules/sitemap.php?show_static=1&exc_static=1"}
Правда заработает это только в новой версии модуля, которая выйдет уже вот-вот :)
Здравствуйте. Спасибо за карту, обратку поставлю обязательно на ваш сайт, но собственно почему я пишу. Карта работает, все хорошо, но проблема заключается в выводе ссылок на страницу, т.е. у меня в урле нет порядкового номера (пример как выводит: site.ru/kategorja/45-blablabla.html . Пример как мне нужно: site.ru/kategorja/blablabla.html). Есть какие-нибудь мысли по этому поводу?
Каким образом вы убираете id из url'а? Это какой-то хак?
Если это хак, то, скорее всего, это частная ситуация, и подстраивать под нее модуль не имеет смысла.
"Убираем ID новости из URL адреса публикации в DLE" вот такой хак. Походу получается, что мыслей нет по этом поводу как подправить Карту сайта?
Если хотите поправить сами, то:
1. Найдите строку 427:
Замените на
2. Найдите строку 431:
Замените на
mithrandir, спасибо, всё заработало как часики.
Модуль обновлен до версии 1.1 просьба ко всем обновиться.
Устранены ошибки в работе некоторых функций. Оптимизирован код.
Народ, как сделать постраничную навигацию?
Никак.
Вы же в курсе — если на стронице будет куча ссылок ... то это будет считаться как бредо текст (свалка мусора) так же само как с облоком тегов — при выводе всех тегов на страницу ...
придумайте вывод — напишите код ... иначе для больших порталов — это уже не поставиш
Ставим ограничение на вывод новостей из категории. Подкрутить так, чтобы на странице было не более 200 ссылок не сложно. При таком раскладе будет выполнена основная миссия — индексация новых публикаций!
Благодарю еще и за этот модуль. Это просто класс!
В один день две находки, и те, которые решили мои проблемы!
Модуль HTML карта сайта и Модуль CatFace.
Вопрос таков, почему отображаются только страницы, а не полностью сайт с новостями? Как это настроить все? Помогите пожалуйста!
Чего? Напишите понятнее, что конкретно не так и что хочется сделать!
Хочу чтоб были видны все новости (статьи), а сейчас показывает мое обычное меню...
Хочу сделать вот так http://firewheels.com.ua/?page_id=648
Ничего не понимаю! Так и должно быть по умолчанию.
Просто выполните следующее:
Обновил кэш и все вышло! Спс за модуль!
Укажите пожалуйста правильный код ограничения с тегом (news_limit) на лимит новостей что-то не как получается установить
Хочу заметить что если использовать вашу инструкцию то MySQL запросов: 156
при использование всех настоек выше со статической страницей MySQL запросов: 60
при количестве новостей 1200
Полностью согласен с ((MTFX)) -нужна постраничная навигация или от модуля приходится отказывать , но в любом случаи спасибо модуль понравился...
Для ограничения новостей, например, не более 20 на категорию, то код следующий:
При этом будет выводиться 20 последних новостей в каждой категории, заголовки категории будут ссылками и будут выводиться статические страницы без ограничений.
Кеширование будет в след обновлении.
вместо этого [not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1"}[/aviable]
ставить {include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1&news_limit=20"}
В итоге должно получиться так:
Спасибо, все получилось — уменьшил (http://www.radioex.ru/sitemap).
Можете подсказать плагин обратной связи как у вас слева, а то такой не найду только подобие — http://firewheels.com.ua
Отлично.
Форма обратной связи вот — https://alaev.info/post/2681
АлаичЪ, большое спасибо.
Хмм, делал значит правильно, просто много ставил, около 100, поэтому разницу не заметил...
Иван, это «JQmenu Выпадающее боковое меню для DLE» - в поиске можно найти, немного отредактированное.
— «Кеширование будет в след обновлении»
Так кеширование вроде работает, так как выше, если установить при использовании способа статическая страница (проверил с news_limit), на два дня поставил, с кешированием всего 3 запроса!
Ну вот если использовать статическую страницу, то конечно будет работать кеширование. Осталось сделать его для оригинального способа внедрения.
АлаичЪ, а скажите пожалуйста, если я эту карту сайта решил убрать и поставить стандартную через админку своего сайта, то:
Стирать это все и оставить только {content}?
Ответьте пожалуйста!
Ну, во-первых, в DLE нет стандартной карты. Вы ведь понимаете разницу между html и xml картой сайта, не так ли...
Во-вторых, да, надо будет оставить только {content}
Доброе время суток.
Установил ваш модуль Карты сайта, очень хороший.
Но недавно столкнулся с такой проблемой, как вывод Названия тем в английской версии сайта.
Допустим создам еще одно подобие модуля, путем копирования и ренейма файла sitemap.php в папке модуля, как быть с данной строкой
$items_html .= '<a href="'.$this->create_item_url ($item).'">'.stripslashes ($item['title']).'</a>';
когда дополнительно поле титула английской версии выглядит так [xfvalue_eng_titel] , пробовал такой вариант
$items_html .= '<a href="'.$this->create_item_url ($item).'">'.stripslashes ($item['xfvalue_eng_titel']).'</a>';
но реакции ноль.
Помогите пожалуйста с решением данного вопроса.
Заранее спасибо.
С Уважением, Степан.
Это будет довольно непросто. Вот инструкция:
1. Находим строку 283
2. Заменяем на
3. Находим строки 182 и 183
4. Заменяем на
* В данном коде eng_title — название Вашего дополнительного поля
Спасибо за полезный модуль, подскажите как рядом с ссылкой на новость подставить данные из облака тегов, например чтоб получилось так:
Карта сайта
Название категории
Новость по теме "ключевой тег из Облака тегов для этой новости" : Ссылка на новость
Новость по теме "ключевой тег из Облака тегов для этой новости" : Ссылка на новость
Новость по теме "ключевой тег из Облака тегов для этой новости" : Ссылка на новость
Название категории
...
Простым способом это никак не сделать, это надо модуль дописывать...
Жаль что простым способом не получиться, как то посимпотичнее карта могла выглядеть — в следующее обновление можно попросить доброго разработчика добавить такую возможность?
Не уверен в этом. Так как обычно теги или вообще не используются или закрываются от индексации, потому мы с ними и не работали.
Огромное спасибо, карта сайта работает, но у меня такая проблема: я создал статистическую страницу, в неё вставил тег {include file="engine/modules/sitemap.php"}. Всё работает, но когда нажимаю на кнопку распечатать страницу выдаёт ошибку:
Fatal error: Call to a member function load_table () on a non-object in /home/p57369/www/cs-amxx.ru/engine/modules/sitemap.php on line 351
Ну, на самом деле, ничего удивительного. Карта сайта и не предназначена для печати, мало того, изначально она вообще не была предназначена для вывода через статические страницы, а создавалась отдельным модулем.
Так что вот...
в main.tpl поставил как в инструкции
[not-aviable=sitemap]
{content}
[/not-aviable]
[aviable=sitemap]
{include file="engine/modules/sitemap.php?show_static=1&need_cats=2,3,4"}
[/aviable]
получаю следующее сообщение Fatal error: Cannot redeclare class Sitemap in /www/apache/domains/www.forexinvest.ee/htdocs/engine/modules/sitemap.php on line 55
и вижу только саму карту сайта без самого сайта, только страница карты сайта. внешний вид без стилей просто текст с активными ссылками на новость. если же не вставляю в main.tpl вышеуказанный код, тогда карта сайта видна с соблюдением стиля сайта и сам сайт полностью виден, но карта сайта вылетает над самим сайтом , а не в теле сайта. Движок 9.4
Выглядит так, словно Вы вставляете карту сайта в tpl не один раз. Проверьте количество вхождений тега {include file="engine/modules/sitemap.php.........} в Ваших tpl файлах.
Все проверил, не нашел повторных запросов карты сайта в шаблонах. Посмотрите плиз картинки, может кто-то встречался с такой проблемой.
Эта картинка при вставленном коде в шаблон — http://www.forexinvest.ee/sitemap1.png
Это, если все сделано, но в шаблоне ничего не поменяли. Карта сайта выглядит читабельно и с использованием стиля, но не на месте, а над самим сайтом — http://www.forexinvest.ee/sitemap2.png
Возможно, у Вас уже был установлен какой то модуль карты сайта?
Стучите в аську три518два39пять9
Попробовал пойти уже испытанным путем. Всегда этот способ выручал если что то не идет с вставкой в главный шаблон сайта. Создал статическую страницу вставил {include file="engine/modules/sitemap.php"} и получил то что хотел. Единственное что теперь обращаемся к карте сайта не по адресу www.****/sitemap/ , a www.****.ee/index.php?do=static&page=karta-sayta. "karta-sayta" — имя статической страницы. Единственное в чем я сомневаюсь. Увеличит ли нагрузку на сервер такое решение или будет прежней с использованием схемы установки от автора?
Вообще-то url статической страницы должен быть www.****.ee/karta-sayta.html, если только у вас не выключен ЧПУ, а он, насколько я заметил, включен.
Такое решение нисколько не увеличит нагрузку. Даже кеширование, предусмотренное движком для статических страниц будет работать.
Карта показывается на белом фоне и внизу ошибка Fatal error: Cannot redeclare class Sitemap in /var/www/xxx/data/www/xxx/engine/modules/sitemap.php on line 55
вот скриншот как выводит http://s017.radikal.ru/i425/1201/f4/9af6fb2fb105.jpg
Попробуйте создать карту вот этим способом — #comment-4816 — ошибка должна пропасть.
АлаичЪ, скажите, пожалуйста, как сделать что бы категории отмечались <li> <ul>
{include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1&news_limit=20"}
Что мне добавить??
.sitemap_categories — элемент <ul> списка категорий
.sitemap_categories li — элемент <li> списка категорий
Куда добавлять и как?
Я не понял, что именно вы хотите сделать. Вы хотите оформить как-то внешний вид категорий?
Тогда в своем style.css надо прописать стили для классов .sitemap_categories и .sitemap_categories li, для них можно указать цвет, размер и другое. Так что вам надо?
Да, внешний вид, как здесь http://imgs.su/tmp/2012-02-09/1328757475-431.jpg
Что конкретно и как необходимо в CSS прописать что бы было выделение категорий и подкатегорий как на скрине выше?
Попробуйте это добавить в style.css:
ul.sitemap_categories {padding-left:20px;}
ul.sitemap_items {padding-left:20px;}
Что-то не получается что хочется :(
Ну тогда сайт покажите, я же не знаю, что у вас есть и что именно хочется.
Сайт ещё сырой — http://mainsoftware.su/map.html. А хотелось бы точно такое же как http://www.winterlife.ru/sitemap
Можно Вашу аську?
Я так понял нужны точки-маркеры перед каждым пунктом?
Тогда вот так:
ul.sitemap_categories {list-style-type:circle;padding-left:20px;}
ul.sitemap_items {list-style-type:disc;padding-left:20px;}
Спасибо!
А как сделать что бы все маркеры были одноцветные?
Они и так одноцветные, я только что смотрел ;)
Наверно, один я такой нуб, но у меня нечего не получилось по второму способу, равно как и по первому :(
После выполнения всех пунктов и попытки набора site.ru/sitemap.html пишет ошибку "404 страница ненайдена"!
А будет ли работать на 9.4?
Все должно работать на всех версиях.
То что выдает ошибку при вводе site.ru/sitemap.html, то это проблема не модуля. Вы можете просто создать статическую страницу, она должна работать и показывать содержимое, а потом туда можно вставить тег, выводящий карту.
Это какой то бред.как создать статическую страницу?
Вам, всё же, наверное, надо другим делом заниматься, либо ещё не доросли :)
site.ru/admin.php?mod=static&action=addnew
Какой бред?
Заходите в админку DLE, жмете вверху "Список всех разделов", далее "Статические страницы", далее "Создать новую страницу".
В названии пишите sitemap, в "Текст" вставляете тег {include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1&news_limit=20"}, ниже выбираете "Исходный текст HTML без фильтрации и изменений" и жмете "Сохранить".
Где бред-то?
Пишет страница создана,но упорно ее ненаходит.
А ларчик то просто открывался!
Кто может подсказать как сделать чтобы страницы были доступны site.ru/sitemap.html а не site.ru/index.php?do=static&page=sitemap?
Включите в админке ЧПУ: "Настройки системы" -> "Включить ЧПУ: Да"
Не помогло.
В первом поставил Да, во втором тип 2, а все так и осталось.
Всем привет, сегодня прям шквал вопросов, связанных с элементарным неумением работы с движком и с его стандартными функциями...
Может лучше ознакомиться с возможностями движка на оффсайте dle-news.ru, очень многие глупые вопросы отпали бы сами собой...
Посмотри также в файле .htaccess и проверь наличие записи:
Кстати, а кого-нибудь корректно работают на одном сайте одновременно этот модуль и модуль описания категорий. У меня нет почему-то. Только что-то одно. Если отображаются описания разделов, карта сайта не отображается, и наоборот.
У меня все замечательно работает вместе. А вообще карта сайта и не должна отображаться на тех страницах, где есть описания категорий, и наоборот.
Возможно, вы что-то неправильно делали при установке.
Доброго времени суток форумчане, был у меня код наподобе вот этого:
Который вставляешь на статической странице перед {include file="engine/modules/sitemap.php?"} и получается перед картой сайта поиск по карте сайта, но я его потерял, а выше приведенный не работает. Кто-нибудь дайте пожалуйста подходящий код! Заранее спасибо!
Все нашел!!!
Как сделать так, чтобы на странице карты сайта и у главной страницы title был разными?
Для этого надо воспользоваться альтернативным способом установки — #comment-4816
Модуль интересный. В поддержку автора. До этого сайта не раз видел подобное описание данного модуля. И только теперь понятно откуда все спёрли. Спасибо.
Мало того, что сперли, так еще и все копирайты снесли, падлы. Народ уж у нас такой дебильный...
File engine/modules/sitemap.php is in the folder, which is available to write (CHMOD 777). For security purposes the connection files from these folders is impossible. Change the permissions on the folder that it had no rights to the write.
что делать, пробовал по обоим вариантам устанавливать
Выставите на папку /modules/ права 755 и все будет ОК.
Кто знает как сделать карту сайта по страницам, с выводом по 50 новостей например? А то яндекс не индексирует если ссылок очень много! Если кто может хоть платно помочь, очень срочно надо! — Почта — artyom-ryabkin@yandex.ru
НИКАК! 100500 раз уже это обговаривалось в комментариях.
Почему нельзя код переписать ? Я думаю нет ничего невозможного =) Буду искать грамотного программиста...
Я не спорю, все возможно. Но для данного модуля пока что это не предвидится.
Жаль, это огромный минус для больших сайтов.
Я писал как решить эту проблему — сделать ограничение на вывод количества новостей из категорий.
А разве поисковики нормально будут реагировать, если на одной странице будет несколько сотен ссылок? У меня на сайте 35 категорий, и если из каждой по 30 ссылок выйдет, то может многовато получиться и страничка длинновата будет...
Ну выводите в каждой категории по 10 ссылок, или даже по 5. Тогда все проиндексируется нормально. Цель данной карты сайта — ускорить индексацию НОВЫХ публикаций. С этой задачей модуль отлично справляется.
А вообще, у поисковиком существует понятие "максимальное количество ссылок на странице"? Какое количество ссылок желательно держать в карте сайта?
Да, есть такое дело. Чтобы проверить надо зайти в панель вебмастера Яндекса в раздел Индексирование сайта -> Исключенные страницы -> По типу. И там может быть ошибка, типа "На странице слишком много ссылок". Но я не помню, сколько точно это "много".
Вообще лучше не держать на странице более 300 ссылок.
А можно ли название категории выделить в тег <h...>?
Если сами в модуле подправите — то конечно можно. Но я не буду этого делать — потому что это плохая идея.
Я понял, ковырну...
А обоснуйте почему? если категории всего 4-6 будет
А чего тут обосновывать-то? Если надо внешний вид изменить — css вам в руки. Если вы хотите показать важность этой страницы, путем выделения заголовками, то зачем, продвигать что ли собрались?
Поэтому не вижу никакого смысла в лишних телодвижениях.
По поводу карты заметил такую фишку, может кончено только у меня руки-крюки...
При вставке через главную страницу [aviable=sitemap][/aviable] все нормально.
А при её подключении через статическую страницу, параметры show_static=1&need_cats=2,3,4 и т.д. не отрабатываются. Можно как-то исправить?
Обновитесь до последней версии, такой глюк наблюдался в какой-то из версий, мы его исправили.
Использовал v.1.1.
Всё разобрался, убрал .tpl по инструкции в одном из коментов выше, и всё стало отлично)
Здравствуйте, гугл выдал мне такую информацию — «Похоже, что файл Sitemap является страницей HTML. Используйте поддерживаемый формат Sitemap.»
Насколько это является критичным?
Ну все правильно, sitemap для роботов должен быть в формате xml.
А html карта сайта предназначена для пользователей или для роботов (но не для добавления в панели вебмастера).
Спасибо,теперь надо разобраться как сделать карту сайта для роботов.
А что в этой карте разбираться ? Полно сервисов есть которые делают такую карту. И у движка есть модуль.
Подскажите плиз... Установил все по инструкции https://alaev.info/post/1974#comment-4816
Но при переходе на статическую страницу выдает такую ошибку:
Fatal error: Call to a member function load_from_cache () on a non-object in /var/www/*****/data/www/сайт.ru/engine/modules/referer.php on line 243
Как понял, модуль конфликтует с модулем переходы... Как это исправить?
И вообще модуль переходы не актуален в наше время? Есть ли от него толк? А то постоянно ставлю его.
У меня модуль переходы стоит и совершенно ничего ни с чем не конфликтует)
Вот у меня чуток переделка данной карты:
http://mainsoftware.su/map.html
http://mainsoftware.su/allnews/page/1
И можно ли сделать такой вывод карты с помощью вашего модуля?
http://shara-soft.ru/catalog.html — не реклама.
Если да, то можете отписать как?
Иваан, я бы на вашем месте не связывался с модулем "Переходы" — скорее это зло, нежели добро :)
Сделать вывод буквенного каталога можно, но мой модуль для этого не подойдет, тут надо отдельный модуль делать.
id26327371, нехорошо копирайты удалять.
на дле 9.5 работало, а на дле 9.6 не работатет!
Уберите в модуле "flag" — этого поля в 9.6 нет, тогда заработает:
// Список нужных полей из таблицы со статьями
$fields = 'id, category, title, alt_name, date, flag';
Заменить на:
$fields = 'id, category, title, alt_name, date';
Здравствуйте. Не поможете разобраться: нужно чтобы выводились только категории одним списком, без новостей. При "news_limit=0" выводятся все новости. Как организовать такой вывод?
Это надо переписывать часть модуля, чтобы была возможность отключать вывод новостей. Просто так это не сделать.
Добрый вечер! При установке нового движка, столкнулся с такой проблемой.
Выводит ошибку БД
MySQL Error!
------------------------
The Error returned was:
Unknown column 'flag' in 'field list'
Error Number:
1054
SELECT p.id, p.autor, p.date, p.short_story, SUBSTRING (p.full_story, 1, 15) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM dle_post p LEFT JOIN dle_post_extras e ON (p.id=e.news_id) WHERE approve=1 AND allow_main=1 AND date < '2012-05-25 17:44:10' ORDER BY fixed desc, date DESC LIMIT 0,10
С чем это связанно? Как можно исправить?
Т.е. данная карта больше не актуальна на данный момент для ДЛЕ 9.6. Так?
А причем тут установка нового движка? Или вы имели ввиду, что при установке этой карты на новый движок?
Карта будет обновлена на этой неделе, на данный момент на версии 9.6 модуль не работает, ждите обновления!
У меня на 9.6 работает вроде нормально, выставил по 5 новостей http://vst.in.ua/index.php?do=sitemap
Да, новый движок как раз и есть 9.6
Можете попробовать топорный путь, добавить поле flag в таблицу, например: ALTER TABLE dle_post ADD flag int DEFAULT '0';
Возможно поможет...
Не самый лучший вариант, лучше подождать обновления модуля!
Здравствуйте Уважаемый разработчик карты!
Вставил это в статическую страницу:
{include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1&news_limit=20"}
Должно показываться по 20 новостей с каждой категории, но всё равно показывает все новости из категорий. Кэш чистил. Почему не урезает количество новостей?
Вот скрин: http://deficitwarez.ru/uploads/1338137745_2012-05-27_195300.jpg
Убедитесь, что используете именно последнюю версию. Такая проблема была в версии 1.0, в 1.1 ее исправили.
Посмотрел пример работы карты сайта. Это что же, вся карта на одной странице без постраничной разбивки? А если у меня новостей тысяч восемь или девять?
Тогда это будет не быстро грузиться и глаза разбегаться. Но ПС я думаю пофиг. Хотя...
Да, постраничной разбивки нет. Для этого и придумано ограничение на количество новостей, выводимых для каждой категории.
Добрый вечер, слышал такой слушок, что поисковики плохо относятся к сайтам у которых очень много новостей и у них установлена карта сайта варианта все новости в одной строчке (без переключения по страницам).
Как относится к данному вопросу. Просто есть сайт и там 15000 новостей, не повредит это сайту?
Слушок какой-то гнилой, если честно, я ничего такого не слышал и с этим не согласен.
Но если на карте выводить все 15к новостей, то точно ничего хорошего не случится, рекомендую поставить ограничение на вывод количества новостей в категориях до 10-15 штук.
Друзья, сегодня вдвойне великий день! Помимо выхода CatFace v.2.0 я анонсирую SiteMap v.2.0
Прошу скачивать, устанавливать и радоваться, и, конечно же, отписываться о своих впечатлениях!
Подскажите как всунуть слово перед названием новости?
Например:
У меня новость — "Беспощадные", а нужно — Фильм "Беспощадные"
Пропишите нужное слово перед тегом {title} в шаблоне fullstory.tpl и shortstory.tpl — в чем проблема то?
Я про вывод именно в карте сайта
Откройте engine/modules/sitemap.php и найдите:
Замените на:
Спасибо
Все сделал, вот такая ошибка вылезла:
MySQL Error!
------------------------
The Error returned was:
Unknown column 'name' in 'order clause'
Error Number:
1054
Select id, category, title, alt_name, date, flag from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2012-06-09 03:04:25" order by name ASC
Какую версию карты сайта используете? Какая версия DLE у вас установлена?
У меня такая же ошибка выходит... Использую ДЛЕ 9.6 ну и модуль 2 версии.
Стоит ваш модуль и есть проблемка.
Все поисковики индексируют и сайт и карту. Но ооочень часто люди из ПС приходят по запросам не на релевантные страницы, а на карту сайта, что, естественно, не хорошо. Как сделать так, чтобы роботы ходили по карте и естественно по сайту через карту, но при этом не индексировали её. А то куча траффика теряется на таких переходах.
Надеюсь вы меня поняли.
Проблема не в модуле и не в поисковиках. А проблема в том, что у вас контент настолько некачественный, что поисковики отдают предпочтение карте сайта. Проверьте, индексируются ли вообще нужные вам страницы. Если индексируются и проиндексированы, постарайтесь улучшить их качество.
А закрытие от индексации карты сайта уничтожит ее смысл как таковой, проще тогда карту просто удалить.
В настройках админки есть к примеру пунктик — Исключаемые статические страницы...и в подсказках [?] — Список ID статических страниц, исключаемых из карты. Так вот не могу понять как это применить...как к примеру заблокировать к выдачи в карте статическую страницу http://website.com/addnews.html...ведь у статических страниц в DLE нет ID.
... ведь у статических страниц в DLE нет ID...
ID у них есть, к примеру страница правил имеет ID=1, а следующая созданная ID=2 и т.д.
А вот с /addnews.html всё намного сложнее, автор наверняка поможет...
addnews.html не является статической страницей, это служебная страница движка, предназначенная для добавления новостей, и в карте она выводиться не может.
Узнать ID страницы можно просто — зайти из админки в редактирование нужной страницы и посмотреть в адресную строку, в конце будет написано, например: ...=doedit&id=2
Вот такой вопрос, поставил Ваши три модуля. Ставил быстро и как следует не проверял. Вот такая штука по модулю map.
Летит ко всем чертям дизайн в других модулях, например, FAQ http://cardpresso.ru/faq/ и выдает ошибку при попытке распечатать.
Если убираю [not-aviable=sitemap]{content}[/not-aviable][aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable] и ставлю обратно {content}, то все в порядке.
Где ковырять, какой файл?
Зачем вам вообще печать нужна? Уберите это возможность.
А беда в модуле FAQ, в нем и ковырять нужно.
Ошибку нашел,. Оказывается DLE не воспринимет <!-- {content} --> Из-за этого дизайн развалился. Так на заметку всем...
Причем тут не воспринимает. Движок как и положено отрабатывает тег {content} и выводит все его содержимое, и не важно, закомментировали его или нет. Не надо путать понятия!
Select id, category, title, alt_name, date, flag from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2012-06-18 23:03:35" order by date DESC
У меня тоже вот это выскакивает, версия DLE 9.6 тоже ставил сначала старую версию, удалил по мануалу, переустановил новую 2.0 все равно одно и то же. Возможно ли это из-за малого количества категорий (их всего 2) ну и новостей соответственно. Или подскажите в каких файлах попробовать удалить вручную строки модуля, есть подозрение что через унинстал не удаляет.
возможны несколько вариантов:
1. принудительно удалите /engine/modules/sitemap.php и перезалейте заново файлы на сервер.
2. откройте файл /engine/data/config.php — отмотайте вниз, найдите строку 'version_id' => "9.6", и проследите, чтобы версия стояла именно 9.6. Если всё верно, попробуйте убрать кавычки вокруг 9.6, т.е. заменить на 'version_id' => 9.6,
Если это поможет, обязательно отпишитесь, я сделаю обновление!
Огромное спасибо за оперативную помощь, ошибка действительно там. DLE обновлял с 9.5 до 9.6 в конфиге почему то не переписалась версия. Поменял в конфиге версию на 9.6 и модуль сразу заработал, работают оба способа как через инклуд в шаблон так и через статическую страницу. Еще раз спасибо за помощь.
В админке есть очепятка: «Отображать в каТРе статические страницы»
Как сделать так, чтобы на странице карты сайта и у главной страницы title и метаописание были разными? Но при этом адрес карты сайта оставался http://site.ru/sitemap/
1. Открыть файл /engine/engine.php
2. Найти код:
$metatags = <<<HTML
3. ПЕРЕД ним добавить:
if ($do == 'sitemap')
{
$metatags['title'] = '...title...';
$metatags['description'] = '...description...';
}
Спасибо за помощь
Спасибо за инфу!
Если кому надо то я еще немного подредактировал и добавил ключевые слова.
Возможно кому надо...:
if ($do == 'sitemap')
{
$metatags['title'] = '...title...';
$metatags['description'] = '...description...';
$metatags['keywords'] = '...keywords...';
}
Как решить эту проблему у меня дле 9,5 лицензия...
MySQL Error!
------------------------
The Error returned was:
Unknown column 'name' in 'order clause'
Error Number:
1054
Select id, category, title, alt_name, date, flag from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2012-07-11 16:18:26" order by name ASC
ответ что вы дали Максу не прошел у меня... все так же проблема... на двух сайт один у меня на 9,6 а один на 9,5
У Вас другая ошибка. Всё понял, это баг в генераторе кода. Вы там выбираете сортировать новости по алфавиту, и он впихивает в код вставки модуля поле name (вместо title), которого не существует.
Для решения этой проблемы замените в коде вставки модуля "news_sort=name" на "news_sort=title" — всё должно заработать. В следующей версии баг будет исправлен.
вот такой код ставлю...
а ошибка все так же... остается...
{include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1&news_sort=title&news_msort=ASC'}
кеш обновлял все делал уже, что можно...
Я сейчас проверил этот конкретный код вставки, он работает. А вот если бы вместо title стояло name, то ошибка была один в один как у Вас!
Проверьте ещё раз, может чего не сохранилось?
Если кэш чистили из админки, попробуйте очистить парку /engine/cache
А ошибка точно та же самая осталась? Если какая-то другая, скопируйте сюда!
ошибка таже
MySQL Error!
------------------------
The Error returned was:
Unknown column 'name' in 'order clause'
Error Number:
1054
Select id, category, title, alt_name, date, flag from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2012-07-13 13:10:42" order by name ASC
незнаю все сделал как вы сказали... осталось так же...
все работает спасибо, вроде как сработало...
а что это может быть и как это исправить...
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2478081 bytes) in /var/www/a38865/data/www/filmlive.net.ru/engine/modules/sitemap.php on line 530
я думаю это не хватка памяти... но я уменьшил число статей.
Да, нехватка памяти. Параметр news_limit в данном случае не может не помочь, рулите им. И не забывайте попутно чистить /engine/cache
спасибо получилось...
а лимит это ограничение для статей из оперделенной категории или же для всего сайта?
Скажите пожалуйста, почему карта сайта так отображается, дело в том, что на другом шаблоне было все прекрасно? nashistrahi.com/sitemap/
Ну так у вас в css прописано для тегов ul и li margin и padding нулевые. Шаблон идиотский, потому так и есть.
Пропишите в css что-нибудь вроде
.cont li {margin-left: 15px;}
Что нужно подкорректировать в модуле, что бы в карте сайте не было ссылок на полную новость? Оставить только категории и под категории
Занятно. Получится уже не карта сайта, а дерево навигации по сайту :)
Чтобы этого добиться, можно, открыв файл /engine/modules/sitemap.php
1. Найдите код
Закомментируйте его — замените на
//$site_tree .= $this->show_cat_items(0);
2. Найдите код
Закомментируйте его — замените на
// $cats_html .= $this->show_cat_items($cat);
3. Соответственно, при вставке модуля нужно указывать параметр show_static = 0 (для ликвидации статических страниц из карты)
Сделал вывод карты на статической странице, по варианту который написал asmakovec2 в посте 18.05.2011 в 21:24.
Вот только одна проблема, почему-то не работает сортировка статей по алфавиту, ни в одном ни в другом порядке... Причем только при выводе карты на статической странице. При выводе по адресу http://site.ru/sitemap/ — сортировка работает.
Вот так у меня прописано: {include file='engine/modules/sitemap.php?need_cats=16&cats_as_links=0&news_sort=title&news_msort=ASC'}.
В чем может быть причина что сортировка не работает на статической странице? Можно ли как-то сделать чтобы она там работала?
А остальные параметры работают? Ограничение по категориям и прочие?
Ограничение по категориям работает.
Видимо никто так и не сможет мне помочь... :(
У меня такая конструкция main.tpl
[not-aviable=main]
<div class="left-col-in">
<div class="speedbar">{speedbar}</div>
{info}
{content}
</div>
[/not-aviable]
Как не пытался подставить, диз, съезжает. Может кто-нибудь подсказать?
Уважаемые знатоки!
У меня следующая проблема, один сайт с картой заработал великолепно. Второй лежит с адресом: название сайта/dle/ и вот в нем карта никак не работает, кто может посоветовать, где надо что поменять, чтобы проиндексировалось нормально, есть у меня подозрение, что проблема именно в таком расположении?
Заранее спасибо.
Сам сайт (настройки в админке) настроен неверно, вот и проблема.
Уважаемый АлаичЪ, огромное Вам спасибо за Вашу работу и за ответ.
А не могли бы подсказать с какими настройками следует покопаться? Просто в остальном я проблем не находил, а с
этим модулем других знатоков как-то не могу найти.
Заранее спасибо.
В админке: "Настройка системы" -> "Домашняя страница сайта:" надо указать http://site.ru/dle/
Да так изначально и было указано: http://www.сайт.com/dle/
Так, что проблема, скорее всего не в этом. Даже если создавать статическую страницу с данными, как указано выше, получаю — чистую страницу с надписью: Карта сайта {site_tree}
Как я понимаю, это говорит о том. что модуль по какой-то причине не работает.
Кажется нашли, где может быть причина, при установке системы человек ввел в URL сайта: http://www.сайт.com/, а сам сайт работает на http://www.сайт.com/dle/. В админке установлено: "Домашняя страница сайта:" http://www.site.ru/dle/, но видно первоначальные данные где-то прячутся в базе. Никто не может подсказать их местонахождение, а то сейчас просматриваю базу и не могу это отыскать?
Или тупо все сносить и ставить по новой, а затем пытаться восстановить базу из бэкапа?
Ну вот в этом скорее всего и есть причина. Правда, я не знаю, где может скрываться подлянка.
Надежнее будет переустановить. Только вот на счет бекапа — если после переустановки залить старый бекап, то ничего и не изменится. Так что надо в бекапе как-то оставить только публикации и другие данные, типа, комментариев или статических страниц.
Спасибо. Попробую подергать ТП даталайфа, если нет, то базу шерстить стремно. думаю будет безопаснее и дешевле нанять человека, чтобы просто тупо перенес статьи из режима HTML методом копирования с локальной копии сайта, там порядка 1000 статей, думаю за пару недель рабочего времени управится.
Здравствуйте, ув. автор этого замечательного модуля. Могли бы вы мне помочь в следующей проблеме: я установил данный модуль к себе на сайт (он на локалке), ставил все строго по инструкции, после установки сгенирировал нужные мне параметры в админке ( т.е. в самом модуле) и вставил их в файл шаблона, далее прописал редирект ( тоже все строго по инструкции) и попытался зайти, но не смог! При переходе на .../sitemap/ выскакивает ошибка базы данных, прикладываю скриншот ошибки: http://saveimg.ru/pictures/20-08-12/c0418f0b66ccee54c58d4826cdce2803.png
Здравствуйте. Приношу извинения, это баг генератора кода. Для решения этой проблемы замените в коде вставки модуля "news_sort=name" на "news_sort=title" — всё должно заработать. В следующей версии баг будет исправлен.
Ещё раз благодарю за модуль, сам разобрался (просто прочитал все комментарии). Если у кого — то будет такая же ошибка, вот решение (https://alaev.info/blog/post/1974#comment-10219).
В процессе пользования возник вопросик! А возможно сделать отображение статей в карте сайта на ещё не наступившую дату. Дело в том что новость написана, опубликована, но дата события(новости) настанет в выбраный день. Потому новость не отображается в карте сайта.!!!
Можно это сделать, но надо код править. У нас как раз стоит проверка в модуле, чтобы такие новости не выводились.
А могли бы вы переделать этот модуль Easymap — Удобная и простая карта сайта для DLE сайтов с постраничной навигацией или на основе этого сделать постраничную навигацию в своём модуле. Вот страница автора http://php-yuri.ru/scripts.html, карта хорошая, но перестала работать в версии 9.6
Автор просит 50$ за переделку.
Нет, переделать не мог бы, переделкой сторонних модулей не занимаемся. Да и тем более бесплатно. Предлагаю заплатить 50$ автору той карты.
Вот эта переделанная карта сайта http://www.2dle.net/41-karta-sajta-dlya-dle-dlya-polzovatelej.html для 9.6
АлаичЪ, подскажи пожалуйста, есть ли разница, если карта сайта доступна по адресу site.ru/sitemap или site.ru/sitemap.html
А то я сомневаюсь.
Абсолютно без разницы.
Откройте файл .htaccess, который лежит в корне (т.е. там, где лежит основной index.php) и найдите:
RewriteEngine On
Ниже добавьте:
# Карта сайта
RewriteRule ^sitemap (/?)+$ /?do=sitemap [L]
А зачем этот пункт?
Чтобы ты спросил, разумеется, для чего же еще! =)
Это необходимо, чтобы карта была доступна по адресу site.ru/sitemap
А если я хочу, чтобы было видно по адресу site.ru/папка/sitemap? В этом правиле надо что-то менять?
Заменить ^sitemap на ^papka/sitemap
День добрый. Подскажите как можно вывести карту в отдельный .html файл?
Необходимо просто вставить сгенерированный код в новую статическую страницу.
Подскажите плиз, как прописать Заголовок и Описание для странички "карта сайта"
Смотрите FAQ в конце поста.
3. Выводим Speedbar для карты. Для этого откройте файл /engine/engine.php и найти код:
elseif ($do == 'static') $titl_e = $static_descr;
Выше добавить:
elseif ($do == 'sitemap') $nam_e="Карта сайта";
Спасибо большое, приму к сведению.
Добрый день.
А в роботс теперь писать так "Sitemap: http://site.ru/sitemap/" ?
Нет, в robots.txt ничего не надо менять.
Модуль не заработал на 9.6
Какие симптомы? Что говорит?
Пустая страница, только название "карта сайта" и ваш копирайт.
Взял простую карту easymap из комментариев выше, исправил под 9.6, заработало. Постраничную навигацию обязательно в такой карте, это даже не должно обсуждаться.
Не знаю, что за проблема, я только что заново у себя на сайтах установил новую версию — все работает как надо. Какой код сгенерировали в админке и затем в шаблон вставили? Скопируйте его сюда.
Доброго времени суток, автору отличного блога.
Второй день как пробую дле и столкнулся с проблемой создания карты — просто напросто в админке ни чего не создаётся... Посмотрел в корне engine/modules/ — sitemap.php отсутсвует, не знаю он вообще должен там быть?! Если не сложно подскажите в чём может быть проблема?
П.С.
Жду поста о дублях на дле версии 9.7
В стандартной сборке DLE нет html карты сайта, соответственно, файла sitemap.php и быть не должно. Для этого и есть мой модуль.
...Странно, переустановил версию на 1251 и всё заработало.
Ничего странного, модуль не рассчитан на UTF-8 кодировку :)
Большое спасибо. К сожалению, не было много денег на вебмани — заплатил бы больше за модуль. На 9.6 встал без проблем. А то что повторяются посты — не страшно.
Здравствуйте, помогите пожалуйста, я установил ваш модуль карта сайта, все работает, старую карту по адресу http://site.ru/sitemap.xml в robots.txt я изменил на адрес установленной вашей карты сайта, то есть теперь в robots.txt вот такой адрес http://site.ru/sitemap. Так вот, а в самом dle 9.5 есть и ваша карта и стандартная, и я не знаю как отключить старую карту. В google панели управления сайтом я удалил старую карту, и добавил новую, то есть http://site.ru/sitemap, но google мне пишет Ошибка
Файл Sitemap является страницей HTML
Похоже, что файл Sitemap является страницей HTML. Используйте поддерживаемый формат Sitemap. АлаичЪ что мне делать ?
Ну сколько можно уже об одном и том же говорить?! html и xml карты сайта — это две совершенно разные вещи! Предназначены для разных целей и выполняют разные функции. Емае...
Я в этом не силен, так ответьте мне пожалуйста как поставить карту в robots.txt и какую из них стандартную или вашу или обе вместе ? И как правильно сделать это и для robots.txt и для панели управления google
Моя карта сайта предназначена чтобы просто быть на сайте, никакие изменения в robots.txt вносить не надо, ни в какие панели добавлять ее тоже не надо.
Добрый вечер! Спасибо за модуль! Скачал и установил, все в ажуре! Карта сайта работает как часы. Но вот возник такой вопрос — можно ли установить сразу несколько карт на один движок. Для чего? У меня на сайте 8 основных категорий в которых находятся подкатегории и соответственно в каждой подкатегории новости. Так вот на каждую основную категорию мне нужно сделать оглавление раздела в виде карты сайта. Возможно ли это? Пытался поменять sitemap.php на sitemap1.php и соответственно sitemap.tpl на sitemap1.tpl. Далее в коде sitemap.php ( * Класс для создания карты сайта* )
class Sitemap на class Sitemap1. Вторая карта появляется но с ошибками. Я не силен в php просто методом тыка играюсь.
Что можно предпринять?
Можно попробовать сделать несколько карт при помощи статических страниц. Создаете 8 страниц, в каждую индивидуальный код вставляете, все должно работать.
а реально сделать чтобы и теги в карте сайта были?
ещё интересует возможность сделать пиксельную карту сайта.
Теги сделать реально, но я этого точно делать не буду. Чем не устраивает обычная страница просмотра всех тегов? Для поисковика сработает аналогично карте сайта.
Пиксельная карта меня так же не интересует — тем более это не модуль, сами поставьте ссылки с анкором в виде точки и все.
Fatal error: Call to undefined method DLE_API::install_admin_module () in /home/mamayka/domains/otv.by/public_html/sitemap_installer.php on line 52
Это выдает как только я пытаюсь запустить sitemap_installer.php ...Паникую
пардон, не дочитал, сча буду выгребать)))
Да нет, все таки
Fatal error: Call to undefined method DLE_API::install_admin_module () in /home/mamayka/domains/otv.by/public_html/sitemap_installer.php on line 52
Вот так вот... скачал... установил... выкинуло ошибку... оказалось для версий от 8.2...
у меня 8.0...
Может быть в этом дело?
А сами то как думаете? =)
Да так и думаю, другого варианта нет... только проблема есть... кинулся делать, а потом...
Проблема вот в чем, у меня дублируются в моем сайтмапе статьи, то есть я добавляю статью, и эта сатья из того раздела в который я добавил дублируется в другом, совершенно к статье не относящемся... Яндекс индексирует и ту и другую, причем пользователям показывает именно ту, которая находиться не в том разделе... подскажите пожалуйста, что сделать. (ставил сайтмап, который ставят, наверное, все)
Честно, я не знаю о каком сайтмапе речь (xml или html?), это во-первых, во вторых, пора бы уже и движок обновить, с тех пор огромное множество багов исправлено.
Речь про html, естественно! Дублирует статьи и хоть тресни... Движок обновлять даже боюсь, уж сколько раз начинать пытался... Что то где то с сайтмапом.рнр не то?
Он у меня он не такой вроде бы:
<?php
if (!defined ('DATALIFEENGINE')){
die ("404 No file!");
}
$thisdate = date ("Y-m-d H:i:s", (time ()+ $config['date_adjust']*60));
$map = dle_cache ("sitemap", $config['skin']);
if (!$map) {
$map = "";
$result = $db->query ("SELECT id,name,alt_name FROM " . PREFIX . "_category ORDER BY posi ASC");
while ($row = $db->get_row ($result)){
$map .= "<ul style='padding:20px;font-size:18px;'><a style='font-weight: bold;' href='".$config['http_home_url']."${row[alt_name]}/' style='font-size:10pt;font-weight:bold;'>$row[name]</a>\n";
$cat = intval ($row[id]);
$result2 = $db->query ("SELECT id,autor,title,alt_name,comm_num,rating,news_read,approve FROM ". PREFIX ."_post WHERE category LIKE '%$cat%' AND approve = '1' AND date < '$thisdate' ORDER BY date DESC");
while ($row2 = $db->get_row ($result2)){
$map .= "<li style='padding:2px;font-size:11px;' valign='absmiddle'> <font color=\"red\"> ". substr ($row2['date'],0,10) ." </font>
<a style='font-weight: bold;' href=".$config['http_home_url']."".$row['alt_name']."/".$row2['id']."-".$row2['alt_name'].".html>".stripslashes ($row2[title])."</a>
| Просмотров: $row2[news_read] \n";
}
$map .= "</ul>\n";
}
create_cache ("sitemap", $map);
}
$tpl->load_template ('sitemap.tpl');
$tpl->set ('{description}', " ");
$tpl->set ('{sitemap}', $map);
$tpl->set ( '[print-link]', "<noindex><a href=\"" . $print_link . "\" rel=\"nofollow\">" );
$tpl->set ( '[/print-link]', "</a></noindex>" );
$template = preg_replace ( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", $replacepage, $template );
$tpl->set ( '{pages}', '' );
$template = preg_replace ( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", "", $template );
$tpl->compile ('content');
$tpl->clear ();
?>
Сам сайтмап здесь http://otv.by/sitemap.html
Помогите разобраться пожалуйста...
Вобщем такая проблема.
На новых версиях DLE ссылки на новости в карте сайта имеют такой вид http://site.ru/2009/12/12/post.html, тоесть ссылки ведут на календарь.
На старых версиях DLE (9.4, 9.5) — ссылки в карте имели правильный вид, Например http://site.ru/categoria/post.html
Как сделать что бы на новых версиях движка, ссылки в карте вели не на страницу календаря, а на страницу новости?
P.S. Использую карту сайта первой версии.
Ты сам знаешь ответ на свой вопрос — используй карту самой новой версии.
Решил проблему.
Скачал новую версию карты и взял файл sitemap_v.2.1\upload\engine\modules\sitemap.php
Выбросил подключение к файлу шаблона sitemap.tpl.
АлаичЪ
Тут в конце url нет слеша http://www.winterlife.ru/sitemap не подскажете как можно его убрать? версия дле 9.7
АлаичЪ добавь в модуль построчную навигацию чтобы можно было ходить по страницам когда на сайте больше 1000 новостей карту сайта открывается долго. да и так это очень.
в дле есть api которые отвечают за вывод, навигации, но их лучше не использовать так как они имеют вид page/1 и в роботекстексте это закрывают от индексации лучше придумать своё название mapag/1, так можно сделать?
Добрый день!
Вставил данный код:
[not-aviable=main]
[not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file="engine/modules/sitemap.php"}[/aviable]
[not-aviable=main]
Но "[not-aviable=sitemap]" не сработал и сайтмап отображается криво. Вместе с контентом.
under-car.ru/sitemap/ — пример кривости
Попробуй такой вариант:
[not-aviable=sitemap|main]{content}[/not-aviable]
[aviable=sitemap]{include file="engine/modules/sitemap.php"}[/aviable]
Заработал Ваш вариант. Спасибо.
Добрый день,
спасибо вам за ваш труд. Так как ссылок на странице даже с учетом ограничений может есть смысл добавлять к ссылкам атрибут rel="nofollow"?
Атрибут rel="nofollow" вообще нет никакого смысла использовать для внутренних ссылок.
Не работает на 9.7, а конкретно тег [not-aviable=sitemap]
PS Хотя работает, но только если создать статическую страницу...
У меня все отлично работает. Я не знаю, в чем у вас дело.
Почему-то не выводятся статические страницы, даже если в ручную прописать id. Вот код:
Этот код я вставил в статическую страницу, т.к. вывод осуществляется через неё.
Попробуй какой-нибудь более простой код, например такой:
{include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1'}
А потом постепенно будем разбираться, что именно не работает. Если простой код заработает, добавляй постепенно по одному параметру, когда будет ошибка, мы поймем где сбой.
сделал как вы написали, все равно статические страницы не появляются в карте
Не знаю, в чем беда. А точно последняя версия модуля установлена?
Да 100% и на других сайтах та же проблема
Ладно, будем разбираться!
Здравствуйте! Установил карту по инструкции. Однако не работает.
На странице написано: Внимание, обнаружена ошибка
К сожалению, данная страница (http://site.ru/sitemap) для Вас не доступна: возможно, был изменен ее адрес или она была удалена. Пожалуйста, воспользуйтесь поиском.
Может быть я не правильно сгенерировал код для main.tpl ?
У меня в основном статические страницы. Как правильно указывать id ? Нужно указать адрес страницы — последнее после слеша или полностью , начиная с http ?
Правки в .htaccess внесены? Проверь еще адрес http://site.ru/sitemap/ (слеш на конце).
А если новостей 10к то смысл ставить такую карту сайта (поисковик не любит когда много ссылок)?
И нужно ее ставить в ноиндекс от поисковиков?(если вдруг ответ на первый вопрос окажется: Это не для поисковиков а для пользавателей)
Опишите пользу модуля с точки seo
Если новостей много, стоит ставить ограничение на выводимое количество новостей из категорий. Карта предназначена для более быстрой индексации/переиндексации сайта.
Здравствуйте!Установил ваш модуль,всё ок.Но у меня трудности с css,как правильно прописать стили,чтобы карта сайта отображалась как в сайте примере?
Придется подучить и поэкспериментировать с css.
Добрый день! Подскажите, что и где нужно изменить, чтобы карта была доступна не http://site.ru/sitemap/ ,а http://site.ru/моя страница/
Спасибо за модуль.
Видел в вашем посте недовольство на счет того что убирают рекламную ссылку! Дак вы сделайте код как делают в шаблонах wp если убираешь ссылку то плагин не работает:)
пытался для разных групп вывести свою карту сайта:
делал так...
[group=4,5][aviable=sitemap]{include file='engine/modules/sitemap.php?exc_cats=1,7,8&cats_msort=ASC'}[/aviable][/group]
[group=3,6][aviable=sitemap]{include file='engine/modules/sitemap.php?exc_cats=1,8&cats_msort=ASC'}[/aviable][/group]
[group=1,2,7][aviable=sitemap]{include file='engine/modules/sitemap.php?exc_cats=1&cats_msort=ASC'}[/aviable][/group]
и так...
[aviable=sitemap]
[group=4,5]{include file='engine/modules/sitemap.php?exc_cats=1,7,8&cats_msort=ASC'}[/group]
[group=3,6]{include file='engine/modules/sitemap.php?exc_cats=1,8&cats_msort=ASC'}[/group]
[group=1,2,7]{include file='engine/modules/sitemap.php?exc_cats=1&cats_msort=ASC'}[/group]
[/aviable]
но все равно...к примеру...захожу гостем...вижу Одну карту, под админом тоже Эту же карту.
я так понимаю какая то проблема с кешем у нее?
вопрос...как побороть?
Могу посоветовать создать 3 разные статические страницы и в каждую добавить свой код карты. А потом уже на самом сайте для разных групп выводить разные ссылки на карты. Так точно все будет работать.
Ответьте пожалуйста по-подробнее, если не сложно.
Мне нужно чтобы по ссылке «карта сайт 1» выводилась карта сайта с категориями 1,2
а по ссылке «карта сайт 2» выводилась карта сайта с категориями 3,4
Как это проще сделать?
Я уже написал выше как это сделать — создать две статические страницы.
В одной в коде будет:
{include file="engine/modules/sitemap.php?need_cats=1,2"}
Во второй:
{include file="engine/modules/sitemap.php?need_cats=3,4"}
Этот способ работает только при отключении кеширования на сайте, иначе когда открываю, например,
/karta1.html, а затем /karta2.html, то карты получается одинаковыми (с категориями 1,2) не смотря на то, что в первой статической странице cats=1,2 а во второй cats=3,4
Да, интересное наблюдение. Стало быть, не получится создать две карты сайта отдельно, не отключая кеша.
google вебмастер не принимает такую карту, HTML не поддерживается, что делать?
Он и не должен принимать. Он любит кушать карты такого формата: http://site.ru/sitemap.xml
Так а как тогда гугл заставить чтобы он и все остальные поисковики видели файл?
И еще, у меня на странице http://site.ru/sitemap/ не кажет статические страницы, новости кажет, а статические нет, все по инструкции, код из майн.тпл самый простой, по умолчанию...?
Когда поисковик проиндексирует страницу — считай, что все получилось :)
А чтобы показывались статические страницы, надо, чтобы в коде содержался элемент show_static=1
А в примере как код должен выглядеть, у меня самый простой по умолчанию...
Вот так код должен выглядеть:
{include file="engine/modules/sitemap.php?show_static=1"}
Он у меня ниже стал писать: File engine/modules/sitemap.php is in the folder, which is available to write (CHMOD 777). For security purposes the connection files from these folders is impossible. Change the permissions on the folder that it had no rights to the write.
Но стат страниц так и не кажет и список карты выводится почему-то не в теле страницы (ремонт-вдоме.рф), а в вашзастройщик.рф — вроде все норм, заработало...
Русским по белому написано, что надо изменить права CHMOD на папку на 755.
А то что выводится где-то не там, это проблемы сайта, а не модуля. Сам же видишь, что раз на одном сайте все окей, а на втором нет, то надо разбираться в шаблоне, а не в модуле.
После изменения прав, вообще исчез список карты...
Блин, до вставки кода чтобы запретить дублирование страниц с www. в файле .htaccess — перестала выводиться карта сайта... Вырезал код — теперь пишет: Fatal error: Cannot redeclare class Sitemap in /home/payusers/remont-vdome.rf/www/engine/modules/sitemap.php on line 55
А в той строчке 55 (от 50 до 65):
А файлы что на одном и на другом сайте — идентичны...
Александр, подскажите плз как мне быть с моей нестыковочкой?
Не знаю, к сожалению :(
Все нормально, спасибо за терпение, все решилось обновлением движка и "допилкой" шаблона)))
это наверное очень просто, но повторюсь.
"Подскажите, что и где нужно изменить, чтобы карта была доступна не http://site.ru/sitemap/ ,а http://site.ru/моя страница/"
В .htaccess используй следующую строку:
RewriteRule ^mynamepage(/?)+$ /?do=sitemap [L]
большое спасибо
Здравствуйте, спасибо за классный модуль=) Александр, подскажите пожалуйста, как и куда вписать target="_blank" чтобы ссылки на новости открывались в новых окнах? Очень надо. Подозреваю, что в sitemap.php, но я в этом нуб=(
Строки 131, 183, 217 для файла modules/sitemap.php
Как говорится в известном мультике "Ура, заработало!!!"
Спасибо =)
Поставил на дле 9.7 по адресу http://site.ru/sitemap/ выдает:
MySQL error in file: /engine/api/api.class.php at line 362
Error Number: 1054
The Error returned was:
Unknown column 'name' in 'order clause'
SQL query:
Select id, category, title, alt_name, date from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2012-12-21 00:00:32" order by name DESC
проблема решилась
Олег, думаю что решение проблемы будет интересна и тем, кто с такой проблемой столкнётся ))
В чем трабла была ?
Так что лучше использовать сразу две карты сайта html и xml ? а на какую карту сайта тогда лучше будет выводить ссылку в футере? и эту html карту не нужно будет никуда добавлять (ya.webmaster, google.webmaster)?
Да, можно использовать сразу две карты. Ссылку ставить надо на html карту, а добавлять карту никуда в панель вебмастера не надо.
Всем привет. АлаичЪ у модуля есть постраничная навигация? Или все выводиться на одной странице. Просто если у сайта много страниц, насколько верно чтобы все выводилось в одной странице, ведь может получиться очень большая страница.
Давид, неужели так трудно и времени у вас нет чтобы пост и комментарии почитать с самого начала )) (ограничение на вывод всегда вы сможете откоректировать для каждого раздела и подраздела сами)
При включении (Отображать в карте статические страницы:да) водятся статические страницы, но при одновременном включении (Названия категорий как ссылки:да) статические страницы пропадают. Как можно подправить?
И еще вопрос — можно ли как-то сделать, чтобы статические страницы были со структурой?
С проблемой разберемся, спасибо за информацию.
Структура для статических страниц не предусмотрена, только вывод списком.
Самое интересное на главной странице одновременно работают эти две функции, а на созданной отдельной статической странице нет.
Что значит на главной странице? А по адресу site.ru/sitemap/ все нормально работает?
Нет, по адресу не работает, а если на главную в любое место добавить {include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1'} то все отображается
Так, уточним детали. Если в шаблон main.tpl вставить этот код:
[aviable=sitemap]{include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1'}[/aviable]
То на странице site.ru/sitemap/ проблема имеется.
А если вставить в шаблон main.tpl код:
{include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1'}
То прямо на главной появится карта сайта и в ней нет никаких проблем.
Я все правильно понял?
Здравствуйте, АлаичЪ
После обновления (6 января 2013 выпущено обновление безопасности устраняющее проблемы с недостаточной фильтрации входящих данных в парсере шаблона) — появилась проблема с выводом карты сайта. Карта сделана на отдельной странице и до сих пор работала прекрасно, но после этого обновления перестала работать и выводит на странице код вместо самой карты. Может кто сталкивался с этой проблемой?
После возврата старого файла templates.class.php все стало нормально. Есть ли выход из этого положения?
Я в кодах не силён, но заметил, что много строк кода добавилось в обновлённый templates.class.php из изменений заметна только одна
вместо
if ( strpos ( $this->copy_template, "{include file=" ) !== false ) {
теперь
if ( strpos ( $this->template, "{include file=" ) !== false ) {
может попробовать заменить именно эту строку на старую стоит попробовать?
Ждём комментария от дорогого и любимого нашего АлаичЪ ))
Да, придется ждать мнение специалиста.
Сейчас обновил templates.class.php лично, полёт нормальный проблем не наблюдаю карта как открывалась в новом окне так и открывается.
Предположение выше писал вчера так как не было возможности проверить на своей шкуре
Предполагаю, что проблема проявляется только при установке карты через статические страницы? Обычным способом, когда карта доступна по адресу site.ru/sitemap/, проблем не должно быть. Я правильно понимаю?
Да, АлаичЪ, так и есть. Только когда в статической странице создается карта. Ранее, до последнего обновления от 6.01.2013, карта работала прекрасно, но сейчас после обновки, на странице карты показывается только код. А при возврате старого файла на место, все становится прекрасно.
Изначально использование статической страницы было не запланировано и придумано уже читателями в комментариях. Я же предлагаю другой более надежный способ — тот, который и был запланирован. Чем не повод обратиться сейчас к нему?
Та проблема, которая сейчас возникла с парсером, это не проблема модуля, это особенность костыля со статическими страницами, как минимум по этому я не собираюсь как-то эту ситуацию решать.
Понятно, будем использовать без статической страницы.
Здравствуйте. Недавно установил данный модуль, но у меня не открывается страница — домен.ру/sitemap/, точнее открывается, но в ней абсолютно ничего нет, просто пустая белая страница, заглянул в исходный код, там тоже пусто, кеш чистил и т.д., перепроверял правильность установки, было все правильно. Подскажите что не так? Спасибо.
Не знаю, что не так. Никаких данных вы не предоставили мне. Попробуйте установить через статические страницы.
АлаичЪ, предоставляю данные: у меня в файле index.php, после define ( 'DATALIFEENGINE', true );
установлено
if (isset ($_GET['exit'])) {
header ( "Location: ".$_GET['exit'] );
die ();
}
а вместо — echo ($tpl->result['main']);
установлено
function unurl ( $text ) {
$host = strtr ($_SERVER['HTTP_HOST'], array ('.' => '\.'));
$pattern = '/<a (.*?) href=[\"\']([a-z0-9]+)\:\/\/(?!'.$host.')(.*?)\/?(.*?)[\"\'](.*?)>(.*?)<\/a>/i';
$text = preg_replace_callback ( $pattern, 'text_unurl', $text );
return $text;
}
function text_unurl ( $text ) {
$out = ('<a ' . $text['1'] . 'href="/?exit=' . $text['2'] . ':/' . $text['3'] . '/' . $text['4'] . '"' . $text['5'] . '>' . $text['6'] . '</a>');
return $out;
}
echo unurl ($tpl->result['main']);
все это я сделал вот для этого — https://alaev.info/blog/post/3513#comment-13289
я у вас потом спросил — https://alaev.info/blog/post/3513#comment-13311
но вы так и не ответили... но суть не в этом.
В общем после этой модификации у меня страница со всеми тегами тоже не отображается, то есть просто белая и без исходного кода, и видимо при загрузке страницы /sitemap/ происходит тоже самое... когда убираю эти коды из index.php, то все нормально...
Как это исправить? Мне необходима та модификация в index.php я писал почему, может вы все таки подскажете мне другой хороший способ для необходимой мне цели, что бы я смог воспользоваться вашим замечательным модулем Карты сайта?
Подозреваю что это от нагрузки на хостинг...
Не знаю, что это за модификация и что она делает (видимо, как-то модифицирует ссылки), но это не важно. К сожалению, ничем помочь не могу :(
Здравствуйте. Сделал как по описанию с комментария, чисто создал стат страницу и закинул sitemap.php, а как сделать что бы она отображалась в speedbar'e?
Все, разобрался :)
Xnokie, а как на счет поделиться с остальными?
Спасибо автору за модуль. Только возникла проблемка. У меня каждая новость принадлежит нескольким категориям и при выводе карты получается, что одна и та же новость отображается по нескольку раз. Т.е. если одна новость принадлежит 7 категориям, то в карте она отобразится 7 раз. Как нибудь можно убрать повтор или вывод по категориям? Просто чтобы отображались отдельно категории, а потом списком шли новости?
Нет, увы, такие моменты не предусмотрены. Ведь это "как бы" карта для людей, а человеку удобно смотреть выбранную категорию и видеть что в ней расположено, и не важно, содержатся ли эти же статьи в каких-то еще категориях.
Заморачиваться кучей условий не нужно, да и никто не будет.
При установке пишет К сожалению, данная страница для Вас не доступна: возможно, был изменен ее адрес или она была удалена. Пожалуйста, воспользуйтесь поиском.
Добрый день АлаичЪ. У меня такой вопрос. На одном своем сайта (его указал) установил карту сайта по вашей инструкции. И почему то карта сайта отображается не только по адресу http://наш сайт/sitemap/, а и на главной и во всех категориях в конце. Не могу разобраться в чем допущена ошибка. Подскажите пожалуйста.
Потому что, скорее всего, ты просто вставил код в шаблон, а надо его вставлять как-то так:
[aviable=sitemap]{include file="engine/modules/sitemap.php?show_static=1&need_cats=2,3,4"}[/aviable]
т.е. aviable=sitemap — это важно!
Александр. Я установил ваш модуль на другие сайты — отлично фунциклирует))) Правда с версией 7.5 не дружит.
А вот на версии 9.7 получилась именно вот такая ерунда. Сделал все по инструкции, как положено. но проблема отображения карты сайта в категориях и на главной так и осталась.
Правда внизу в main под контентом расположен вот такой код:
[aviable=cat|main]{include file='engine/modules/sitemap.php?cats_as_links=1&cats_sort=id&cats_msort=ASC&news_sort=id&news_msort=ASC&static_sort=id&static_msort=ASC'}[/aviable]
</div>
Я слаб с тем что связано с версткой и кодами, но думаю что какая то загвозка есть здесь. Подскажите, может как то изменить данный код или совсем убрать его?
Заранее благодарю.
По инструкции говорите? Ну-ну...
По инструкции написано использовать тег [aviable=sitemap], а не [aviable=cat|main] если что!
Неделю как осваиваю DLE/ Установил. Сделал все по инструкции заменив {content}.
<div class="main">
<div class="content">
[not-aviable=main]
<div class="left-col-in">
<div class="speedbar">{speedbar}</div>
{info}
{content}
</div>
Футер на главной "ушел влево". по адресу http://наш сайт/sitemap/ вместе с картой вылазят все новости с пагинацией.
решаемо?
Если сделаете четко по инструкции, как написано в посте, то все будет путем. Если написано, что надо поменять только {content}, то значит надо так и сделать, а не "забирать" в условие еще и всякие div'ы.
<div class="main">
<div class="content">
[not-aviable=main]
<div class="left-col-in">
<div class="speedbar">{speedbar}</div>
{info}
{content}
</div>
Это исходный кож в файле main.tpl
Заменял только {content}
Это исходный кож в файле main.tpl
<div class="main">
<div class="content">
[not-aviable=main]
<div class="left-col-in">
<div class="speedbar">{speedbar}</div>
{info}
{content}
</div>
Заменил {content} как в инструкции:
<div class="main">
<div class="content">
[not-aviable=main]
<div class="left-col-in">
<div class="speedbar">{speedbar}</div>
{info}
[not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file="engine/modules/sitemap.php"}[/aviable]
</div>
В итоге, на странице карты отображаются все новости с пагинацией.
Футер главной страницы ушел влево.
ХЕЛП!
Где-то с версткой значит беда, может шаблон кривой. Я тут не помощник, так как дело не в модуле.
C футером разберусь. вывод всех новостей убрать надо со страницы.
с сайта дле предложили обновить патч http://dle-news.ru/bags/v96/1547-patchi-bezopasnosti-dlya-versiy-97-i-nizhe.html после обновления карта сайта почему-то не работает выходит {include file="engine/modules/sitemap.php?cats_as_links=1&show_static=1"} а со старым файлом templates.class.php работает в чём может быть причина?
Надо устанавливать модуль не через статические страницы, а так как указано в инструкции к модулю.
А как же постраничная навигация?
яндекс (ссылку из примера — http://www.winterlife.ru/sitemap) в выдаче отдаёт с заголовком всего сайта ( WinterLife.Ru — Новости зимних видов спорта
Сайт о зимних видах спорта — свежие новости, биатлон, хоккей, сноуборд, лыжные гонки. Чемпионаты мира и Европы.) Вопрос — зачем?
http://yandex.ru/yandsearch?text=http%3A%2F%2Fwww.winterlife.ru%2Fsitemap&from=fx3&clid=1909644&lr=213
... без постраничной навигации мне (как пользователю) от данной карты толку ноль, опять таки яша со мной тоже согласится ( если на сайте больше 100 к публикаций? — с большим количеством новостей, данный мод это больше минус чем плюс)
Запускаю файл http://site.ru/sitemap_installer.php — не устанавливается. На Денвере все получилось. В чем может быть причина ?
Кстати отличный вариант для полного парсинга сайта, облегчает задачу
Подскажите пожалуйста, почему не происходит установка модуля? Копирую файлы в указанные папки.
Копирую пофайлово — тот же результат (Сама страница пустая, вверху написано "LinkEnso" и чуть ниже светлая полоса.)И ссылка в браузере http://site.ru/sitemap_installer.php/sitemap_installer.php
Ну тогда попроси кого-нибудь тебе помочь установить модули.
Попросил бы, но в глубинке, в деревне это космос, поэтому и навязчиво прошу помощи... Как я уже писал,что на Денвере все установил и работает.
Плагин классный, руководство по установки доступное, спасибо!
Вопрос только — не очень я понял, как включить в карту статичные страницы
Вот моя карта http://www.rosesbouquet.ru/sitemap/
В генераторе если ничего не трогать, страницы статичные отсутствуют, только новости выводятся. Попробовал руками добавить единственную страницу статическиую которую создал пока
{include file='engine/modules/sitemap.php?need_static=2'} вот такой код получился
Ввожу его в шаблон — ничего не меняется... ID страницы подсмотрел в админке по ссылке типа http://site.ru/admin.php?mod=static&action=doedit&id=2
Спасибо заранее за ответ!
{include file="engine/modules/sitemap.php?show_static=1"} — вот, необходимо указывать параметр show_static=1
Премного благодарен, работает!
Добрый день. Подскажите. У меня стоит другой модуль карты сайта. Но выводит он все ссылки на одной странице. Уже 20.000 записей. Страница грузится долго, для гугла плохо. Вопрос. В вашем модуле есть постраничная навигация в карте сайта?
Артем, а не судьба почитать пост целиком?
Нет и не будет если букав много вам осилить, но чтобы говно линко недо-памойку не делать из страницы есть очень хороший выход из этой ситуации))
Почитайте пожалуйста пост!
у меня вот такая проблема
get_page_meta
MySQL server has gone away
SELECT `Name`,`Value` FROM `htracer_page_meta` WHERE `URL_CS`='0b1e2ce3354950acb0f6e'
You may need to turn on forcing in MySQL settings of HTracer
Ссылку на sitemap http://cekretkrasoti.ru/sitemap/
Так написано же, что проблема со скриптом HTracer. Так же там рекомендуется включить форсированное подключение к БД. Короче, мой модуль тут не при чем!
У меня очень много новостей на сайте, и поэтому я хочу убрать новости:
В настройках ставлю свойство "Количество статей:0" вот что получается:
{include file='engine/modules/sitemap.php?need_static=45,4,2&cats_as_links=1&show_static=1&news_limit=0'}
Но статьи все равно размещены на карте. Как быть?
Попробуй поставить не news_limit=0, а news_limit=1.
Добрый день, что могло произойти, делаю разные настройки не чего не меняется всё в куче.
В style.css замени: li {display:inline;}
на: li {list-style: none;}
Помогло спасибо, только вот почему так произошло ведь изначально всё было нормально, ну да ладно, плоха что не получается выставить порядок вывода как на сайте все ровно ну бог с ним хоть работает и то дело. Ещё раз СПС.
Это ты сам у себя должен спрашивать — почему так произошло. Верстку значит изменил, иначе никак.
Подскажите как выровнять текст.
Когда использую в main <div align="center">карта сайта</div> по центру не только карта сайта, а весь сайт.
Нужен совет
Как сделать карту для мультиязычного сайта (мультиязычность через шаблоны реализована). Сделал всё по инструкции — изменения внёс во всех шаблоны — не создаётся карта(
В чём может быть причина?
Что значит не создается?
АлаичЪ,здравствуйте!Очень уважаю и люблю ваши работы.Я наверное не единственный кто спрашивал,но у меня кино-сайт и на на одной статье может быть около 1-6 категорий ,каким образом можно избежать повторения одних и тех же статей в карте сайта?
Такой возможности не предусмотрено :(
Есть один вопрос по поводу стандартной карты сайта на DLE.
Например, на Вашем блоге в карте сайта есть поле <changefreq>, которое показывает возможную частоту обновления страницы. Плюс на DLE в карте сайта дата указана в виде 2013-03-08, когда логичнее было бы сделать 2013-03-08 17:30:00
Можно это как-нибудь реализовать? И в какую сторону копать?
На сайте есть посты с отложенной записью. Плагин их также показывает. Можно ли сделать, чтобы эти посты были скрыты?
Было на месяц вперед забито статей и все проиндексировалось.
Это неправда, плагин их не показывает. Проверено лично и не один раз. У меня у самого надолго вперед опубликованы посты, плагин их не выводит. Смотри настройки движка в админке: "Выводить на сайте новости, дата публикации которых, еще не наступила" — установи "Нет".
Можно вопрос? Карту сайта html нужно закрывать от индексации поисковиков?
Необходимости такой нет, скорее карта сайта и создана для поисковиков, ведь роботу доступны все урлы сайта на одной странице.
Если хотите закрыть карту от индексации — тогда зачем она вообще нужна?
Добрый день!
Установил карту сайта на DLE 9.6, сделал все как в инструкции. В main.tpl прописал:
[not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file='engine/modules/sitemap.php'}[/aviable]
И оставил ссылку: <a href="/sitemap/" class="level1">Карта сайта</a>
В .htaccess прописал: RewriteRule ^sitemap (/?)+$ //?do=sitemap [L]
Вроде все верно, но карта сайта доступна по адресам:
site.ru/sitemap/
site.ru/sitemap
site.ru/sitemap/?do=sitemap
site.ru/?do=sitemap
site.ru/index.php/?do=sitemap
Посоветуйте, как устранить этот недочет.
Спасибо!
Так и есть, зачем же вам столько адресов? Используйте site.ru/sitemap/ и забудьте про остальные.
1.Как поменять порядок вывода страниц, сначала статические потом остальные.
2. Все сделано как в инструкции ([L] в конце присутствует), но все равно карта доступна на http://site.ru/index.php?do=sitemap но не доступна на http://site.ru/sitemap/, может быть из-за того, что в .htaccess главной прописана статическая страница
DirectoryIndex index.php?do=static&page=kto-my
работает схема RewriteRule ^sitemap (/?)+$ /index.php?do=sitemap [L]
1. Это код модуля придется менять, это, увы, придется самостоятельно делать.
2. Карта всегда будет доступна по адресу http://site.ru/index.php?do=sitemap, а вот почему не работает по http://site.ru/sitemap, я не знаю, причин может быть масса. Зато с оригинальным .htaccess все точно работает, так что дело, скорее всего, в этом.
Имеется сайт у него Общее количество новостей: 56860 и более 200 категорий.
Прописал строчку:
$site_tree = $dle_api->load_from_cache ('site_tree', 60000); // 3600 секунд = 60*60 = 1 час
Добавил сайту 1ГБ ОЗУ Процессор стоит 2400 МГц запускаю карту сайта 1 раз выходит 504 или 502 ошибка, потом с горем по полам загружается, а если озу 512 то постоянно 504 ошибка.
Можно ли сделать что бы карта генерировалась каждый день в 00:00 и после того как сгенеририруеться больше запросов к БД не шло.
Крона или расписания генерации нет, карта генерируется тогда, когда совершается просмотр карты и просрочился ее кеш.
В вашем случае поможет ограничение на количество выводимых новостей для категорий. Тем более поисковики не рекомендуют на карте сайта выводить более 3000 ссылок.
У меня карта сайта вышла 22 Мб, ее не один поисковик не проиндексирует, 150 000 новостей на сайте. Как сделать так чтобы вывод карты сайта выводился постранично, к примеру по 1000 ссылок ? Спасибо
А на 9.8 не работает?
Поставил на ДЛЕ 9.8, шаблон съезжает, у меня content в таком блоке
[aviable=cat|date|catalog|newposts|favorites|allnews]
<div class="content-right">
<div class="tab-block">
<ul>
{info}{content}
</ul>
</div>
</div>
[/aviable]
Все сделал но выходит ошибка
MySQL error in file: /engine/api/api.class.php at line 362
Error Number: 1054
The Error returned was:
Unknown column 'rating' in 'order clause'
SQL query:
Select id, category, title, alt_name, date from dle_post where category regexp "[[:<:]](0)[[:>:]]" AND approve = 1 AND date < "2013-04-08 19:30:32" order by rating DESC
Хэлп что это?
Рекомендую заменить файл api.class.php аналогичным файлом из чистого дистрибутива. А еще может быть конфликт с другими модулями, такое тоже встречалось несколько раз.
Можно попробовать такой код использовать, должно помочь: {include file='engine/modules/sitemap.php?cats_sort=name&cats_msort=ASC&news_sort=date&news_msort=DESC&static_sort=id&static_msort=DESC'}
Спасибо! Сработал данный код.
Dle 9.8 работает замечательно проверил, поставил!!!
Спасибо большое что Вы есть)
Добрый день, подскажите как сделать "enter" после названия категорий, так же как показано на ДЕМО сайте. А то получается всё сплошным текстом
Я не понимаю, о чем идет речь...
Всем привет. Как безвредно установить данный модуль?
У меня в main.tpl так:
[not-aviable=main]{content}[/not-aviable] — это сделано для вывода статической страницы на главной.
Как же успешно установить эту строку туда? Если не буду эти строки изменять выйдет небольшая ошибка про права доступа.
Вот так, замени [not-aviable=main]{content}[/not-aviable] на:
[not-aviable=main|sitemap]{content}[/not-aviable]
[aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable]
Кто-нибудь догадывается, как можно карту сайта форума сделать длеешного? Очень надо.
Обратиться к разработчику => Разработчик пропал => Никак!
Ну, то есть, бесплатно никак, а за деньги можно найти программиста, он быстро сделает.
Уважаемый автор, подскажите пожалуйста имеется ли возможность вывести с помощью данного модуля НЕ все публикации/тайтлы, а скажем за последние 2 дня? (имеется очень частообновляемвый сайт, вес/вид страницы с картой сайта просто брутален!)
Конкретно такого нет, но можно выводить из каждой категории последние N новостей, примерно тот же результат получится.
Спасибо за совет, но по какой-то причине не срабатывает именно этот параметр "news_limit".
Отображаются все публикации в под/категории...
Может быть из-за того что я подключаю модуль через статическую страницу?
Не знаю, может быть и из-за этого. Стоит попробовать вариант описанный в посте.
Добрый день.
Столкнулся вот с такой проблемой при установке в п.7
Откройте файл main.tpl своего шаблона и найдите:
{content}
Замените на:
[not-aviable=sitemap]{content}[/not-aviable]
[aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable]
У меня в шаблоне
[not-aviable=main]{content}[/not-aviable]
[aviable=main]
это реализовано для вывода на главную новости по группам.
Как можно поступить в данном случае? Спасибо.
Свой кусок кода замените на такой:
[not-aviable=main|sitemap]{content}[/not-aviable]
[aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable]
[aviable=main]
Для dle 9.8 актуально?
Спасибо за полезный модуль!
Появилась необходимость выводить карту на нескольких страницах (с разными на стройками естественно) под разные категории...
Скажите а его можно инклудить на разные статические страницы, если да то как (что куда писать)?
Тут кто-то пробовал создать две разные карты сайта, но получается, что кеш от разных страниц перезаписывает друг друга. Короче, в итоге ничего не вышло :(
Добрый день, столкнулся с проблемой вывода модуля. В шаблоне у меня выводит так:
[not-aviable=main]
[aviable=cat]<div class="seedbar">{speedbar}</div>[/aviable]
{info}
{content}
[/not-aviable]
[aviable=main]
Как правильно прописать sitemap?Спасибо.
Вот как-то так!
[not-aviable=main|sitemap]
[aviable=cat]<div class="seedbar">{speedbar}</div>[/aviable]
{info}
{content}
[/not-aviable]
[aviable=main]
[aviable=sitemap]*сюда вставьте код, сгенерированный в админке*[/aviable]
Привет Александр.
Слушай. все шикарно на всех DLe, но тут установил новую лиценз DLE и карта ну никак не хочет работать, незнаю почему.
Выдает Fatal error: Cannot redeclare class Sitemap in /home/*****/sitemap.php on line 54
Что посоветуешь? Спасибо
Как будто два раза пытаешься карту вставить в шаблон. Точно там один раз вставляется тег?
Вот!!! Спасибо огромное Алекс! Выручил! Теперь все как надо)
Здравствуйте. После инсталляции в админке название модуля и все тексты на странице модуля — сплошные знаки вопроса ???
Что это?
Очевидно модуль не понимает, что DLE у меня установлена в папку, а не в корень. Поскольку он и картинку при инсталляции не отображает. Просьба исправить проблемку.
Возможно есть версия под utf-8?
Пересохраните все файлы модуля в кодировке utf-8 — вот и будет то что нужно.
DLE 9.6 результат установки модуля: белое поле со словами "карта сайта" и информативным продолжением — {site_tree}.
Help.
На заметку! Я столкнулся с проблемой на DLE 10. Все сделал как надо, а sitemap по адресу site.ru/sitemap не доступна. Я сделал иначе. Создал статическую страницу и прописал в main.tpl:
Теперь страница доступна по /sitemap.html и трогать .htaccess нет смысла + удобно, что можно самому добавлять что-то на статическую страницу, вплоть смены шаблона.
Интересное решение, спасибо за него, добавлю пометку в пост.
Подскажите, как стили править? Просто у меня категории и статьи одного размера и ничем не выделяются.
На странице просмотра карты новостей выводится <link rel="canonical" href="http://site.ru/"> (DLE 10.0)
Подскажите пожалуйста, как убрать?
Можно попробовать так, как сказал Ryan одним комментарием выше, вдруг поможет. Сам я еще до DLE 10 не обновлялся.
Добрый день!
У меня интернет магазин на дле, подскажите ,как в карту сайта добавить категории интернет магазина?
Как ни пробую не получается...
Модуль распространяется только на стандартные функции движка, т.е. новости, стат. страницы и категории.
Огромное Вам спасибо за модуль,все работает. А у Вас нет модуля 'Кто он- лайн'? Многим он очень нужен.
Нет такого модуля у меня, но а вообще он существует — ищите в сети.
Работает на Dle 10.0 спасибо Вам!!! и удачи.
У меня такая проблема, карта сайта доступна только по этому адресу http://pashok.pro/sitemap
А по этому http://pashok.pro/sitemap.xml пишет, что страница не существует.
Как мне добраться до sitemap.xml
А причем тут sitemap.xml — это никак не связано с данным модулем. Зайдите в админку и в пункте "Карта сайта для Google и Yandex" создайте xml-карту сайта.
На 9.7 внезапно появилась такая ошибка:
http://easycaptures.com/fs/uploaded/738/7934985035.png
Раньше карта работала нормально. Ничего не менял и модулей не устанавливал вроде...
Подскажите, как её исправить если кто-то знает.
Ответы уже были на этот вопрос: https://alaev.info/blog/post/1974#comment-15382
Подскажите, пожалуйста, можно ли вывести в карте новости только с опредeленного ID и до бесконечности? Например, на сайте 5000 новостей, а мне нужно вывести в карте сайта с 4001 и до 10000 (грубо говоря, с запасом на будущее). То есть, чтобы начиная с 4001-ой новости начало добавляться в карту. Или на крайний случай, чтобы добавить с 4001 по 5000 новость в карту.
Можно ли как-то вписать такое условие в один из этих параметров, вроде такого: need_news=(от 4001 до 10000) или exc_news=(от 1 до 4000). Или это реализуется иначе?
Заранее большое спасибо.
Сейчас глаза улетят. Где кнопочка сохранить в модуле, когда я настраиваю его в админ панели??? В упор не вижу!
Она там и не нужна... Ты генеришь код и потом копируешь его в main.tpl, и усё.
Хотя было бы не плохо иметь возможность сохранять разные настройки как либо... был случай, генерю код вывода инфы, и свет пропал, потом заново пришлось все делать и смотреть правильно или нет. В общем я за то, что бы была возможность сохранять настройки.
и генерил код, вставлял в main.tpl и все равно не сохраняются настройки
на странице карты сайта полно вывелось новостей
Здравствуйте.
АлаичЪ, вы случаем еще не обновились до DLE 10? :) Я по поводу проблемы с rel="canonical" для данного модуля... Вариант из сообщения Ryan у меня не сработал. Может найдете немного свободного времени и посмотрите, что можно сделать?
Заранее благодарю.
Перечитала все комменты и ответы на них сверху|донизу|справо|налево... Но НЕ получается убрать уведомление об ошибке с карты сайта!
По данному адресу публикаций на сайте не найдено, либо у вас нет доступа для просмотра информации по данному адресу.
В main.tpl вставлено следующее:
<div class="vsep righton">
[not-aviable=main|sitemap]{content}[/not-aviable]
[aviable=sitemap]{include file='engine/modules/sitemap.php?cats_as_links=1&show_static=1&cats_sort=id&news_sort=id&static_sort=id'}[/aviable]
[aviable=main]
В htaccess следующее:
RewriteEngine On
# Редиректы
RewriteRule ^page/(.*)$ index.php?cstart=$1 [L]
# Карта сайта
RewriteRule ^sitemap (/?)+$ /?do=sitemap [L]
Мальчики, помогите!!
День вам добрый, не нашел ответа в коментах! У меня модуль встал ровно по ссылке открывается. xml тоже открывается, но вот на страницах появились открывающий и закрывающий теги.
[aviable=sitemap] [/aviable]
Как мне их убрать, заранее всем спасибо.
Подскажите как можно вывести 2 раза SiteMap v.2.1 от АлаичЪ'а на сайте, а именно на главной.
С правой стороны выведены Русские сериалы с помощью этого скрипта. Но вот к примеру мне нужно еще вывести и иностранные сериалы, но если я вставляю второй раз скрипт на сайт с измененными категориями то оно выдает ошибку Fatal error: Cannot redeclare class Sitemap in /var/www/flyfix/data/www/flyfix.ru/engine/modules/sitemap1.php on line 55
Может есть какой нибудь способ вывести 2 раза скрипт!?
Нет, так не получится. Карта сайта предназначена для вывода одной единственной карты сайта.
Здравствуйте, в какую директорию копировать на сервер содержимое папки uploads (кроме /templates/); а именно в [home] или с именем моего сайта.
Если в папку с именем моего сайта, при копировании папки engine на сервер попросила ее замены, на сервере открыл ее там много чего. Если так и сделаю, ничего я не нарушу.
Спасибо за ответ.
Да, заливать надо в папку с именем сайта, на вопрос замены ответьте подтверждением, ничего страшного не случится.
АлаичЪ, в админке ничто не поддается проставлениям параметров, т.е. я проставил как и какие категории и сколько чтоб выводилось на карте сайта, после нет кнопки сохранить, закрываю модуль и все настройки уходят.
И еще как сделать, чтобы новости в карте были по левому краю, иначе как-то некрасиво http://clip2net.com/s/6iAIXv
Код генерируется на лету и нигде не сохраняется (да и не должен), его надо взять и вставить в шаблон.
Сто касается выравнивания по левому краю — смотрите ваши стили css.
АлаичЪ, спасибо за пояснения.
Сделал все как написано, но при переходе на карту пишет о несуществующей странице.
Что может быть не так?
модуль 1.1, движок 9.8
В 10 версии ДЛЕ, есть проблема. В исходный код добавляется код — <link rel="canonical" href="http://site.com/" />, что не дает Яшке индексировать данную страницу. Подскажите пожалуйста, как исправить.
День вам добрый, не нашел ответа в комментах! У меня модуль встал ровно по ссылке открывается. xml тоже открывается, но вот на страницах появились открывающий и закрывающий теги.
[aviable=sitemap] [/aviable]
Как мне их убрать, заранее всем спасибо.
Вопрос решил заменой скобок вместо [ поставил < и все работает.
подскажите, что я не правильно сделала, на странице карты сайта внизу, после того, как закончился список статей, высвечивается вот это ,,DLE SiteMap by alaev.info ,, Я так понимаю, этого не должно быть видно. Как это убрать со страницы?
Установил модуль. Но при переходе на карту все ссылки белого цвета. На белом фоне их не видно, хотя они и кликабельные. Как исправить цвет ссылок?
А причем тут АлаичЪ, это шаблон свой редактируйте!
Многие с толкнулись с такой проблемой что, в исходный код добавляется — <link rel="canonical" href="http://site.com/" />, что не дает яшке индексировать данную странице. Я нашел решение проблемы, оказалось легче простого — находим в файле /engine/engine.php следующее:
А после добавляем строчку:
И все!
Спасибо за инфу, многим она будет полезна!
Действительно была проблема, спасибо большое за решение!
Добрый день! Назрело два вопроса.
1. Как сделать так, чтобы размер шрифта у категории и подкатегории отличались? Хочется сделать удобное восприятие.
2. Как изменить адрес вместо site.ru/sitemap/ на, например, site.ru/katalog/ ? Если изменить в .htaccess, то по адресу отображаются просто короткие новости как в категории.
Здравствуйте!
Не могу разобраться в том, как сделать всё в столбик, т.к на данный момент категории и статьи слились в одну строку. Плюс ко всему при переходе на страницу карты сайта выдаёт вот такое сообщение:
Внимание, обнаружена ошибка
По данному адресу публикаций на сайте не найдено, либо у вас нет доступа для просмотра информации по данному адресу.
Хотя на другом сайте всё отлично и никакой ошибки, и в столбик выводится всё отлично.
Подскажите пожалуйста в чём может быть проблема и как её устранить.
С Уважением,
Михаил.
Спасибо большое, очень подробное описание, все работает хорошо!
Так держать ребята!!!
у меня на сайте нету {content} в файле main.tpl, если просто так вставить код то сайт как винегрет будет.
Спасибо за модуль, красивый вывод новостей и категорий :)
1. Небольшая проблемка: а конце карты сайта отображается тег [/aviable]. Как его удалить?
2. Какое количество новостей оптимально ставить в news_limit?
Нет, не получается что-то, дизайн съезжает(
А у меня вот такой код как правильно прописать
<div id="container">
<div id="content">
<table width="100%" cellspacing="0" padding="0" border="0"><tr><td>
[not-aviable=main]{speedbar}[/not-aviable]
{info}
[not-aviable=main]
[sort]<div class="sort">{sort}</div>[/sort]
{content}[/not-aviable]
У меня возникла проблема с модулем, почему-то он не Берет из движка вид ЧПУ. В карте сайта выводит ссылки ЧПУ 1 вида, а везде в новостях 2.
Обновил версию модуля до 2.1.1. Поправил ошибку, проверьте, пожалуйста, теперь все должно работать.
На карте ссылки вида newsid=xx, хотя выбран ЧПУ2 для новостей(
Как выправить ссылки на карте?
Версия модуля какая? Мой комментарий выше видели?
Коммент видел.
У меня SiteMap v.2.1 © 2012 на ДЛЕ 10.2.
Нужно качать новую версию Вашего модуля?
Надеюсь, вопрос был риторический...
Господа, сегодня случилось мега-обновление модуля! Я его переработал, обновил и улучшил. А еще — там совершенно новый современный дизайн!
Обновляйтесь, но при обновлении проделайте пункт с правкой файла engine.php в инструкции по установке!
Впервые сталкиваюсь с подобной ошибкой (после установки карты), может кто уже сталкивался и знает где рыть надо!? К сожалению, страница glavnayadositemap.html для Вас не доступна: возможно, был изменен ее адрес или она была удалена. Пожалуйста, воспользуйтесь поиском.
А причем тут вообще какая-то левая страница? Проделайте все, как описано в инструкции, и все будет в порядке.
Проделывал все как положено, благо опыт есть, поставил все уже на 15 сайтах, тут вот такая ошибка и карты как будто и не ставил, в админке все нормально.
Что это вообще за страница такая glavnayadositemap.html — откуда она взялась вообще, если в моем посте о ней нет ни слова? Если что, новые версии DLE не поддерживают установку модуля через статические страницы.
Ставлю, полностью по инструкции "Ставил уже на 15 сайтах", я и сам не понимаю откуда берется эта ссылка, на сайте также модуль блога стоит, но я ставлю в файлы самого движка, блог не трогаю.
Здравствуйте, появился вопрос: Есть категория "Собаки", в ней подкатегория "Таксы", а в ней "Пушистые Таксы", а в ней находятся материалы. В мануале нашёл news_limit и cats_limit, но к сожалению, данные параметры не передаются ниже "Подкатегории". Как сделать вывод категории > подкатегории > подподкатегории (без материалов). Я прекрасно понимаю, что можно делать ручками, но как реализовать подобное, если 10к материалов и категорий столько же?
То есть вы хотите сказать, что настройки модуля news_limit и cats_limit не применяются для категорий большого (3-го и глубже) уровня вложенности?