NAVIGATION
Better translate
RT to view the date of the last inserted/modified article or content part of the whole site.
In the script you can define if the articles/CPs in hidden categories should be included.
Articles located within custom/protected categories won't be included.
The output can be customized according to the usual php-date rules. E.g. {DATE_UPDATE:d.m.Y H:i} delivers 01.02.2010 12:23
or in the script is changed to set the format as in “conf.template.default.inc.php”. The TAG for this: {DATE_UPDATE}.
(At the end of the script, uncomment the line).
Similar function, see: NEWX
rt_date_last_update V1.0 22.04.2011
Docu: –
Forum: http://forum.phpwcms.org/viewtopic.php?f=16&t=21358
Author: K.Heermann (flip-flop) http://planmatrix.de
CMS Version: >= 1.3
Version: V1.0
Update 25.04.2011: This eliminates the possibility to read other columns from the article field e.g. the ID of the article.
TAG: {DATE_UPDATE} oor e.g. {DATE_UPDATE:d.m.Y H:i}
Filename: rt_date_last_update.php
Folder: template/inc_script/frontend_render/
*Condition: → [[http://www.phpwcms-docu.de/conf_inc_php_en.phtml|/config/phpwcms/conf.inc.php]
Settings of the variable $show_hidden: [0|1|2]
The TAG {DATE_UPDATE} - commented lines at the end of the script:
In one of these lines the comment can be removed to activate {DATE_UPDATE}.
The output settings of the date in this case relate to the variables in the file
“config/phpwcms/conf.template.default.inc.php”.
The fourth line provides the output settings of the date directly in the script.
Filename: rt_date_last_update.php
Folder: template/inc_script/frontend_render/
<?php /** ********************************************************************************************* * The most recent Article date of the entire page (Article and CP) * 2011/04/22 V1.0 Knut Heermann (flip-flop) http://planmatrix.de * Update 2011/04/22 V1.0: MySQL Engines that also support subqueries in SELECT statement * Special case article in "home" * * Settings: @show_hidden: [0|1|2] * Search for article date in * - [0] not hidden categories * - [1] only hidden categories * - [2] all categories * * TAG: E.g. {DATE_UPDATE:d.m.Y H:i} or optional {DATE_UPDATE} * * Output: Optional settings from "conf.template.default.inc.php". Have a look to * $template_default["date"]["language"] and * $template_default["date"]["long"/medium/short] * - Enable/disable at the end of the script * - or manual in script * ********************************************************************************************* */ // ------------------------------------------------------------------------------------------- // obligate check for phpwcms constants if (!defined('PHPWCMS_ROOT')) {die("You Cannot Access This Script Directly, Have a Nice Day.");} // ------------------------------------------------------------------------------------------- if( ! (strpos($content["all"],'{DATE_UPDATE')===false)) { // category: "hide" or "visible when active" // -------------------------------------------- $show_hidden = 2; // [0] = not hidden categories [1] = only hidden categories [2] = all categories // -------------------------------------------- $result = array(); $sql = "SELECT UNIX_TIMESTAMP(max(article_tstamp)) AS max_article_tstamp "; // Nur fuer MySQL Engines geeignet die auch im SELECT Unterabfragen unterstuetzen // Only suitable for MySQL Engines that also support subqueries in SELECT statement /* $sql .= ",article_id, "; $sql .= "article_begin AS article_livedate, "; $sql .= "article_end AS article_killdate "; */ $sql .= "FROM ".DB_PREPEND."phpwcms_article ar LEFT JOIN ".DB_PREPEND."phpwcms_articlecat ac ON "; $sql .= "ar.article_cid = ac.acat_id WHERE "; // Categorie settings ------------- $sql .= "ac.acat_aktiv=1 AND ac.acat_public=1 AND ac.acat_trash=0 AND "; // category: "hide" or "visible when active" switch ($show_hidden) { case 0: $sql .= "ac.acat_hidden=0 AND "; // "hide" or "visible when active" break; case 1: $sql .= "ac.acat_hidden>=1 AND "; // "hide" or "visible when active" break; default: $sql .= ""; // all categories } $sql .= "ac.acat_regonly=0 AND "; // "visible for users logged on only" // Article settings --------------- $sql .= "ar.article_public=1 AND ar.article_aktiv=1 AND "; // Article settings $sql .= "ar.article_deleted=0 AND ar.article_begin<NOW() "; $sql .= "AND IF(ac.acat_archive=1 AND ar.article_archive_status=1, 1, ar.article_end>NOW()) LIMIT 1 "; $result = _dbQuery($sql); // ------------------ Special case article in "home" // Category settings in: $content["struct"]['0'] // catch the articles in "home" ID =0 $sql = "SELECT UNIX_TIMESTAMP(max(article_tstamp)) AS max_article_tstamp "; $sql .= "FROM ".DB_PREPEND."phpwcms_article WHERE "; $sql .= "article_cid=0 AND "; $sql .= "article_public=1 AND article_aktiv=1 AND "; $sql .= "article_deleted=0 AND article_begin<NOW() AND "; // Category settings from "home" if ($content["struct"]['0']['acat_permit']['acat_archive'] == 1) $sql .= "IF(article_archive_status=1, 1, article_end>NOW()) "; else $sql .= "article_end>NOW() "; $sql .= "LIMIT 1 "; $result0 = _dbQuery($sql); // Article in "Home" the youngest one? if (isset($result0['0']['max_article_tstamp']) AND ($result0['0']['max_article_tstamp'] > $result['0']['max_article_tstamp']) ) $result['0']['max_article_tstamp'] = $result0['0']['max_article_tstamp']; // ------------------ $my_date = (isset($result['0']['max_article_tstamp'])) ? $result['0']['max_article_tstamp']: time(); // Enable / disable the output form // Optional settings from "conf.template.default.inc.php". Have a look to // $template_default["date"]["language"] and // $template_default["date"]["long"/medium/short] // ------------------------------------------------ // $content["all"] = str_replace('{DATE_UPDATE}', international_date_format($template_default["date"]["language"], $template_default["date"]["long"], $my_date), $content["all"]); // $content["all"] = str_replace('{DATE_UPDATE}', international_date_format($template_default["date"]["language"], $template_default["date"]["medium"], $my_date), $content["all"]); // $content["all"] = str_replace('{DATE_UPDATE}', international_date_format($template_default["date"]["language"], $template_default["date"]["short"], $my_date), $content["all"]); // $content["all"] = str_replace('{DATE_UPDATE}', international_date_format($template_default["date"]["language"], 'd.m.Y H:i', $my_date), $content["all"]); $content["all"] = render_date($content["all"], $my_date, 'DATE_UPDATE'); } ?>