32 Полезных трюка для файла functions.php

Приветствую, уважаемые!

В сегодняшнем посте я хочу поговорить о таком мощном файле вордпресс как functions.php. И сегодня я собрал целую коллекцию трюков, хуков и фич для этого файла. Надеюсь все это вам будет полезно. Если насобираю еще хоть небольшую кучку полезностей — сделаю вторую часть.

Во всех темах WordPress есть файл functions.php. Этот файл действует как плагин и позволяет вам делать много интересных вещей на вашем сайте WordPress. В этой статье я покажу вам некоторые из наиболее полезных трюков для вашего файла functions.php.

Что представляет собой файл функций в WordPress?

Файл функций, обычно известный как файл functions.php, является файлом темы WordPress. Он поставляется со всеми бесплатными и премиальными темами WordPress.

Ко мне часто поступают вопросы про хостинг, которым я пользуюсь и поэтому решил указать хостинг в статье https://sprinthost.ru. Вы можете попробовать попользоваться хостингом 30 дней бесплатно. Чтобы понять, как будет работать Ваш сайт на этом хостинге просто перенести свой сайт (в этом поможет поддержка хостинга бесплатно) и и таким образом сможете понять подходит хостинг Вам или нет. На этом хостинге находятся сайты с 20 000 тысяч посещаемость и сайты чувствуют себя отлично. Рекомендую! Да, если делать оплату на 1 год то получаете скидку 25%. И что мне нравится - тех. поддержка всегда помогает в технических вопросах, за что им спасибо. Как Вы понимаете не всегда проходит всё гладко и нет желания, чтобы сайт не был доступен тем самым страдал трафик и доход.

Цель этого файла — дать разработчикам темы возможность определять свои особенности и функции темы. Этот файл действует так же, как плагин WordPress, и его можно использовать для добавления собственных пользовательских фрагментов кода в WordPress.

Вы найдете много из этих фрагментов кода на веб-сайтах с инструкциями, в которых вам следует добавить этот код в файл functions.php вашей темы или плагин WordPress для конкретного сайта.

Теперь вы можете подумать, в чем разница между плагином WordPress для сайта и файлом functions.php? Какой из них лучше?

В то время как файл functions.php более удобен, плагин с конкретным сайтом намного лучше. Просто потому, что он не зависит от вашей темы WordPress и будет работать независимо от того, какую тему вы используете.

С другой стороны, файл функций темы будет работать только для этой темы, и если вы переключите тему, то вам придется скопировать/вставить ваши пользовательские коды в новую тему.

Сказав это, вот некоторые чрезвычайно полезные фичи для файла functions.php.

1. Удаляем номер версии WordPress

Вы всегда должны использовать последнюю версию WordPress. Тем не менее, вы все равно можете удалить номер версии WordPress со своего сайта. Просто добавьте этот фрагмент кода в свой файл функций.

function zacompom_remove_version() {
return '';
}
add_filter('the_generator', 'zacompom_remove_version');

2. Добавляем свой логотип в пользовательской панели мониторинга

Хотите изменить логотип в область администрирования WordPress? Добавление пользовательского логотипа в панели управления является первым шагом в этом процессе.

Сначала вам нужно будет загрузить свой собственный логотип в папку изображений вашей темы с названием custom-logo.png. Убедитесь, что ваш пользовательский логотип имеет размер 16×16 пикселей.

После этого вы можете добавить этот код в файл функций вашей темы.

function zacompom_custom_logo() {
echo '
<style type="text/css">
#wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before {
background-image: url(' . get_bloginfo('stylesheet_directory') . '/images/custom-logo.png) !important;
background-position: 0 0;
color:rgba(0, 0, 0, 0);
}
#wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
background-position: 0 0;
}
</style>
';
}
add_action('wp_before_admin_bar_render', 'zacompom_custom_logo');

3. Изменяем подвал в панели администратора WordPress

Подвал в области администрирования WordPress отображает сообщение «Спасибо вам за творчество с WordPress». Вы можете изменить его на все что захотите, добавив этот код.

function remove_footer_admin () {
echo '<p>Материал взят с сайта <a href="https://zacompom.ru.org" target="_blank">Zacompom.ru</a></p>';
}
add_filter('admin_footer_text', 'remove_footer_admin');

Не стесняйтесь изменять текст и ссылки, которые вы хотите добавить. Вот как это выглядит на моем сайте.

4. Добавляем пользовательские виджеты панели управления в WordPress.

Вероятно вы видели виджеты, которые добавляют в панель WordPress множество плагинов и тем. В качестве разработчика темы вы можете добавить его самостоятельно, вставив следующий код:

add_action('wp_dashboard_setup', 'zacompom_custom_dashboard_widgets');

function zacompom_custom_dashboard_widgets() {
global $wp_meta_boxes;

wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}

function custom_dashboard_help() {
echo '<p>Здравствуйте! Нужна помощь по сайту на wordpress - <a href="mailto:info@zacompom.ru">обращайтесь</a>. Все мои услуги вы найдете <a href="https://zacompom.ru/services" target="_blank">здесь</a></p>';
}

Вот как это выглядит:

5. Изменение значение Gravatar по умолчанию в WordPress

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

add_filter( 'avatar_defaults', 'zacompom_new_gravatar' );
function zacompom_new_gravatar ($avatar_defaults) {
$myavatar = 'https://zacompom.ru/wp-content/themes/zacompom/images/avatar.png';
$avatar_defaults[$myavatar] = "Граватар по умолчанию";
return $avatar_defaults;
}

Теперь вы можете перейти на страницу настроек «Обсуждения» и выбрать свой аватар по умолчанию.

6. Динамическая дата в подвале WordPress

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

Вы можете использовать этот код, чтобы добавить динамическую дату авторского права в подвал своего сайта.

function zacompom_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© " . $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-' . $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}

После добавления этой функции вам нужно будет открыть файл footer.php и добавить следующий код, где бы вы хотели отображать динамическую дату публикации:

<?php echo zacompom_copyright(); ?>

Эта функция ищет дату вашего первого сообщения и дату вашего последнего сообщения. Затем он повторяет годы, когда вы называете эту функцию.

7. Случайное изменение цвета фона в WordPress

Вы хотите случайно изменить цвет фона на своем сайте при каждом посещении или перезагрузке страницы? Вот как это легко сделать.

Сначала вам нужно добавить этот код в файл функций вашей темы.

function zacompom_bg() { 
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
$color ='#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].
$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
echo $color;
}

Затем вам нужно будет отредактировать файл header.php в своей теме. Найдите тег <body> и добавьте следующую строку:

<body <?php body_class(); ?> style="background-color:<?php zacompom_bg();?>">

8. Обновление URL-адреса WordPress

Если ваша страница входа в WordPress продолжает обновляться или вы не можете получить доступ к области администрирования, вам необходимо обновить URL-адреса WordPress.

Один из способов сделать это — использовать файл wp-config.php. Однако, если вы это сделаете, вы не сможете установить правильный адрес на странице настроек. Поля URL-адреса и URL-адреса сайта WordPress будут заблокированы и неотредактированы.

Если вы хотите исправить это, вы должны добавить этот код в свой файл функций.

update_option( 'siteurl', 'https://zacompom.ru' );
update_option( 'home', 'https://zacompom.ru' );

Не забудьте заменить zacompom.ru на свое имя домена.

После входа в систему вы можете перейти в «Настройки» и установить там URL-адреса. После этого вы должны удалить код, добавленный в файл функций, в противном случае он будет продолжать обновлять эти URL-адреса при каждом обращении к вашему сайту.

9. Добавляем дополнительные размеры изображения

WordPress автоматически создает несколько размеров изображения при загрузке изображения. Вы также можете создавать дополнительные размеры изображений для использования в своей теме. Добавьте этот код в свой файл функций вашей темы.

add_image_size( 'thumb-sidebar', 120, 120, true ); // Режим жесткой обрезки
add_image_size( 'thumb-homepage', 220, 180 ); // Режим мягкой обрезки
add_image_size( 'thumb-singlepost', 590, 9999 ); // Неограниченный режим высоты

Этот код создает три новых размера изображения разных размеров. Не стесняйтесь настраивать код в соответствии с вашими требованиями.

Вы можете отобразить размер изображения в любом месте своей темы, используя этот код.

<?php the_post_thumbnail( 'thumb-homepage' ); ?>

10. Добавляем новые навигационные меню к теме

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

function zacompom_custom_new_menu() {
  register_nav_menu('zacompom-custom-menu',__( 'Мое пользовательское меню' ));
}
add_action( 'init', 'zacompom_custom_new_menu' );

Теперь вы можете перейти в меню «Внешний вид», и вы увидите «Мое пользовательское меню» в качестве опции размещения темы.

Теперь вам нужно добавить этот код в свою тему, где вы хотите отобразить меню навигации.

<?php wp_nav_menu( array( 
    'theme_location' => 'zacompom-custom-menu', 
    'container_class' => 'custom-menu-class' ) ); 
?>

11. Добавляем дополнительные поля в профиля автора

Вы хотите добавить дополнительные поля в профили автора в WordPress? Вы можете легко сделать это, добавив этот код в свой файл функций:

function zacompom_new_contactmethods( $contactmethods ) {
// Добавляем Twitter
$contactmethods['twitter'] = 'Twitter';
//Добавляем Facebook
$contactmethods['facebook'] = 'Facebook';

return $contactmethods;
}
add_filter('user_contactmethods','zacompom_new_contactmethods',10,1);

Этот код добавит поля Twitter и Facebook в профили пользователей в WordPress.

Теперь вы можете отобразить эти поля в шаблоне автора следующим образом:

<?php echo $curauth->twitter; ?>

12. Добавление виджета в боковую панель вашей темы

Это один из самых используемых вариантов и многие разработчики уже знают об этом. Но он заслуживает того, чтобы быть в этом списке для тех, кто этого не знает. Вставьте следующий код в файл functions.php:

// Регистрируем виджет сайдбар
function custom_sidebars() {

	$args = array(
		'id'            => 'custom_sidebar',
		'name'          => __( 'Мой сайдбар', 'text_domain' ),
		'description'   => __( 'Описание моего нового сайдбара', 'text_domain' ),
		'before_title'  => '<h3 class="widget-title">',
		'after_title'   => '</h3>',
		'before_widget' => '<aside id="%1$s" class="widget %2$s">',
		'after_widget'  => '</aside>',
	);
	register_sidebar( $args );
}
add_action( 'widgets_init', 'custom_sidebars' );

Теперь вы можете посетить страницу Внешний вид — Виджеты и вы увидите новую пользовательскую область виджета. На моем сайте есть такие виджеты:

Чтобы отобразить этот виджет в вашей теме, добавьте этот код куда вам нужно в файл sidebar.php:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('custom_sidebar') ) : ?>
<!–-Информация о боковой панели по умолчанию идет здесь–->
<?php endif; ?>

13. Внедряем RSS-канал в подвал сайта

Вы видели блоги, которые добавляют свою рекламу в свои RSS-ленты под каждым сообщением. Вы можете легко справиться с этой простой функцией. Вставьте следующий код:

function zacompom_postrss($content) {
if(is_feed()){
$content = 'Этот пост написал Юрич '.$content.'Проверьте Zacompom.ru';
}
return $content;
}
add_filter('the_excerpt_rss', 'zacompom_postrss');
add_filter('the_content', 'zacompom_postrss');

14. Добавить миниатюры в RSS-ленту

Миниатюры или изображения записи обычно отображаются только в дизайне вашего сайта. Вы можете легко расширить эту функциональность для вашей RSS-ленты с помощью простой функции.

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');

15. Скрываем ошибки входа в WordPress

Ошибки входа в WordPress могут использоваться хакерами, чтобы угадать, ввели ли они неправильное имя пользователя или пароль. Скрывая ошибки входа в WordPress, вы можете сделать свою область входа немного более безопасной.

function zacompom_wordpress_errors(){
  return 'Что-то не так!';
}
add_filter( 'login_errors', 'zacompom_wordpress_errors' );

16. Отключаем вход по электронной почте

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

remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

17. Отключаем функцию поиска

Если вы хотите отключить функцию поиска на своем сайте WordPress, то просто добавьте этот код в свой файл functions.php.

function zacompom_filter_query( $query, $error = true ) {

if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;

// Ошибка
if ( $error == true )
$query->is_404 = true;
}
}

add_action( 'parse_query', 'zacompom_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

18. Задержка сообщений в RSS-ленте

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

Просто добавьте этот код в файл функций вашей темы.

function publish_later_on_feed($where) {
	global $wpdb;
	if ( is_feed() ) {
		// метка а WP-формате
		$now = gmdate('Y-m-d H:i:s');
		$wait = '10'; // число
		$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
		$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
	}
	return $where;
}

add_filter('posts_where', 'publish_later_on_feed');

В этом коде мы использовали 10 минут в переменной $wait. Не стесняйтесь менять это на любое количество минут, которые вы хотите.

19. Изменяем текст «Читать дальше» для анонса

Вы хотите изменить текст, который появляется после анонса записи? Просто добавьте этот код в файл функций вашей темы.

function modify_read_more_link() {
    return '<a class="more-link" href="' . get_permalink() . '">Сюда впишите свой текст</a>';
}
add_filter( 'the_content_more_link', 'modify_read_more_link' );

20. Отключаем RSS-ленту

Не всем веб-сайтам нужна RSS-лента. Если вы хотите отключить ее на своем сайте WordPress, добавьте этот код в файл функций вашей темы.

function zacompom_disable_feed() {
wp_die( __('Нет доступных каналов, пожалуйста, посетите наш <a href="'. get_bloginfo('url') .'">сайт</a>!') );
}

add_action('do_feed', 'zacompom_disable_feed', 1);
add_action('do_feed_rdf', 'zacompom_disable_feed', 1);
add_action('do_feed_rss', 'zacompom_disable_feed', 1);
add_action('do_feed_rss2', 'zacompom_disable_feed', 1);
add_action('do_feed_atom', 'zacompom_disable_feed', 1);

21. Изменяем длину анонса

WordPress ограничивает длину анонса до 55 слов. Если вам нужно это изменить, вы можете добавить этот код в свой файл функций.

function zacompom_excerpt_length($length) {
return 100; //тут выставите нужное число слов
}
add_filter('excerpt_length', 'zacompom_excerpt_length');

Измените 100 на количество слов, которые вы хотите показать в анонсе.

22. Добавляем нового администратора

Если вы забыли пароль WordPress и электронную почту, вы можете создать пользователя admin, добавив этот код в файл функций вашей темы с помощью FTP-клиента.

function zacompom_admin_account(){
$user = 'Логин';
$pass = 'Пароль';
$email = 'info@zacompom.ru'; //тут ваша почта
if ( !username_exists( $user )  && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','zacompom_admin_account');

Не забудьте заполнить поля логин, пароль и электронной почты. Как только вы зашли на свой сайт WordPress, не забудьте удалить код из вашего файла функций.

23. Удаляем окно приветствия в панели инструментов

Окно приветствия — это мета-окно, добавленное к экрану панели управления области администрирования WordPress. Оно предоставляет собой полезные ярлыки для начинающих, чтобы делать что-то на своем новом сайте.

Вы можете легко скрыть это мета-окно, добавив этот код в свой файл функций.

remove_action('welcome_panel', 'wp_welcome_panel');

24. Показываем общее количество зарегистрированных пользователей

Вы хотите показать общее количество зарегистрированных пользователей на вашем сайте? Просто добавьте этот код в файл функций вашей темы.

// Функция подсчета пользователей
function zacompom_user_count() { 
$usercount = count_users();
$result = $usercount['total_users']; 
return $result; 
} 
add_shortcode('user_count', 'zacompom_user_count');

Этот код делает шорткод, который позволяет отображать общее количество зарегистрированных пользователей на вашем сайте. Теперь вам просто нужно добавить этот шорткод [user_count] в свой пост или на страницу, где вы хотите показать общее количество пользователей.

25. Исключаем определенные категории из RSS-ленты

Вы хотите исключить определенные категории из своей RSS-ленты? Добавьте этот код в файл функций вашей темы.

function exclude_category($query) {
	if ( $query->is_feed ) {
		$query->set('cat', '-5, -2, -3');
	}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');

26. Включаем выполнение шорткодов в текстовых виджетах

По умолчанию WordPress не выполняет шорткоды внутри текстовых виджетов. Чтобы исправить это, вам нужно просто добавить этот код в файл функций вашей темы.

// Включение коротких кодов в текстовых виджетах
add_filter('widget_text','do_shortcode');

27. Добавляем классы css odd и even для комментариев

Возможно, вы видели темы WordPress, которые используя классы odd или even для комментариев. Это помогает пользователям визуализировать, где заканчивается один комментарий и начинается следующий.

Вы можете использовать ту же технику для своих сообщений WordPress. Это выглядит эстетично и помогает пользователям быстро сканировать страницы с большим количеством контента. Просто добавьте этот код в файл функций вашей темы.

function oddeven_post_class ( $classes ) {
   global $current_class;
   $classes[] = $current_class;
   $current_class = ($current_class == 'odd') ? 'even' : 'odd';
   return $classes;
}
add_filter ( 'post_class' , 'oddeven_post_class' );
global $current_class;
$current_class = 'odd';

Этот код просто добавляет класс odd или even в сообщения WordPress. Теперь вы можете добавить собственный стиль CSS, чтобы по-разному их отображать. Вот пример кода, который поможет вам начать работу.

.even {
background: #f0f8ff;  
}
 
.odd {
 background: #f4f4fb;
}

Конечный результат будет выглядеть примерно так:

28. Добавляем дополнительные типы файлов для загрузки

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

function zacompom_myme_types($mime_types){
    $mime_types['svg'] = 'image/svg+xml'; //Добавляем файл с расширением .svg
    $mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Добавляем файл с расширением .psd
    return $mime_types;
}
add_filter('upload_mimes', 'zacompom_myme_types', 1, 1);

Этот код позволяет загружать файлы SVG и PSD в WordPress. Вам понадобится Google, чтобы узнать mime для типов файлов, которые вы хотите разрешить загружать, а затем использовать их в коде.

29. Удаляем ссылки загружаемых изображений

По умолчанию, когда вы загружаете изображение в WordPress, оно автоматически становится связано со страницей вложения. Если пользователи нажимают на изображение, они затем переносятся на новую страницу подальше от вашего сообщения.

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

function zacompom_imagelink_setup() {
	$image_set = get_option( 'image_default_link_type' );
	
	if ($image_set !== 'none') {
		update_option('image_default_link_type', 'none');
	}
}
add_action('admin_init', 'zacompom_imagelink_setup', 10);

Теперь, когда вы загружаете новое изображение в WordPress, оно не будет автоматически привязано. Но вы все равно можете привязать его к файлу или странице вложений, если захотите.

30. Добавляем блок автора в запись

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

function zacompom_author_info_box( $content ) {

global $post;

// Обнаружить, если это один пост с автором сообщения
if ( is_single() && isset( $post->post_author ) ) {

// Получить имя автора 
$display_name = get_the_author_meta( 'display_name', $post->post_author );

// Если отображаемое имя недоступно, используйте псевдоним как отображаемое имя
if ( empty( $display_name ) )
$display_name = get_the_author_meta( 'nickname', $post->post_author );

// Получить биографию или описание автора
$user_description = get_the_author_meta( 'user_description', $post->post_author );

// Получить URL сайта автора 
$user_website = get_the_author_meta('url', $post->post_author);

// Получить ссылку на страницу архива
$user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));
 
if ( ! empty( $display_name ) )

$author_details = '<p class="author_name">Об авторе ' . $display_name . '</p>';

if ( ! empty( $user_description ) )

// Аватар автора и биография
$author_details .= '<p class="author_details">' . get_avatar( get_the_author_meta('user_email') , 90 ) . nl2br( $user_description ). '</p>';

$author_details .= '<p class="author_links"><a href="'. $user_posts .'">Посмотреть все статьи ' . $display_name . '</a>';  

// Проверяем, имеет ли автор веб-сайт в своем профиле
if ( ! empty( $user_website ) ) {

// Выводим ссылку на сайт автора
$author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow">Сайт</a></p>';

} else { 
// Если нет веб-сайта автора, то просто закрываем абзац
$author_details .= '</p>';
}

// Передаем всю эту информацию для публикации контента  
$content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>';
}
return $content;
}

// Добавляем нашу функцию в фильтр пост-контента 
add_action( 'the_content', 'zacompom_author_info_box' );

// Разрешить HTML теги в разделе биографии автора
remove_filter('pre_user_description', 'wp_filter_kses');

Затем вам нужно добавить некоторые пользовательские стили CSS, чтобы он выглядел лучше. Вы можете использовать этот образец CSS в качестве отправной точки.

.author_bio_section{
background: none repeat scroll 0 0 #F5F5F5;
padding: 15px;
border: 1px solid #ccc;
}

.author_name{
font-size:16px;
font-weight: bold;
}

.author_details img {
border: 1px solid #D8D8D8;
border-radius: 50%;
float: left;
margin: 0 10px 10px 0;
}

Вот как выглядит мой авторский блок:

31. Отключаем XML-RPC

XML-RPC — это метод, позволяющий сторонним приложениям общаться с вашим сайтом WordPress удаленно. Это может привести к проблемам безопасности и может быть использовано хакерами.

Просто добавьте этот код в свой файл функций, чтобы отключить XML-RPC в WordPress:

add_filter('xmlrpc_enabled', '__return_false');

32. Ссылка на запись у миниатюры поста

Если ваша тема WordPress не позволяет автоматически привязывать изображения к полным статьям, вы можете попробовать этот метод. Просто добавьте этот код в файл функций вашей темы.

function zacompom_autolink_featured_images( $html, $post_id, $post_image_id ) {
If (! is_singular()) { 
$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_the_title( $post_id ) ) . '">' . $html . '</a>';
return $html;
} else { 
return $html;
}
}
add_filter( 'post_thumbnail_html', 'zacompom_autolink_featured_images', 10, 3 );

Это все на данный момент.

Я надеюсь, что эта статья помогла вам изучить новые полезные трюки для файла functions.php в WordPress.

На этом буду прощаться с вами — до скорых встреч!


Обо мне
Юрич:
Занимаюсь созданием сайтов на WordPress более 6 лет. Ранее работал в нескольких веб-студиях и решил делиться своим опытом на данном сайте. Пишите комментарии, буду рад общению.
4 комментария к статье "32 Полезных трюка для файла functions.php"
  1. Юрич: 23.07.2017 в 16:33

    Спасибо что протестили — очень вам благодарен! Поправил, сейчас все должно работать

  2. Людмила: 23.07.2017 в 16:31

    В сайдбаре подписка прошла нормально, а в конце статьи так и не хочет.

  3. Юрич: 23.07.2017 в 15:24

    Здравствуйте, Людмила!
    Можете подписываться — я настраивал новую форму подписки. Извините за неудобство!

  4. Людмила: 23.07.2017 в 15:22

    Очень интересная и познавательная статья. Блогами занимаюсь давно, но вот с кодами дружбы не получилось. Может при помощи Вашего сайта что-то изменится в этом направлении.
    Хотела подписаться на обновления, но что-то не сработало. Пишет:
    Forbidden
    You don’t have permission to access /subscribe/ on this server.

Заказать сайт