Архив категории: ‘WordPress’

Оптимизация WordPress: чистый код вместо ненужных плагинов (часть1)

Friday, 21 Nov 08 в 1:58

php против плагинов wordpressЯ неоднократно говорил, что предпочитаю использовать обычный PHP код или функции WordPress вместо установки разных «непонятных» плагинов. Наткнулся недавно на статью об оптимизации WordPress с помощью замены подобных бесполезных плагинов на обычные вставки кода. Ведь при использовании большого их числа ваш сайт может заметно «сдать» в производительности. Сюда можно отнести простые задачи – как-то редирект фида, отображение рандомного контента, вывод информации из базы данных. Причем все вставки «альтернативного кода», которые будут приведены в статье не требует редактирования файлов самой системы, а лишь правку шаблона (темы). Поэтому вы можете практически не беспокоится насчет обновления блога – оно ваш код не затронет. В некоторых случаях придется подправить файл htaccess, но, думаю, это не большая проблема.

Предыдущий и следующий пост в выбранной категории

Возможность навигации по постам в пределах одной категории – достаточно полезная функция. До версии wordpress 2.х ее обеспечивал специальный плагин. Сейчас вы запросто можете использовать следующий код, который встроен в ядро системы:

<?php previous_post_link('format', 'link', in_same_cat, 'excluded_categories '); ?> |
<?php next_post_link('format', 'link', in_same_cat, 'excluded_categories '); ?>

Здесь используются следующие параметры:

  • format (строка) – позволяет задать форматирование строке со ссылкой, поставив свой текст до и (или) после переменной %link. Например, вы можете использовать значение ‘Следующий пост в этой категории: %link »’.
  • link (строка) – параметр определяет текст для ссылки. По умолчанию это заголовок поста, хотя вы можете добавить любое значение до и (или) после переменной %title.
  • in_same_cat (boolean) – ключевой параметр дабы код для замены плагина сработал. Если он установлен в TRUE, то обрабатываются только посты в той же категории. Учтите, что значение FALSE установлено по умолчанию.
  • excluded_categories (строка) – с помощью данного параметра вы можете исключить из навигации некоторые категории. Например, если вы хотите чтобы посты из категории под номером 6 не принимали участие в работе, просто вводите цифру 6. Для множественного исключение нескольких категорий перечислите их ID через запятую.

Отображение иконок для категорий

Добавление иконок к категориям – хороший способ добить блогу некоторую изюминку. Есть некоторые замечательные плагины для реализации данной идеи, но использовать их вовсе не обязательно! Вместо этого создайте набор иконок (или поищите здесь) и назовите их именами ваших категорий – лучше всего просто скопировать названия категорий (вместе с пробелами, дефисом, большими, маленькими буквами). Причем для всех файлов изображений нужно использовать одно расширение – например, png. После этого создайте в корневой директории вашей wordpress темы папку icons и залейте туда все иконки.

Затем в желаемом месте шаблона вставляем следующий код:

<img src="<?php bloginfo('template_directory'); ?>/icons/<?php $cat = get_the_category(); $cat = $cat[0]; echo $cat->cat_name; ?>.png" alt="Category Icon" />

С помощью этих строк будут выводиться иконки для всех категорий, которые есть в вашем блоге. Для блогов, где каждый пост записывается в отдельную категорию (хотя я такого не встречал) можно использовать альтернативный код:

<?php foreach((get_the_category()) as $cat) { echo '<img src="bloginfo('template_directory'); ?>/icons/' . $cat->cat_name . '.png" alt="Category Icon" />'; } ?>

Отображение иконки автора поста

Еще один хороший способ красиво настроить блог – автоматически отображать иконки для авторов постов. Особенно этот трюк пригодится для коллективных блогов с большим числом писателей. Вместо избыточных плагинов можно использовать тот же метод, что и в предыдущем посте, заменив предварительно имена файлов с категорий на логины авторов.

После чего вставляете в шаблон следующий код:

<img src="<?php bloginfo('template_directory'); ?>/icons/<?php the_author('login'); ?>.png" alt="Icon for: <?php the_author(); ?>"  />

Данный исходный код выводит лишь изображение, но вы запросто можете его немного подправить, добавив свои какие-то нюансы. Если обратите внимание, в нем есть функция для вызова имени автора.

Продолжение следует…

P.S. Приглашаю заглянуть на MMGP.RU – не только форум о заработке в сети, а еще и сообщество профессионаров по инвестициям и финансам. Регистрация бесплатна, проект насчитывает уже 12000 пользователей!

Обратите внимание – разработка сайтов любой сложности: от интернет-магазинов до корпоративных порталов и промо проектов.
MakeUp интернет магазин парфюмерии доставка по Украине

Спонсор месяца:

Понравился пост? Подпишись на обновления блога по RSS для блоггеров и вебмастеровRSS, RSS для блоггеров и вебмастеровEmail или RSS для блоггеров и вебмастеровtwitter!

Плагин WP-SpamFree убивает 99% автоматического спама

Friday, 24 Oct 08 в 2:23

спам в блогахВ начале месяца я уже рассматривал различные способы борьбы со спамом – как радикальные (удаления поля url, каптча, регистрация), так и с помощью плагинов. Вскользь упомянул об одном из них – WP-SpamFree, при этом, решив протестировать его на одном своем блоге. Что я вам скажу – результат потрясающий! Но обо всем по порядку.

Ни для кого не секрет, что львиная доля спама по блогам производится автоматично, с помощью специального софта. Далеко за примером ходить не нужно – в течении нескольких дней количество отловленного спама на этом блоге – больше тысячи сообщений! И все они сохраняются в базе, засоряя ее. Но теперь появилось решение (в виде плагина), которое позволяет не пропускать подобные комментарии. Причем здесь не используется каптча, не нужно решать математические задачки или подтверждать свою «человечность» любым другим образом. Вы просто устанавливаете плагин WP-SpamFree и наслаждаетесь блоггингом.

Лишь некоторые боты могут обрабатывать JavaScript, точно также как некоторые cookies, еще меньше их число может обрабатывать и то, и другое одновременно. Данный плагин использует эту лазейку, что позволяет на 99% предотвратить автоматический спам. У большинства JavaScript и cookies включены по умолчанию, что позволяет плагину работать в фоновом режиме без каких либо неудобств для пользователя. Это основная хитрость, если хотите почитать подробнее посетите страницу плагина, А я пока опишу все его особенности:

  1. Практически полностью исключается возможность автоматического спама.
  2. Есть счетчик, который хранит информацию о количестве заблокированных спам-комментариях.
  3. Не требуется каптча, решение задач или другие действия посетителей сайта – плагин просто работает:)
  4. Нет «ложных срабатываний» (хотя не совсем понял, что этим хотел сказать автор) – в итоге нет разочарованных пользователей и меньше работы для вас.
  5. Не нужно больше просматривать заблокированные Akismet`ом записи, их там просто не будет.
  6. Доступна защита от спама для трекбеков.
  7. Легкая установка – скопируйте плагин и активируйте.
  8. Красота плагина в методе работы: он отличается от многих других и блокирует спам «на пороге» (до размещения).
  9. В отличии от некоторых других плагинов код WP-SpamFree достаточно прост и хорош (малое количество обращений к базе), не приводит к замедлению работы блога.
  10. Полностью совместим со всеми модулями, работающими с кэшем – WP Cache и WP Super Cach. Не каждый антиспам плагин может этим похвалиться.
  11. Есть возможность полностью запретить трекбэки, если их слишком много. Но помните, что они отыгрывают позитивную роль в развитии stand-alone блогосферы.

Установка анти-спам плагина WP-SpamFree

Скачиваем дистрибутив здесь, распаковываем и заливаем на ФТП в директорию wp-content/plugins/.

В разделе Plugins активируем плагин, после чего там же появится новая закладка WP-SpamFree. В ней можно будет задать некоторые настройки работы плагина. Если модуль установлен правильно, то в самом начале страницы вы увидите статус: Installation Status: Installed Correctly. Обратите внимание перечень плагинов с которыми данный может конфликтовать. Также здесь найдете коды для счетчиков количества заблокированных спам сообщений. Если я правильно понял, есть даже возможность создать контактную форму с защитой от автоматического спама.

Для плагина требуется версия wordpress не ниже 2.0.2, он совместим с последним релизом системы – 2.6.2. В общем, все выглядит достаточно серьезно, с таким подходом плагину светит всеобщее признание и мировая популярность:) У автора есть планы по борьбе с ручным человеческим спамом, но данная задача имеет много тонкостей, и реализовать ее весьма сложная.

Еще несколько слов об эффективности и личном опыте. Как я уже сказал, тестировал плагин около 20-ти дней. За это время Akismet отловил 7 комментариев, 3 пропустил, но среди них нет ни единого намека на автоматический спам! Все записи – творение рук человеческих. По моему весьма хороший показатель, с нетерпением жду результатов применения плагина на данном блоге.

Итак, в качестве итогов рекомендую следующий механизм защиты от спама:

  1. В свойствах блога указываем обязательную модерацию первого комментария от новых авторов.
  2. Устанавливаем плагин Akismet для отлова известных спамеров.
  3. Устанавливаем плагин WP-SpamFree для борьбы с автоматическим спамом.

Думаю, подобная связка сможет сократить спам в блоге на 99%, а при цифрах в несколько тысяч записей в неделю это весьма солидный показатель.

P.S. Очень интересная статья для прочтения – 17 идей для создания блогов и сайтов. Если вы испытываете дефицит идей для новых проектов – читайте обязательно!

Вышла новая тема для wordpress, учимся привязывать собственный домен к блогу на Blogspot.

На правах рекламы:

Понравился пост? Подпишись на обновления блога по RSS для блоггеров и вебмастеровRSS, RSS для блоггеров и вебмастеровEmail или RSS для блоггеров и вебмастеровtwitter!

Небольшой хак для All in One SEO Pack

Monday, 20 Oct 08 в 1:00

wordpress плагинВ одной из прошлых статей я уже писал о том, как увеличить трафик для блога с помощью wordpress плагина All in One SEO Pack. Если говорить вкратце, то основная его заслуга – возможность добавления в каждом посте (или странице) заголовка (title), описания (description) и ключевых слов (keywords). Потратив несколько минут на подборку ключевых слов и заполнение данных полей вы вправе ожидать на небольшое количество трафика с поисковых систем – конечно, речь идет не о топовых запросах, но низкочастотные вполне могут сработать. Подробнее об этом читайте по ссылке выше, а сейчас я бы хотел рассказать немного о другом.

Дело в том, что по непонятным мне причинам в ключевые слова (keywords) включались не только слова, которые вы заполняли в соответствующем поле, но и теги для каждого отдельного поста. А это уже не очень хорошо. Так, например, вы написали пост о дизайне, добавили нужных ключевиков, при этом в тегах у вас что-то вроде «мысли вслух» или «мои проекты» – и все это добавилось в keywords. Теги больше направлены на читателей, дополнительный элемент навигации, при этом ключевые слова используются исключительно для поисковиков.

Теоретически понятно, зачем создатели плагина All in One SEO Pack сделали подобную функциональность – дабы пользователю не пришлось заполнять каждый раз поле keywords, а оно формировалось автоматически, но ведь должна быть возможность отключить эту опцию. Кстати, здесь возникает еще один нюанс. У меня в блоге установлен также плагин Simple Tags, который выполняет множество функций, связанных с тегами – позволяет создать облако тегов, выводит похожие по тематике посты после каждой статьи и т.п. В качестве одной из функций указано «Automatically include in header», которая также отвечает за включение тегов в МЕТА keywords. Но при этом в админке есть примечание – если в блоге установлен и настроен плагин All in One SEO Pack, то эта опция автоматически отключается!

Возможно, это просто конфликт двух плагинов, не знаю, но перспектива разбавления нужных ключевых слов тегами меня не привлекала. Одно дело, когда это просто персональный блог – можно особо не беспокоиться, но когда вы делаете какой-то проект для заработка или хотите просто продвигать его в поисковых системах, с этим нужно бороться:)

В общем нашел в плагине All in One SEO Pack участок кода, который отвечает за все это “безобразие”. Итак, если вы хотите чтобы в ключевых словах для поста выводились только заданные вами значения, находим в файле плагина all_in_one_seo_pack.php строки:

// WP 2.3 tags
if (function_exists('get_the_tags')) {
 $tags = get_the_tags($post-&gt;ID);
 if ($tags &amp;&amp; is_array($tags)) {
  foreach ($tags as $tag) {
   $keywords[] = $this-&gt;internationalize($tag-&gt;name);
  }
 }
}

и закомментируем их, поставив в начале – /* и после последнего символа – */ , либо просто удалив этот код. Должно работать, у меня все получилось. Если возникнут какие-то вопросы, пишите в комментариях.

P.S. Интересный проект – просмотр фильма онлайн.

Понравился пост? Подпишись на обновления блога по RSS для блоггеров и вебмастеровRSS, RSS для блоггеров и вебмастеровEmail или RSS для блоггеров и вебмастеровtwitter!
Страница 10 из 15« Первая...78910111213...Последняя »