10 вставок кода для вашего сайта на WordPress
В данном уроке приводится 10 вставок кода для WordPress, которые могут облегчить труд блогера.
1. Автоматически добавляем кнопку Google+ к записи
Google+ - новая социальная сеть, которая поддерживается гигантом интернет индустрии Google. Если вы хотите дать своим читателям "плюсовать" ваши записи, то почему бы не добавлять кнопку Google+ ко всем материалам автоматически?
Просто скопируйте код, который приведен ниже в файл functions.php
вашей темы. Как только вы сохраните файл, кнопка Google+ будет автоматически выводиться рядом с вашей записью в блоге.
add_filter('the_content', 'wpr_google_plusone'); function wpr_google_plusone($content) { $content = $content.'<div class="plusone"><g:plusone size="tall" href="'.get_permalink().'"></g:plusone></div>'; return $content; } add_action ('wp_enqueue_scripts','wpr_google_plusone_script'); function wpr_google_plusone_script() { wp_enqueue_script('google-plusone', 'https://apis.google.com/js/plusone.js', array(), null); }
2. Перенаправление фидов RSS на Feedburner
Feedburner - широко известный сервис, который сообщает, сколько людей подписалось на ваши фиды RSS. Вместо подстраивания вашей темы для замены ссылок на встроенный фид WordPress можно использовать данный крюк, который автоматически перенаправит все фиды WordPress на ваш фид Feedburner.
В 4-й строке нужно указать URL вашего фида. Копируйте код в файл functions.php
вашей темы. Сохраняйте его и пользуйтесь результатом.
add_action('template_redirect', 'cwc_rss_redirect'); function cwc_rss_redirect() { if ( is_feed() && !preg_match('/feedburner|feedvalidator/i', $_SERVER['HTTP_USER_AGENT'])){ header('Location: http://feeds.feedburner.com/ВАШ_ФИД'); header('HTTP/1.1 302 Temporary Redirect'); } }
3. Отслеживаем количество просмотров записей без использования плагина
Вам интересно, сколько людей прочитало вашу запись в блоге? Есть несколько вариантов плагинов для подсчета просмотров, но здесь приводится простой способ, который вы можете реализовать сами. Первое, что нужно сделать - создать функции. Скопируйте ниже приведенный код в файл functions.php
вашей темы.
function getPostViews($postID){ $count_key = 'post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count==''){ delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); return "0 просмотров"; } return 'Просмотров: '.$count; } function setPostViews($postID) { $count_key = 'post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count==''){ $count = 0; delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); }else{ $count++; update_post_meta($postID, $count_key, $count); } }
А затем копируем ниже приведенный код в файл single.php
в главный цикл:
<?php setPostViews(get_the_ID()); ?>
В завершение копируем ниже приведенный в шаблон туда, где планируется выводить количество просмотров:
<?php echo getPostViews(get_the_ID()); ?>
4. Выводим количество фанов Facebook
Если для вашего блога есть страничка Facebook, то вы можете выводить количество фанов, которые у нее есть. Следующий код будет выводить данную информацию. Нужно просто скопировать код в любое место темы, где вы планируете выводить количество ваших фанов Facebook.
<?php $page_id = "ID_вашей_страницы"; $xml = @simplexml_load_file("http://api.facebook.com/restserver.php?method=facebook.fql.query&query=SELECT%20fan_count%20FROM%20page%20WHERE%20page_id=".$page_id."") or die ("a lot"); $fans = $xml->page->fan_count; echo $fans; ?>
5. Выводим содержание поискового запроса для Google
Данный код позволит вам получать поисковый запрос, который ввел пользователь перед переходом на страницу на вашем сайте. Просто скопируйте код в тему туда, где планируете выводить содержание поискового запроса.
<?php $refer = $_SERVER["HTTP_REFERER"]; if (strpos($refer, "google")) { $refer_string = parse_url($refer, PHP_URL_QUERY); parse_str($refer_string, $vars); $search_terms = $vars['q']; echo 'Здравствуйте, посетитель с поисковика Google! Вы искали, прежде чем перейти сюда: '; echo $search_terms; }; ?>
6. Просто выводим внешние файлы с помощью короткого кода
При ведении блога иногда требуется выводить файлы с других сайтов. Следующий код создаст короткий код, который будет включать любой файл в запись.
Сначала надо открыть файл functions.php
и скопировать в него следующий код:
function show_file_func( $atts ) { extract( shortcode_atts( array( 'file' => '' ), $atts ) ); if ($file!='') return @file_get_contents($file); } add_shortcode( 'show_file', 'show_file_func' );
После сохранения файла functions.php
вы можете использовать короткий код в редакторе WordPress:
[show_file file="http://www.некий_сайт.com/некая_страница.html"]
7. Автоматическое отправление email автору, когда публикуется его запись
В случае, если вы ведете блог с несколькими авторами, будет отличной идеей оповещать их, когда их запись публикуется. Скопируйте следующий код в файл functions.php
вашей темы. После сохранения автоматически будет отправляться email автору, когда его запись публикуется.
function wpr_authorNotification($post_id) { $post = get_post($post_id); $author = get_userdata($post->post_author); $message = " Здравствуйте, ".$author->display_name.", Ваша статья ".$post->post_title." только что опубликована. Благодарю за труд! "; wp_mail($author->user_email, "Ваша статья опубликована.", $message); } add_action('publish_post', 'wpr_authorNotification');
8. Выводим снимок экрана другого сайта с помощью короткого кода
Вам приходится выводить снимки других сайтов в вашем блоге? Если да, то может быть вам будет полезна возможность размещать снимок любого сайта с помощью короткого кода с указанием адреса URL.
Сначала надо добавить функции в файл functions.php
вашей темы.
<?php function bm_sc_mshot ($attributes, $content = '', $code = '') { extract(shortcode_atts(array( 'url' => '', 'width' => 250, ), $attributes)); $imageUrl = bm_mshot ($url, $width); if ($imageUrl == '') { return ''; } else { $image = '<img src="' . $imageUrl . '" alt="' . $url . '" width="' . $width . '"/>'; return '<div class="browsershot mshot"><a href="' . $url . '">' . $image . '</a></div>'; } } function bm_mshot ($url = '', $width = 250) { if ($url != '') { return 'http://s.wordpress.com/mshots/v1/' . urlencode(clean_url($url)) . '?w=' . $width; } else { return ''; } } add_shortcode('browsershot', 'bm_sc_mshot'); ?>
После сохранения файла вы можете воспользоваться коротким кодом [browsershot]
в редакторе WordPress:
[browsershot url="http://ссылка_на сайт" width="ширина_снимка"]
9. Список сайтов в вашей сети
Очень полезная функция для тех, использует сеть веб сайтов с помощью функции WordPress 3.+ (мультисайт). Вам нужно выводить список всех сайтов в сети?Задача просто решается с помощью следующего кода..
Первым шагом, конечно, нужно добавить функции в файл functions.php
вашей темы.
function wp_list_sites( $expires = 7200 ) { if( !is_multisite() ) return false; // Так как функция get_blog_list() не рекомендуется к использованию по причине // потенциально высокого потребления ресурсов, то мы используем // $wpdb для формирования своего запроса SQL. Так как запрос может // интенсивно использовать память, то результат будет сохраняться с помощью Transients API if ( false === ( $site_list = get_transient( 'multisite_site_list' ) ) ) { global $wpdb; $site_list = $wpdb->get_results( $wpdb->prepare('SELECT * FROM wp_blogs ORDER BY blog_id') ); // Устанавливаем срок хранения кеша Transient равным двум часам set_site_transient( 'multisite_site_list', $site_list, $expires ); } $current_site_url = get_site_url( get_current_blog_id() ); $html = ' <ul id="network-menu">' . "\n"; foreach ( $site_list as $site ) { switch_to_blog( $site->blog_id ); $class = ( home_url() == $current_site_url ) ? ' class="current-site-item"' : ''; $html .= "\t" . ' <li id="site-' . $site->blog_id . '" '="" .="" $class=""><a href="' . home_url() . '">' . get_bloginfo('name') . '</a></li> ' . "\n"; restore_current_blog(); } $html .= '</ul> <!--// end #network-menu -->' . "\n\n"; return $html; }
После сохранения файла, следующий код будет выводить все сайты в вашей сети. Просто скопируйте его в вашу тему туда, где планируете выводить список.
<?php // Меню сети мультисайта $network_menu = wp_list_sites(); if( $network_menu ): ?> <div id="network-menu"> <?php echo $network_menu; ?> </div> <!--// end #network-menu --> <?php endif; ?>
10. Добавляем класс записи, если запись имеет миниатюру
При задании стиля вашей темы, может потребоваться изворотливость при одновременной работе с записями, которые имеют миниатюры, и записями без миниатюр. Чтобы упростить задачу, можно использовать следующий код, который будет добавлять класс has_thumb
к записям с миниатюрами.
Скопируйте следующий код в файл functions.php
вашей темы.
function has_thumb_class($classes) { global $post; if( has_post_thumbnail($post->ID) ) { $classes[] = 'has_thumb'; } return $classes; } add_filter('post_class', 'has_thumb_class');
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/synv0b7kFkA/lessons.php
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей Индийская пословица |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.