last-modified

 
Посетитель
no avatar
Медаль
Сообщений: 473
Нужно написать скрипт добавляющей каждой странице метатег last-modified, дата изменения должна быть временем последнего изменения в базе. Цены пишите тут.
Solver Web - создание и продвижение сайтов!
Посетитель
no avatar
Сообщений: 20
я кстати то же бы поучаствовал
Реклама
cms
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 484
дата последнего изменения чего?? простите за глупый вопрос!
Посетитель
no avatar
Сообщений: 20
дата последнего изменения статьи
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2928
Профмаркет:
дата последнего изменения статьи
так а скрипт зачем?) пропишите в шабе статей этот тег)
NickSolver:
скрипт добавляющей каждой странице метатег last-modified
если только для статей, всего 1 файл)
Редактировалось: 1 раз (Последний: 13 марта 2013 в 23:01)
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 484
1.10.1
в components/content/frontend.php

есть строка:
$article['pubdate'] = $do=='editarticle' ? $item['pubdate'] : date('Y-m-d H:i');

ПОСЛЕ неё добавьте:
$article['editdate'] = date('Y-m-d H:i');

ВСЁ. поле editdate, которое конечно нужно в таблице content создать ручками, будет храниться дата редактирования статьи. Вам остаётся только отобразить её в нужном месте.
Развлекайтесь!!!
Посетитель
no avatar
Сообщений: 20
Блин, нифига не получается. кто нибудь, пожалуйста подскажите, есть требование яндекса "настройте сервер на выдачу корректных заголовков ответов (например, если страница не существует, выдавать ошибку 404, а если поступил запрос If-Modified-Since, то выдавать код 304, если страница с указанной в запросе даты не изменялась)". Как это реализовать на сайте?
Посетитель
no avatar
Сообщений: 20
Неужто никто за вознагрождение не возьмется реализовать это?
Посетитель
small user social cms
Медаль
Сообщений: 131
Готов сделать, более подробное описание в личку скиньте пожалуйста.
Модератор
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1675
Для отдельных статей (версия 1.10.1)
открываем /public_html/components/content/frontend.php

ищем строку ~157:

Код PHP:
  1.  
  2. // если статья не опубликована или дата публикации позже, 404
  3. if ((!$article['published'] || strtotime($article['pubdate']) > time()) && !$is_admin && !$is_editor && !$is_author) { cmsCore::error404(); }
  4.  

сразу после неё вставляем блок и подставляем нужную переменную:

Код PHP:
  1.  
  2. $LastModified_unix = strtotime($article['pubdate']); // время последнего изменения страницы
  3. $LastModified = gmdate("D, d M Y H:i:s \G\M\T", $LastModified_unix);
  4. $IfModifiedSince = false;
  5. if (isset($_ENV['HTTP_IF_MODIFIED_SINCE'])) {
  6. $IfModifiedSince = strtotime(substr($_ENV['HTTP_IF_MODIFIED_SINCE'], 5));
  7. }
  8. if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])) {
  9. $IfModifiedSince = strtotime(substr($_SERVER['HTTP_IF_MODIFIED_SINCE'], 5));
  10. }
  11. if ($IfModifiedSince && $IfModifiedSince >= $LastModified_unix) {
  12. header($_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified');
  13. }
  14. header('Last-Modified: '. $LastModified);
  15.  
«Главное “настрой”! И всё настроиться…» © ) Их знают все! А вы?
Посетитель
no avatar
Сообщений: 20
Огромное спасибо Mike!!!
Посетитель
no avatar
Медаль
Сообщений: 565
А как это можно сделать для всего сайта. Для объявлений, дял товаров, для статей, для блогов и так далее?
Посетитель
small user social cms
МедальАвторитет форума
Сообщений: 1147
А это правильно, если у старой статьи сегодня появилось 10 коментов, оставлять last-modified годовалой давности?
Посетитель
no avatar
Медаль
Сообщений: 565
Каменты как каменты, меня больше инетересует именно при обновлении контента
Посетитель
no avatar
Медаль
Сообщений: 565
Никто не подскажет?
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.