Tag Archive for 'tagging'

05ИюньОтображение тэгов WordPress выпадающим списком

Простой прием позволяет отобразить тэги в вашем блоге в виде выпадающего (dropdown) списка.

1. В файл functions.php текущей темы вставьте следующий код.

< ?php
function dropdown_tag_cloud( $args = '' ) {
	$defaults = array(
		'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
		'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC',
		'exclude' => '', 'include' => ''
	);
	$args = wp_parse_args( $args, $defaults );

	$tags = get_tags( array_merge($args, array('orderby' => 'count', 'order' => 'DESC')) );
	if ( empty($tags) )
		return;

	$return = dropdown_generate_tag_cloud( $tags, $args );
	if ( is_wp_error( $return ) )
		return false;
	else
		echo apply_filters( 'dropdown_tag_cloud', $return, $args );
}

function dropdown_generate_tag_cloud( $tags, $args = '' ) {
	global $wp_rewrite;
	$defaults = array(
		'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
		'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC'
	);
	$args = wp_parse_args( $args, $defaults );
	extract($args);

	if ( !$tags )
		return;
	$counts = $tag_links = array();
	foreach ( (array) $tags as $tag ) {
		$counts[$tag->name] = $tag->count;
		$tag_links[$tag->name] = get_tag_link( $tag->term_id );
		if ( is_wp_error( $tag_links[$tag->name] ) )
			return $tag_links[$tag->name];
		$tag_ids[$tag->name] = $tag->term_id;
	}

	$min_count = min($counts);
	$spread = max($counts) - $min_count;
	if ( $spread < = 0 )
		$spread = 1;
	$font_spread = $largest - $smallest;
	if ( $font_spread <= 0 )
		$font_spread = 1;
	$font_step = $font_spread / $spread;

	// SQL cannot save you; this is a second (potentially different) sort on a subset of data.
	if ( 'name' == $orderby )
		uksort($counts, 'strnatcasecmp');
	else
		asort($counts);

	if ( 'DESC' == $order )
		$counts = array_reverse( $counts, true );

	$a = array();

	$rel = ( is_object($wp_rewrite) && $wp_rewrite->using_permalinks() ) ? ' rel="tag"' : '';

	foreach ( $counts as $tag => $count ) {
		$tag_id = $tag_ids[$tag];
		$tag_link = clean_url($tag_links[$tag]);
		$tag = str_replace(' ', ' ', wp_specialchars( $tag ));
		$a[] = "\t";
	}

	switch ( $format ) :
	case 'array' :
		$return =& $a;
		break;
	case 'list' :
		$return = "
    \n\t
  • "; $return .= join("
  • \n\t
  • ", $a); $return .= "
  • \n
\n"; break; default : $return = join("\n", $a); break; endswitch; return apply_filters( 'dropdown_generate_tag_cloud', $return, $tags, $args ); } ?>

2. После этого в нужном месте вашей темы (чаще всего в файле sidebar.php) вставьте вот такой код:


Как и многое другое, подсмотрено на сайте WpRecipes.

07ОктСоветы по тэггингу

Не создавайте «перекрывающихся» тегов
Не создавайте тегов, которые значат одно и то же, или похожее. Не используйте в ”web” в ”development” и “webdev”.

Р?спользуйте базовый набор тегов
Не меняйте термины на ходу. Если вы начали использовать теги в “digital photography”, не меняйте на в ”digphotos”. Внезапные изменения дезорганизуют вашу коллекцию закладок.

Будьте постоянны
Изменение способа, которым вы маркируете закладки, может испортить вашу организационную систему. Выберите единый метод теггинга и придерживайтесь его.

Не перемудрите
Используйте простые теги. Проще заложить ссылку с 4-мя четкими тегами, чем с дюжиной непонятно-каких…

Источник: Top Tagging Tips @ Lifehacker




Спонсоры: Оборудование для покраски - линия окраски. Покраска деталей, изделий,стекла.