WP скрываем часть записи от незарегистрированных пользователей

📅 6 Сен 2023 11:24 | 👁 264 | 🕐 < 1 мин.

Периодически возникает необходимость спрятать какую-то часть текста записи или страницы от незарегистрированных пользователей. Реализация шорткода [hide][/hide], скрывающего текст от незарегистрированных пользователей. Необходимо добавить в файл functions.php вашей темы следующий код:

//шорткод скрытия части текста записи start
function wph_hide_text($atts, $content = null) {
    if (is_user_logged_in() && !is_null($content) && !is_feed())
        {return wpautop($content);}
    else {
        $loginlink = wp_login_url();
        $reglink = wp_registration_url();
        $msg = '<p style="background:#fcf8e3;padding:5px;">
        Для просмотра скрытого содержимого вы должны 
        <a href="'.$loginlink.'">войти</a> или 
        <a href="'.$reglink.'">зарегистрироваться</a> на сайте.</p>';
        return $msg;
    }
}
add_shortcode('hide', 'wph_hide_text');
//шорткод скрытия части текста записи end

Пример использования:

[hide]Этот текст будет скрыт.[/hide]

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

Ссылка на оригинальную статью: https://www.wphook.ru/posts/hide-text.html

Поделиться

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

(Required)