Четыре новых усовершенствования на моем блоге
Сайт дня (как попасть): Практические семинары по SEO
Дорогие друзья, сегодня я поделюсь с вами несколькими усовершенствованиями, которые я сделал на блоге Shakin.ru в последнее время.
О предыдущих усовершенствованиях моего блога вы можете почитать в этих постах:
Как встроить кнопку Google Buzz на свой блог
Мои новые наработки в Твиттере
Как встроить поиск Google на свой сайт
Три эффективных усовершенствования, которые я сделал на shakin.ru + бонус
Кнопка retweet в RSS ленте
Давно я хотел добавить кнопку ретвита в RSS ленту блога, и хотелось сделать это без плагинов. Недавно я задавал вопрос о том, как это реализовать в своем твиттере и на этом блоге. Хочу искренне поблагодарить Сергея Фещукова за то, что он нашел способ, как это сделать. В своем посте Добавляем кнопку ретвита в RSS-ленту без плагинов Сергей не только подробно объяснил, как это реализовать, но и выложил готовые файлы для разных версий Wordpress.
Благодаря Сергею, кнопка ретвита теперь доступна в RSS ленте (чтобы посмотреть, как это выглядит, кликните по крысе с сыром в верхней части боковой колонки этого блога), что дает возможность RSS подписчикам делиться понравившимися материалами моего блога в твиттере прямо из своих RSS читалок.
Выпадающие архивы по месяцам
Посмотрел я на досуге на боковую колонку Shakin.ru и увидел, что блок с архивами по месяцам с октября 2007 года растянулся и стал занимать непозволительно много места. Да и в плане ценности для посетителей он не особо нужен. Поэтому я решил его не убирать, но сократить место, которое занимает этот блок.

Самый лучший вариант, на мой взгляд - сделать архивы выпадающими. Для этого в папке с темой вашего блога открываем файл sidebar.php и находим такой код:
<?php wp_get_archives('type=monthly'); ?>
и заменяем его на такой:
<select name=\"archive-dropdown\" onChange='document.location.href=this.options[this.selectedIndex].value;' id="arch">
<option value=\"\"><?php echo attribute_escape('Выберите месяц'); ?></option>
<?php wp_get_archives('type=monthly&format=option&show_post_count=1'); ?> </select>
Если вам не нужно показывать в скобках число записей около каждого месяца, то меняете show_post_count=1 на show_post_count=0.
В итоге архивы занимают минимум места при том же функционале - каждый месяц доступен в один клик. Красота! Идем дальше
.
Выпадающие теги
Чувствую, у вас сейчас промелькнула мысль, мол, а почему бы не сделать выпадающим что-либо еще? Вот и у меня недавно промелькнула точно такая же. Прямо чувствуешь себя настоящим магом и чародеем
.
Что же можно сделать выпадающим еще? Категории я сделал облаком (без плагина, просто оформил обычным html кодом и подобрал подходящие цвета), которое так люблю, что не хочу менять ни на что другое
.
Тэ-э-э-к-сс… Точно! Теги! До недавнего времени тегов у меня не было. Когда заводил блог, в теме они не выводились, а потом как-то руки не доходили.

Облако тегов делать не стал - оно получилось бы большим, крутящееся облако на flash - встречается повсеместно. Поэтому решил сделать теги выпадающими. Пусть они не прибраны - есть дублирующиеся, есть одни и те же с заглавной и прописной буквы, поле тегов разной ширины по сравнению с соседним окном поиска по блогу, есть непонятный тег «1», но я на это внимания не обращаю. Я считаю себя свободным художником, а у художника должен быть творческий беспорядок
. Куда-то я опять ушел в сторону
.
Итак, выпадающие теги делаем так. Сначала в папке с вашей темой Wordpress в файле functions.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' => 255,
'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;
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<option value='$tag_link'>$tag ($count)</option>";
}
switch ( $format ) :
case 'array' :
$return =& $a;
break;
case 'list' :
$return = "<ul class='wp-tag-cloud'>\n\t<li>";
$return .= join("</li>\n\t<li>", $a);
$return .= "</li>\n</ul>\n";
break;
default :
$return = join("\n", $a);
break;
endswitch;
return apply_filters( 'dropdown_generate_tag_cloud', $return, $tags, $args );
}
// Выпадающие теги - конец кода //
И затем выводим выпадающие теги в боковой колонке - открываем sidebar.php в папке с темой вашего блога и в нужном месте вставляем такой код:
<select name="tag-dropdown" style="width:180px; margin-left:10px;" onchange="document.location.href=this.options[this.selectedIndex].value;" id="tag">
<option value="#">Нажмите здесь</option>
<?php dropdown_tag_cloud('number=0&order=asc'); ?>
</select>
Ширину width:180px и отступ слева margin-left:10px поменяйте на подходящие для вашего дизайна.
Вывод внешних ссылок на блог
Захотел я сделать блок, в котором выводились бы внешние ссылки на мой сайт. Во-первых, самому удобнее просматривать, кто ссылается, во-вторых, часть материалов для блог-шоу я теперь беру именно из этих ссылок.
Я назвал этот блок «Друзья Shakin.ru». Внешние ссылки собираются с поиска Яндекса по блогам. Приведу код, который выводит список внешних ссылок (размещаем его в нужном месте файла sidebar.php):
<h2>Друзья Shakin.ru</h2>
<a href="http://shakin.ru/ksp"><b>Как сюда попасть ↓</b></a><br><br>
<?php
include_once(ABSPATH.WPINC.'/rss.php');
$feed = fetch_rss('http://blogs.yandex.ru/search.rss?link=shakin.ru&ft=blog'); // Укажите свой сайт
$items = array_slice($feed->items, 0, 7); // Число выводимых ссылок - 7
?>
<?php if (!empty($items)) : ?>
<?php foreach ($items as $item) : ?>
<div class="sidebar1"><a href="<?php echo $item['link']; ?>"><?php echo $item['title']; ?></a>
<p><?php echo $item['description']; ?></p></div>
<?php endforeach; ?>
<?php endif; ?><br>
Если хотите выводить этот блок не на всех страницах, а только на главной вашего блога, то перед вышеупомянутым кодом поместите такую строку:
<?php if ($_SERVER[”REQUEST_URI”] == ‘/’) { ?>
А после вышеупомянутого кода - такую:
<?php } else {?> <?php } ?>
Для информации я создал страницу Как попасть в блок “Друзья Shakin.ru”, в которой описал назначение блока. Для оформления внешнего вида выводимых ссылок в файле стилей style.css в папке с вашей темой Wordpress добавляем такой код:
.sidebar1 a:link, .sidebar1 a:visited {
color: #f0670b;
text-decoration: underline;
}
.sidebar1 p {
color: #ccc;
text-decoration: none;
border-bottom: 1px dotted #ccc;
font-size: 80%;
}
В целом хочу сказать, что с введением блока внешних ссылок наблюдаю, что на мой блог стали больше и чаще ссылаться.
Я и в дальнейшем буду делиться усовершенствованиями своего блога.
Желаю Вам отличного настроения, такого, как у меня сейчас!
Постовой (как попасть + обмен ссылками): Вам нужна вентиляция в доме? Установки Климат - монтаж и проектирование.
Эффективная раскрутка сайтов
Новости для вебмастеров на http://gaziboo.ru/
Десерт на сегодня - видео о самом большом закрытом бассейне в мире в Японии, который вмещает 6000 человек:
Похожие материалы:
Буду благодарен, если поделитесь этой статьей:
↑ Как поставить такие же кнопки на свой сайт ↑





АлаичЪ 05 апреля 2010 в 4:44 pm



















