![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная / Каталог блогов / Cтраница блогера GB: Блог о дизайне, верстке и веб-разработке / Запись в блоге
![]()
Полезные функции WordPress2012-10-17 16:34:27 (читать в оригинале)Перенаправление на результат поискаЧасто бывает так, что стандартный поиск WP выдает в результатах всего одну запись. У меня это случается при поиске по имени шаблона, к примеру. Логично будет перенаправить посетителя сразу же к этой записи, не выводя список результатов поиска. [php] add_action('template_redirect', 'redirect_search'); function redirect_search() { if (is_search()) { global $wp_query; if ($wp_query->post_count == 1) { wp_redirect( get_permalink( $wp_query->posts['0']->ID ) ); } } } [/php]Удаляем стандартные размеры загружаемых изображенийЯ не использую размеры, которые WP мне предлагает по умолчанию. Можно смело их удалить... [php] function remove_default_image_size( $size) { unset( $size['thumbnail']); unset( $size['medium']); unset( $size['large']); return $size; } add_filter('intermediate_image_sizes_advanced','remove_default_image_size'); [/php] Этот код оставляет только полный размер изображений, то есть тот, который вы загружаете. Однако, не всегда один размер - это хорошо.Добавляем свои размеры изображенийВ целом, этот код нужен для добавления дополнительных размеров, если стандартных не хватает. Обычно достаточно установить нужный размер в настройках медиафайлов [php] if ( function_exists( 'add_image_size' ) ) { add_image_size('имя1', 200, 9999 ); //200 - ширина, высота не ограничена add_image_size('имя2', 220, 180, true ); //(обрезка под размер, true) } [/php] Такую функцию я использую для добавления картинок, использующихся в виджете лучших записей, изменение размера "на лету" - плохая идея для быстродействия блога. Использовать добавленный размер можно примерно так: [php] if ( has_post_thumbnail() ){ the_post_thumbnail( 'имя1' ); } [/php]Изменяем текст "Введите заголовок"Как вы знаете, Wordpress поддерживает пользовательские типы записей, это могут быть отзывы клиентов, продукты и многое другое. Можно поменять стандартный заголовок при вводе новой записи, адаптировать его под тип записи.![]() Изменяем стандартный Email отправкиWordpress иногда присылает мне письма с разными оповещениями, при этом в качестве отправителя там указан я сам. Это не совсем "красиво" и вызывает сложности(несущественные, но все же) при автоматической сортировке почты. Эту ситуацию легко исправить: [php] add_filter('wp_mail_from', 'new_mail_from'); add_filter('wp_mail_from_name', 'new_mail_from_name'); function new_mail_from($old) { return 'vasya@site.ru';//указываем нужный адрес } function new_mail_from_name($old) { return 'Vasya blog'; //указываем нужное имя } [/php]Меняем текст в футере админ-панелиВы наверняка видели надпись "Спасибо вам за творчество с Wordpress" в футере админ-панели. Мне она порядком надоела, хоть и не бросается в глаза. Менять ее или нет - дело ваше, я сменил вот так: [php] function remove_footer_admin () { echo "GB:Make web better";//ваш текст } add_filter('admin_footer_text', 'remove_footer_admin'); [/php]Стандартное cжатие JPEGЯ готовлю изображения для каждой записи блога самостоятельно, мне не нужна помощь движка в этом. Однако, Wordpress пытается мне помочь и дополнительно сжимает картинки, аналогично он поступает при генерации миниатюр(смотрим чуть выше, про создание и удаление размеров изображений). Можно попросить его не делать этого, используя такой код: [php] add_filter('jpeg_quality',function($arg){return 100;}); [/php] Вместо цифры - подставляйте необходимое вам значение, я оставил 100.Добавляем поля для дополнительных контактовЭту функцию я не использовал на этом блоге, однако она успешно работает на одном из клиентских проектов. По умолчанию, Wordpress предлагает небогатый выбор контактных данных:![]() ![]() Отдаем миниатюру в RSSЭто вообще "бородатая" функция, однако в самописном шаблоне обязательна, поэтому я добавил ее в этот список. Думаю, не нужно объяснять, зачем она нужна? [php] function rss_post_thumbnail($content) { global $post; if(has_post_thumbnail($post->ID)) { $content = '<p>' . get_the_post_thumbnail($post->ID) . '</p>' . get_the_content(); } return $content; } add_filter('the_excerpt_rss', 'rss_post_thumbnail'); add_filter('the_content_feed', 'rss_post_thumbnail'); [/php]Даем блогу больше воздухаЭта функция Wordpress не совсем функция, точнее, совсем даже не функция. Однако, она может быть полезна при некоторых обстоятельствах. Мне вот недавно на VPS увеличили размер оперативной памяти, а почему бы не побаловать блог, ведь памяти лишней не бывает. Тем более, Wordpress достаточно требователен к оперативке. Отлично, добавим вот такой код в файлик wp-config, который лежит в корне сайта: [php] define('WP_MEMORY_LIMIT', '128M'); [/php] По умолчанию, WP использует 32М оперативной памяти, но если есть еще - почему бы не дать ему вздохнуть свободнее? Однако учитывайте еще такой факт - это значение не будет работать, если в php.ini(настройки PHP у хостера) стоит значение меньше, чем вы указали. Будет использовано именно оно. Так что код актуален больше для хостингов уровня VPS и выше. Вот и все на сегодня. Надеюсь, было познавательно... Удачного дня ;)
|
![]() ![]() ![]()
Категория «Авто/Мото»
Взлеты Топ 5
Падения Топ 5
![]()
Популярные за сутки
|
Загрузка...

BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.