Дневник разработчика

28.09.2010
12:01

Как заставить работать t3m_cumulus_tagcloud после обновления t3blog

Если заметили, 24 сентября расширение  Внешняя ссылка открывается в новом окнеt3blog было обновлено. Но после обновления перестало работать красивое расширение для отображения облака меток  Внешняя ссылка открывается в новом окнеt3m_cumulus_tagcloud. Что же случилось? Дополнение облака тегов из класса class.tx_t3mcumulustagcloud_pi1.php обратилось к функции getTags_array () в классе class.tagCloud.php из расширения t3blog (файл класса находится в папке t3blog/pi1/widgets/tagCloud/).

После обновления и ревизии этот класс попросту удалили... Чтобы временно решить проблему (о ней я сообщил разработчику, но будет ли это исправлено - неизвестно...) я сделал следующее:

меняем в строке 126 файла class.tx_t3mcumulustagcloud_pi1.php (t3m_cumulus_tagcloud/pi1/class.tx_t3mcumulustagcloud_pi1.php)

$tags = tagCloud::getTags_array();

на

$tags = getTags_array();

А в конце файла, после функции main() вставляем копирую функции getTags_array() из старой версии расширения t3blog:

										/**
										* Generate a tag clound array. It looks like this:
										* array(
										* 	array(
										* 		'tag'=>"snowflake",
										* 		'count'=>60,
										* 	),
										* 	array(
										* 		'tag'=>"Typo3",
										* 		'count'=>45,
										* 	),
										* 	array(
										* 		'tag'=>"Opensource",
										* 		'count'=>25 ,
										* 	),
										*);
										*
										* @return Array[]	Which tag occures how much times.
										*/
										function getTags_array() {
										$table = 'tx_t3blog_post';
										$where = 'pid='.t3blog_div::getBlogPid() . ' AND TRIM(tagClouds)<>\'\'';
										$where .= tslib_cobj::enableFields($table);
										$posts = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', $table, $where);
										$tags = array();
										while ($resPost = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($posts)) {
										$tags = array_merge($tags, explode(',' , mb_strtolower($resPost['tagClouds'])));
										}
										$GLOBALS['TYPO3_DB']->sql_free_result($posts);
										$tagArray = array();
										foreach ($tags as $tag) {
										// makes lowercase tags
										$tag = mb_strtolower(trim($tag));
										if (isset($tagArray[$tag])) {
										// count to display the quantity of tags
										$tagArray[$tag]['count']++;
										}
										else {
										$tagArray[$tag] = array(
										'tag' => $tag,
										'count' => 1,
										);
										}
										}
										return array_values($tagArray);
										}
										
function getTags_array()

После такой "косметической работы" все снова заработало!

  • 0 Комментарий(ии)

Ваш комментарий

Известить меня, когда кто-нибудь добавит комментарий в этой теме
 

Популярно

TypoScript за 45 минут... Интересно? Читаем!!!
просмотров: 3462
15.10.2010 17:09
Выбор сетевого журнала - знакомимся t3blog!
просмотров: 3180
28.06.2010 09:01
Замена Indexed Search на систему пользовательского поиска...
просмотров: 2954
29.09.2010 10:45
Первоначальные сведения об Extbase
просмотров: 1931
28.08.2010 13:48

Категории

 
 

Скопируйте эту ссылку в программу для чтения новостей RSS

RSS 0.91Записи
RSS 2.0Записи
 
 
webeffector. система продвижения сайта.
Яндекс цитирования
RU-CENTER. Регистрация доменов. Хостинг
Rambler's Top100
 
Система Orphus