Красота WordPress в том, что его легко можно адаптировать для различных задач. Можно расширить его с помощью всего нескольких строк кода. В этой статье мы рассмотрим 10 снипетов шорткодов, которые будут отлаживать и оптимизировать вашу WordPress тему. Вы можете добавить все эти фрагменты кода в файл functions.php
WordPress темы.
Ограничьте счетчик слов выдержки
Кое что может пойти не так в журнальной теме WordPress, это когда пользователи включают слишком много слов до тега more
. Конечно, они могли бы вручную записать выдержку в специальное поле, но на веб-сайте, который имеет сотни сообщений и на котором текст над тегом more
всегда использовался в качестве выдержки, возвращаться к созданию выдержек для всех этих сообщений от руки было бы обременительно. В этом случае, мы можем ограничить количество слов показываемых в выдержке с помощью этого кода:
add_filter('excerpt_length', 'ilc_excerpt_length'); function ilc_excerpt_length( $length ){ return 10; }
Здесь мы используем WordPress хук фильтр, который является функцией, которая парсит и (обычно) изменяет данные, прежде чем они будут сохранены в базу данных или отображены на странице. В этом случае, мы устанавливаем количество слов показываемых в выдержке равное 10.
Добавьте Favicon используя WordPress хук
Хуки позволяют вставить специальный код, не прикасаясь к шаблону. Это дает нам большую гибкость, потому что теперь, когда нам нужно что-то изменить, мы должны только лишь изменить функцию, которая подключена к определенному хуку. Например, вы можете добавить favicon на ваш сайт, не касаясь файла header.php
, просто подключив функцию в хук wp_head
:
add_action( 'wp_head', 'ilc_favicon'); function ilc_favicon(){ echo "<link rel='shortcut icon' href='" . get_stylesheet_directory_uri() . "/favicon.ico' />" . "\n"; }
Файл favicon.ico
должен быть расположен в корневом каталоге вашей темы. Мы сейчас, используем хук, который является функцией, которая срабатывает на определенном этапе исполнения ядра WordPress. В этом случае хук вызывает любую функцию, которая прикреплена к нему, когда браузере запущена загрузка страницы. Но другие хуки могут вызываться при сохранении поста, регистрации пользователей и так далее. Некоторые темы имеют собственные хуки, которые, как и хуки ядра WordPress, могут быть использованы для запуска функции на определенных этапах исполнения.
определяйте safari на iOS
В настоящее время веб-сайты обслуживают мобильные версии используя различные методы. WordPress предлагает надежный способ определения мобильного браузера Safari, таким образом вы знаете, когда посетитель использует iPhone или iPad.
WordPress интеллектуально устанавливает значение переменной $is_phone
, и вы можете использовать его для внедрения альтернативных стилей, показа альтернативного контента или показа видео другого формата. В следующем примере, участвует переменная $is_iphone
, и различные стили применяются в зависимости от возвращаемого значения:
add_action('wp_print_styles', 'ilc_enqueue_styles'); function ilc_enqueue_styles(){ global $is_iphone; if( $is_iphone ){ wp_enqueue_style('iphone-css', get_stylesheet_directory_uri() . '/iphone.css' ); } else{ wp_enqueue_style('common-css', get_stylesheet_directory_uri() . '/common.css' ); } }
В этом случае, мы с помощью стандартной функции WordPress wp_enqueue_style
добавили стили в элемент веб-страницы head
. Действие, которым мы прирепляем нашу функцию это wp_print_styles
, так что, мы просто говорим WordPress выводить соответствующую таблицу стилей, когда он печатает все остальные необходимые таблицы стилей.
Удалите элементы из хедера
WordPress выводит несколько вещей в разделе head
. В частности, мета-тег generator
, RSD ссылка и wlwmanifest
ссылка будут не сильно полезны для многих пользователей:
<meta name="generator" content="WordPress 3.2.1"> <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd"> <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml">
Некоторые блоггеры говорят, что вам следует избавиться от мета-тега generator
, так никто не может сказать, какую версию WordPress вы используете. Но помните, что вы в любом случае всегда должны использовать последнюю версию.
Если вам не нужна функциональность XML-RPC, вы можете удалить RSD ссылку (вторая строка в приведенном выше снипете). Так же, если вы не используете Windows Live Writer: вы можете спокойно удалить третий эдемент.
В этом случае, вы можете добавить следующий код:
add_filter('the_generator', create_function('', 'return "";')); remove_action('wp_head', 'rsd_link'); remove_action('wp_head', 'wlwmanifest_link');
Эти строки удалят элементы соответствующие вышеприведенному снипету.
Перенаправьте WordPress фиды на FeedBurner
Это здорово, что WordPress из коробки предлагает фиды. Но если вам нужна статистика ваших подписчиков, вам придется использовать FeedBurner или подобный сервис. Чтобы перенаправить ваш фид на один из них, используйте следующий фрагмент кода. Таким образом, если вы попытаетесь перейти по адресу http://www.smashingmagazine.com/feed
, вы будете перенаправлены на Фиды FeedBurner для Smashing Magazine.
add_action('template_redirect', 'ilc_rss_redirect'); function ilc_rss_redirect() { if ( is_feed() && !preg_match('/feedburner|feedvalidator/i', $_SERVER['HTTP_USER_AGENT'])){ header('Location: http://feeds.feedburner.com/smashingmagazine'); header('HTTP/1.1 302 Temporary Redirect'); } }
Замените http://feeds.feedburner.com/smashingmagazine
на URL вашего собственного фида на FeedBurner.
Показывайте Избранные изображения в фиде
…
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров