WordPress как на ладони
wordpress jino

WP-Cumulus: 3D облако меток на flash (улучшенная русская версия)

Плагин WP-Cumulus уже старый и многие о нем слышали, а еще больше видели. Он предоставляет возможность выводить облако меток в виде вращающегося 3D облака, очень красиво. Его работу вы должны видеть выше. Автор плагина Roy Tanck.

Недавно использовал этот плагин и как обычно залез в код, чтобы отредактировать некоторые моменты под себя. В итоге существенно изменил код плагина. Этим и хочу поделиться:

  1. Во-первых, я перевел плагин на русский язык и сделал более удобное отображение страницы настроек опций, как в виджете так и основной странице настроек. См. скриншоты ниже;

  2. Добавил настройку позволяющую отключать использование шоткода [wp-cumulus] в постах. Не к чему лишние php операции, если вам не нужен шоткод;

  3. Теперь, при выводе облака в шаблоне с помощью  wp_cumulus_insert(), в него можно передать все параметры, которые можно указать в настройках.

  4. Можно создать облако из любых ссылок, не только меток и рубрик, например, из постоянных страниц. Об этом читайте ниже;

  5. Плагин не удалял свои следы (опции) при деинсталяции. Точнее эта функция там предусмотрена, но в ней ошибка, в результате чего она не работает. Такое впечатление, что многие разработчики не тестируют этот момент;

  6. К flash файлу tagcloud.swf (40КБ) добавлялось уникальное число (?654987), каждый раз при загрузке страницы. Поэтому браузер загружает этот файл каждый раз заново, т.е. браузерный кэш не используется. Это ведь ужас: зашел посетитель на сайт, а в боковой панели такое облако, и на какую бы другую страницу он не перешел файл загружается снова. Я убрал это число, все работает как и прежде, без видимых проблем. Файл загружается один раз. Я не понял зачем это надо, может кто-то подскажет?

  7. Изменил логику сохранения настроек, странная она была в плагине. Изменил и всякие мелочи:

    • удалил с кода лишнее, а там оно было;
    • добавил к флеш блоку css класс class="wp-cumulus";
    • добавил css свойство, чтобы облако выводилось по центру, а не слева;
    • изменил получения ссылок, если выводятся и метки и рубрики делается один запрос к базе данных, а не два;
    • и другое...
  8. Выделил основную функцию, чтобы облако можно было подключить к сайту не устанавливая плагин. Только функция и её вывод. Так, такое облако можно добавлять в темы при разработке. Как это сделать читайте ниже.

Скачать

Wp Cumulus Kama Fix V1.2
Скачано: 206, размер: 46.6 KB, дата: 10 месяцев назад

Поддержка версий: WP 2.8+

Установка: установка плагина на WordPress

Скриншоты

Настройки

Настройки все описаны в плагине и на скриншотах и вопросов по ним возникнуть не должно. Кроме, пожалуй, опции Параметры функции wp_tag_cloud. В ней можно указать, как и какие ссылки будут показываться в облаке. Например, "number=20&exclude=12" выведет только 20 меток, даже если их больше и исключит метку 12 (ID метки).

Все возможные параметры для этого параметра:

  • smallest - размер текста для меток с меньшим количеством записей. По умолчанию 8.
  • largest - размер текста для меток с большим количеством записей. По умолчанию 22.
  • unit - единица измерения размера для smallest и largest. Может быть:pt, px, em, %. По умолчанию pt.
  • number - максимально количество меток, которое будет показано. Если установить на 0, то будут показаны все метки без ограничения. По умолчанию 45.
  • exclude - исключить указанные метки. Указывать нужно ID через запятую.
  • include - показать только указанные метки. Указывать нужно ID через запятую.
  • taxonomy - название таксономии, из терминов которой будет построено облако. Благодаря этому параметру, можно вывести термины из любой таксономии, не только метки или категории.

Параметры объединяются знаком &: number=20&exclude=12.

Вывод 3D облака в шаблоне

Если вам нужно вывести облако wp-cumulus прямо в шаблона, без использования виджета или шоткода, то в коде шаблона можно использовать функцию wp_cumulus_insert( $options, $links ). Вывод можно настроить передав нужные параметр. Настройки из админ-панели будут перебиваться этими параметрами.

Параметры, которые можно передать:

$options = array(
	'width' => '550',        // ширина flash
	'height' => '375',       // высота flash
	'tcolor' => 'ffffff',    // цвет больших ссылок
	'tcolor2' => 'ffffff',   // цвет маленьких ссылок
	'hicolor' => 'ffffff',   // цвет наведенной ссылки
	'bgcolor' => '333333',   // цвет фона
	'speed' => '150',        // скорость вращения
	'trans' => 'false',      // прозрачный фон у flash
	'args' => '',            // аргументы передаваемые функции wp_tag_cloud. Пр.: largest=20&smallest=12&number=40
	'mode' => 'tags',        // какие ссылки выводить: tags (метки), cats (категории), both (метки и категории)
	'compmode' => 'js',      // код вставки flash: js (javascript), пусто (object)
	'showwptags' => 1,       // показывать ли HTML ссылки, если в браузере не работает flash
);
wp_cumulus_insert( $options );

Примеры вывода 3D облака в шаблоне

#1 Выведем флэш блок меток с белым фоном, размером 300х225 пикселей.

Для этого откроем файл темы, например, sidebar.php и в нужное место вставим следующий код:

<?php 
wp_cumulus_insert( array(
	'width'=>'300',
	'height'=>'225',
	'bgcolor'=>'ffffff'
) );
?>

#2 Выведем облако из 20 терминов произвольной таксономии "authors", укажем скорость вращения 300:

<?php 
wp_cumulus_insert( array(
	'args'=>'taxonomy=authors&number20', 
	'speed'=>'300'
) ); 
?>

#3 Выводим любые ссылки

Кроме терминов таксономий, в облаке можно выводить любые ссылки. Этот пример показывает как вывести постоянные страницы, для этого укажем второй аргумент функции $links:

<?php
// получаем все постоянные страницы
$posts = get_posts(array(
	'numberposts'     => -1,
	'post_type'       => 'page',
));

// создаем строку ссылок
$links = '';
foreach( $posts as $post ){
	$fsize = rand(12,28);
	$links .= '<a style="font-size:'. $fsize .'px;" href="'. get_permalink($post->ID) .'">'. $post->post_title .'</a>';
}
wp_reset_postdata();

// выводим
wp_cumulus_insert( '', $links ); 
?>

3D Облако без плагина

Если не хотите подключать плагин, то облако можно вывести без установки плагина. Для этого:

  1. Скачайте этот архив и разместите папку из него (wp-cumulus-not-plugin) в любой каталог, пусть это будет каталог темы;

  2. В том месте шаблона, где нужно вывести облако подключите файл wp-cumulus.php и  используйте функцию wp_cumulus_theme_flashcode( $options, $links ).
<?php
require_once( get_template_directory() . '/wp-cumulus-not-plugin/wp_cumulus.php' );

echo wp_cumulus_theme_flashcode( array(
	'width' => '600',        // ширина flash
	'height' => '450',       // высота flash
	'tcolor' => '3D3644',    // цвет больших ссылок
	'tcolor2' => '7E748C',   // цвет маленьких ссылок
	'hicolor' => 'DE1E1C',   // цвет наведенной ссылки
	'bgcolor' => 'ffffff',   // цвет фона
	'speed' => '300',        // скорость вращения
	'mode' => 'tags',        // отображать метки (tags), категории (cats) или и то и другое (both)
	'args' => 'largest=16&smallest=10&number=30',            // аргументы передаваемые функции wp_tag_cloud
	//'folder_url' => get_stylesheet_directory_uri() . '/wp-cumulus-not-plugin/'         // УРЛ до папки файла php
) );
?>
Не работает?

Функция wp_cumulus_theme_flashcode() при выводе флеш объекта подключает 2 файла: swfobject.js и tagcloud.swf. УРЛ этих файлов функция определяет автоматически (они должны лежать в том же каталоге что и файл wp-cumulus.php). Если УРЛ определился неправильно, то облако может не работать. Поэтому при вызове функции, возможно, нужно будет указать параметр folder_url, в котором указать УРЛ до папки где лежат эти 2 файла.

WP-Cumulus: 3D облако меток на flash (улучшенная русская версия) 28 комментариев
Полезные 1 Вопросы 1 Все
  • MIB cайт: remont-biysk.ru

    Подскажите как вывести плагин на странице, без 3Д эффекта, просто ссылками?

Здравствуйте, !

Ваш комментарий
Предпросмотр