Авто-обновление ушек MaxSite CMS на примере запроса фолловеров

Просмотров: 2836Комментарии: 2
MaxSite CMSПрограммированиеPHP-MySQL
Авто-обновление ушек MaxSite CMS на примере запроса фолловеров

Не для кого не секрет, что набирающая популярность MaxSite CMS, имеет стандартный плагин под названием "Ушки". С помощью ушек мы можем размещать произвольный html/php код в наших шаблонах. Ушки удобно использовать для вывода счетчиков и рекламы. Сегодня я напишу как я обновляю ушки с помощью небольшого скрипта. Есть и другие способы, но мне этот показался самым простым.


Мы рассмотрим обновление ушки со счетчиком количества фолловеров твиттера. Для этого в плагине Ушки, я специально создал ушку под названием twitter

1. Создаем скрипт обновления

Создадим в подпапке type своего шаблона файл с уникальным названием, которые мы не будем использовать в своих ссылках, например, twit_update.php

<?php
$key = 'ushki';
$type = 'ushki';
$ushki = mso_get_float_option($key, $type, array());
$ushka = 'twitter'; //Название ушки
//Парсим API твиттера
$xml=file_get_contents('http://api.twitter.com/1/users/show/{НИК В ТВИТТЕРЕ}.xml');
if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) $twitcount = $match[1];
//Задаем содержание ушки
$str = '<div class="twitter"><a href="{ССЫЛКА}">'.$twitcount.' Фолловеров</a></div>';
//Обновление ушки
$res = false;
foreach ($ushki as $id => $us)
{
	if ($us['name']==$ushka)
	{
		$ushki[$id] = array(
			'name' => $ushka,
			'type' => 'html',
			'text' => $str
		);		
		mso_add_float_option($key, $ushki, $type);
		$res = true;
	}
}	
//Если ушка не найдена, то создаем	
if (!$res)
{
	$ushki[] = array('name' => $ushka, 'type' => 'html', 'text' => $str );
	mso_add_float_option($key, $ushki, $type); // и в опции
}
?>

2. Создаем задание cron

Вторым шагом будет создание нового задания cron, которое будет запускать наш скрипт пару раз в сутки:

0 0,12 * * * wget -O - -q http://{Имя сайта}/twit_update/

3. Использование

Теперь данную ушку можно вставить в боковую панель sidebar. Для этого заходим в "Сайдбары и виджеты", и добавляем виджет ушки.

Либо используем ее прямо в шаблоне. Для этого нужно прописать следующий код в нужном месте:

<?php
	if (function_exists('ushka')) echo ushka('twitter');
?>

Комментариев: 2 RSS

1 Светлана 21-01-2013 13:42

Почему "ушок" , а не "ушек"?

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

     

  

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)