32 чрезвычайно полезных трюка для файла функций WordPress

/

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

Самые полезные приемы для файла функций WordPress

Что такое файл функций в WordPress?

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

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

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

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

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

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

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

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

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

<?php
function wpb_remove_version() {
    return '';
}
add_filter('the_generator', 'wpb_remove_version');

Подробные инструкции см. В нашем руководстве о том, как правильно удалить номер версии WordPress.

2. Добавьте собственный логотип панели инструментов

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

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

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

<?php
function wpb_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>
    ';
}
//hook into the administrative header output
add_action('wp_before_admin_bar_render', 'wpb_custom_logo');

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

3. Измените нижний колонтитул в панели администратора WordPress

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

<?php
function remove_footer_admin () {
    echo 'Fueled by <a href="http://www.wordpress.org" target="_blank">WordPress</a> | WordPress Tutorials: <a href="https://www.example.com" target="_blank">Example</a></p>';
}

add_filter('admin_footer_text', 'remove_footer_admin');

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

Пользовательский нижний колонтитул в админке WordPress

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

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

<?php
add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');

function my_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>Welcome to Custom Blog Theme! Need help? Contact the developer <a href="mailto:[email protected]">here</a>. For WordPress Tutorials visit: <a href="https://www.example.com" target="_blank">EXAMPLE</a></p>';
}

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

Пользовательский виджет панели инструментов в WordPress

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

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

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

<?php
add_filter( 'avatar_defaults', 'wpb_new_gravatar' );
function wpb_new_gravatar ($avatar_defaults) {
    $myavatar = 'http://example.com/wp-content/uploads/2017/01/wpb-default-gravatar.png';
    $avatar_defaults[$myavatar] = "Default Gravatar";
    return $avatar_defaults;
}

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

Пользовательский граватар по умолчанию

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

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

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

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

<?php
function wpb_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 wpb_copyright();
?>

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

Подробнее читайте в нашем руководстве о том, как добавить динамическую дату копирайта в WordPress.

7. Произвольное изменение цвета фона в WordPress

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

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

<?php
function wpb_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 wpb_bg();?>">>

Теперь вы можете сохранить изменения и посетить свой веб-сайт, чтобы увидеть это в действии.

Случайное изменение фона в WordPress

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

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

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

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

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

<?php
update_option( 'siteurl', 'http://example.com' );
update_option( 'home', 'http://example.com' );

Не забудьте заменить example.com своим доменным именем.

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

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

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

<?php
add_image_size( 'sidebar-thumb', 120, 120, true ); // Hard Crop Mode
add_image_size( 'homepage-thumb', 220, 180 ); // Soft Crop Mode
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode

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

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

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

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

10. Добавьте новые навигационные меню в вашу тему

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

<?php
function wpb_custom_new_menu() {
    register_nav_menu('my-custom-menu',__( 'My Custom Menu' ));
}
add_action( 'init', 'wpb_custom_new_menu' );

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

Новое меню навигации

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

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

Подробные инструкции см. В нашем руководстве по добавлению настраиваемых меню навигации в темы WordPress.

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

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

<?php
function wpb_new_contactmethods( $contactmethods ) {
    // Add Twitter  
    $contactmethods['twitter'] = 'Twitter';
    //add Facebook
    $contactmethods['facebook'] = 'Facebook';

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

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

Дополнительные поля профиля пользователя в WordPress

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

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

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

12. Добавление областей готовых виджетов или боковой панели в темы WordPress

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

<?php
// Register Sidebars
function custom_sidebars() {

    $args = array(
        'id'            => 'custom_sidebar',
        'name'          => __( 'Custom Widget Area', 'text_domain' ),
        'description'   => __( 'A custom widget area', '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' );

Теперь вы можете перейти на страницу Внешний вид »Виджеты, и вы увидите новую область настраиваемых виджетов.

Область недавно зарегистрированных виджетов в WordPress

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

<?php
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('custom_sidebar') ) : ?>
<!–Default sidebar info goes here–>
<?php endif; ?>

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

13. Управление нижним колонтитулом RSS-канала

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

<?php
function WP_postrss($content) {
    if(is_feed()) {
        $content = 'This post was written by Syed Balkhi '.$content.'Check out';
    }
    return $content;
}
add_filter('the_excerpt_rss', 'WP_postrss');
add_filter('the_content', 'WP_postrss');

Для получения дополнительной информации см. Наше руководство о том, как добавлять контент и полностью управлять своими RSS-каналами.

14. Добавьте избранные изображения в RSS-каналы

Миниатюра сообщения или избранные изображения обычно отображаются только в дизайне вашего сайта. Вы можете легко расширить эту функциональность на свой RSS-канал с помощью простой функции в своем 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');

Для получения дополнительной информации см. Наше руководство о том, как добавлять миниатюры сообщений в RSS-канал WordPress.

15. Скрыть ошибки входа в WordPress

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

<?php
function no_wordpress_errors(){
  return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

Теперь пользователи видят общее сообщение, когда они вводят неправильное имя пользователя или пароль.

В WordPress нет подсказок для входа

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

16. Отключить вход по электронной почте в WordPress

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

<?php
remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

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

17. Отключить функцию поиска в WordPress

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

<?php
function fb_filter_query( $query, $error = true ) {

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

        // to error
        if ( $error == true )
        $query->is_404 = true;
    }
}

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

Для получения дополнительной информации см. Наше руководство о том, как отключить функцию поиска в WordPress.

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

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

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

<?php
function publish_later_on_feed($where) {

    global $wpdb;

    if ( is_feed() ) {
        // timestamp in WP-format
        $now = gmdate('Y-m-d H:i:s');

        // value for wait; + device
        $wait = '10'; // integer

        // http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
        $device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR

        // add SQL-sytax to default $where
        $where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
    }
    return $where;
}

add_filter('posts_where', 'publish_later_on_feed');

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

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

19. Измените текст «Читать дальше» для выдержек в WordPress

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

<?php
function modify_read_more_link() {
    return '<a class="more-link" href="' . get_permalink() . '">Your Read More Link Text</a>';
}
add_filter( 'the_content_more_link', 'modify_read_more_link' );

20. Отключите RSS-каналы в WordPress

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

<?php
function fb_disable_feed() {
    wp_die( __('No feed available,please visit our <a href="'. get_bloginfo('url') .'">homepage</a>!') );
}

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

Чтобы узнать о методе плагина и получить дополнительную информацию, см. Наше руководство по отключению RSS-каналов в WordPress.

21. Изменить длину отрывка в WordPress

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

<?php
function new_excerpt_length($length) {
    return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');

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

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

22. Добавьте пользователя-администратора в WordPress

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

<?php
function wpb_admin_account(){
    $user = 'Username';
    $pass = 'Password';
    $email = '[email protected]';
    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','wpb_admin_account');

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

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

23. Удалите панель приветствия из панели управления WordPress

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

Панель приветствия в админке WordPress

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

<?php
remove_action('welcome_panel', 'wp_welcome_panel');

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

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

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

<?php
// Function to return user count
function wpb_user_count() {
    $usercount = count_users();
    $result = $usercount['total_users'];
    return $result;
}
// Creating a shortcode to display user count
add_shortcode('user_count', 'wpb_user_count');

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

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

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

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

<?php
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 не выполняет шорткоды внутри текстовых виджетов. Чтобы исправить это, вам нужно просто добавить этот код в файл функций вашей темы.

<?php
// Enable shortcodes in text widgets
add_filter('widget_text','do_shortcode');

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

27. Добавление нечетных и четных классов CSS в сообщения WordPress

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

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

<?php
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';

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

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

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

Альтернативные цвета, используемые для сообщений WordPress с использованием нечетных и четных классов CSS

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

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

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

<?php
function my_myme_types($mime_types){
    $mime_types['svg'] = 'image/svg+xml'; //Adding svg extension
    $mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
    return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

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

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

29. Удалите ссылки на изображения по умолчанию в WordPress

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

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

<?php
function wpb_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', 'wpb_imagelink_setup', 10);

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

Отключить ссылки на изображения по умолчанию в WordPress

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

30. Добавьте поле информации об авторе в сообщения WordPress

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

<?php
function wpb_author_info_box( $content ) {

    global $post;

    // Detect if it is a single post with a post author
    if ( is_single() && isset( $post->post_author ) ) {

        // Get author's display name
        $display_name = get_the_author_meta( 'display_name', $post->post_author );

        // If display name is not available then use nickname as display name
        if ( empty( $display_name ) )
        $display_name = get_the_author_meta( 'nickname', $post->post_author );

        // Get author's biographical information or description
        $user_description = get_the_author_meta( 'user_description', $post->post_author );

        // Get author's website URL
        $user_website = get_the_author_meta('url', $post->post_author);

        // Get link to the author archive page
        $user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));

        if ( ! empty( $display_name ) )

        $author_details = '<p class="author_name">About ' . $display_name . '</p>';

        if ( ! empty( $user_description ) )
        // Author avatar and bio

        $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 .'">View all posts by ' . $display_name . '</a>'; 

        // Check if author has a website in their profile
            if ( ! empty( $user_website ) ) {

            // Display author website link
            $author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow">Website</a></p>';

        } else {
            // if there is no author website then just close the paragraph
            $author_details .= '</p>';
        }
        // Pass all this info to post content 
        $content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>';
    }
    return $content;
}

// Add our function to the post content filter
add_action( 'the_content', 'wpb_author_info_box' );

// Allow HTML in author bio section
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;
}

Вот как будет выглядеть ваш авторский бокс:

Коробка автора

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

31. Отключить XML-RPC в WordPress

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

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

<?php
add_filter('xmlrpc_enabled', '__return_false');

Вы можете прочитать нашу статью о том, как отключить XML-RPC в WordPress для получения дополнительной информации.

32. Автоматически связывать избранные изображения с сообщениями

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

<?php
function wpb_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', 'wpb_autolink_featured_images', 10, 3 );

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

На этом пока все.

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

Нужна помощь с WordPress? Свяжитесь сейчас
[email protected]

Это переведенная версия оригинальной статьи от wpbeginner, весь контент, изображения и авторство принадлежит автору

Как легко создать купонный сайт в WordPress

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

Как легко создать промежуточный сайт для WordPress (шаг за шагом)

Вы хотите создать промежуточный сайт для WordPress, но не знаете, с чего начать? Промежуточный сайт WordPress - это тестовый сайт, который вы можете использовать

Как исправить потерю цвета и насыщенности изображения в WordPress

Недавно один из наших читателей спросил нас, как предотвратить потерю цвета и насыщенности изображения в WordPress? Это распространенная проблема,

Как исправить ошибку 502 Bad Gateway в WordPress

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