Как делать?
Дорабатываем Custom Properties
Есть такой хороший компонент Custom Properties который позволяет добавлять к статьям тэги и выводить облако тэгов, кстати именно он и используется на этом сайте.
И все бы хорошо, но есть в нем такая неприятная особенность - при клике по тэгу поиск отображается иногда неверно.
После того, как я немного поломал голову, почему одни тэги работают хорошо, а другие не хотят - я выявил закономерность - не показываются тэги к свежим статьям...
Дальнейшие изыскания привели к файлику components/com_customproperties/models/search.php к строке 453
if($ce->publish_up) $wherestr[] = "( c.".$ce->publish_up." = " . $database->Quote( $nullDate ) . " OR c.".$ce->publish_up." publish_down)$wherestr[]= "( c.".$ce->publish_down." = " . $database->Quote( $nullDate ) . " OR c.".$ce->publish_down." >= CURDATE() )";
проблема здесь оказалось в том что вызов функции CURDATE() в MySQL возвращает время сервера, а учитывая что он находится в Америке разница составляет 12 часов. То есть нам нужно ждать 12 часов перед тем как статья начнет искаться по тэгам, а это не хорошо.
Для решения проблемы заменяем строчку на следующую -
if($ce->publish_up) $wherestr[] = "( c.".$ce->publish_up." = " . $database->Quote( $nullDate ) . " OR c.".$ce->publish_up." Quote($now)." )";
if($ce->publish_down)$wherestr[]= "( c.".$ce->publish_down." = " . $database->Quote( $nullDate ) . " OR c.".$ce->publish_down." >= ".$database->Quote($now)." )";
а в строке 451 (то есть чуть выше) добавляем еще 2 строчки кода
$jnow =& JFactory::getDate();
$now = $jnow->toMySQL();
Собственно весь рецепт, как обычной простой, но отнявший немало времени.
Избавляемся от дублирования контента на главной странице
Данный материал актуален как для Joomla 1.5 так и для Joomla линейки 1.0.
Есть такая проблема - при заходе на сайт вы попадаете на страницу http://joomla15.ru/ а при клике на пункт меню Главная - на адрес вида http://joomla15.ru/index.php?option=com_frontpage&Itemid=1 при выключенном SEF или что-то вроде http://joomla15.ru/home.html при включенном. Это нехорошо, во первых, сама ссылка некрасивая, во-вторых в плане SEO это большой минус так как создается дубль страницы.