Модуль xmlsitemap не генерирует lastmode для главной страницы сайта.
Изначально в модуле для главной есть две настройки: частота обновления и приоритет:
<?php
if ($link['type'] == 'frontpage' || $link['loc'] == '' || $link['loc'] == variable_get('site_frontpage', 'node')) {
$link['priority'] = variable_get('xmlsitemap_frontpage_priority', 1.0);
$link['changefreq'] = variable_get('xmlsitemap_frontpage_changefreq', XMLSITEMAP_FREQUENCY_DAILY);}?>
Как задать что-то типа:
<?php$link['lastmode'] = 'время обновления';
?>
можно как-то вытянуть это из БД? к чему обращаться, если это главная?
Комментарии
Есть же вес для материалов
Подскажите, плиз конкретней, на что обратить внимание? не пойму как связан вес с датой последнего изменения главной..
.
Имел в виду приоритет, через него и управляйте.
так, дело не в приоритете, а в том, как достучаться до даты изменения в принципе..
напиши функцию запроса к базе и вытягивай все что тебе нужно.
класс))) собственно вопрос в том и состоит: ЧТО ВЫТЯГИВАТЬ ДЛЯ ГЛАВНОЙ СТРАНИЦЫ?
у тебя главная страница это нода?
если да:
делаешь запрос к таблице node, потом джоином связываешь таблицу ревизий и получаешь то что хотел с таблицы ревизий.
Сделала так: добавила в форму по умолчанию для главной текстовое поле для теста и в него вписала:
<?php'#default_value' => variable_get('xmlsitemap_lastmod_format', XMLSITEMAP_LASTMOD_MEDIUM),?>
по дефолту получаю в поле - Y-m-d\TH:i\Z
пытаюсь передать это значение в саму карту что бы протестировать через $link['lastmod']:
<?php
function xmlsitemap_xmlsitemap_link_alter(&$link) {
// Alter the frontpage priority.
if ($link['type'] == 'frontpage' || $link['loc'] == '' || $link['loc'] == variable_get('site_frontpage', 'node')) {
$link['priority'] = variable_get('xmlsitemap_frontpage_priority', 1.0);
$link['changefreq'] = variable_get('xmlsitemap_frontpage_changefreq', XMLSITEMAP_FREQUENCY_DAILY);
$link['lastmod'] = variable_get('xmlsitemap_lastmod_format', XMLSITEMAP_LASTMOD_MEDIUM);
}
}
?>
но $link['lastmod'] не обрабатывается и не отображается в карте. Как понять почему?
ребята, подскажите уж очень нужно!