Поддержка Проблемы и решения Скрытие контента для незарегистрированных пользовате

  • Решено PaulStranger

    (@paulstranger)


    Всем привет. По заголовку проблема — не проблема. Есть куча плагинов, которая позволяет шорткодом [member] закрывать часть текстового контента в постах и на страницах. Либо есть плагины, которые от уровня доступа открывают или закрывают страницы сайта для зарегистрированных или незарегистрированных посетителей.

    А как быть, если нужно таким образом обработать исходный php темы сайта?

    Итак, есть сайт с товарными карточками, на которых указывается цена товара. Как сделать так, чтобы вместо цены для неавторизованных пользователей отображалась ссылка на страницу регистрации/авторизации, что-то типа «To see the price, please register», а пользователи, которые прошли регистрацию и залогинились на сайте, видели вместо этой надписи цену.

    Визуальный макет: http://i.imgur.com/pXLgM3n.png

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

    Возможно есть плагин, но что-то не нашёл.

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • А как быть, если нужно таким образом обработать исходный php темы сайта?

    В общем случае do_shortcode, но возможно в используемом плагине ИМ есть свои функции для этого.

    Я так понимаю, что код вывода ценника нужно обернуть в код, который делает проверку у пользователя: логин / не логин

    is_user_logged_in

    Но в целом это плохая идея — заставлять регистрироваться для просмотра цены. Покупатель быстрее найдёт конкурента. (вот скидки для за регистрированных — это совсем другой колинкор 😉 )

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

    is_user_logged_in — поможет?

    Вот коды, на который нужна проверка:

    <span class="cost<?php if ( TMM::get_option( 'show_currency_converter', TMM_APP_CARDEALER_PREFIX ) ) { ?> convert<?php } ?>"
    data-convert="<?php tmm_get_car_price($post->ID, 1); ?>"><?php tmm_get_car_price($post->ID, 1); ?></span>

    Как обычно и бывает — сам задал вопрос, сам же и ответил.

    Итак, конструкция простая:

    <?php if ( is_user_logged_in() ) : ?>
    
    Сюда текст или исполняемый код - для АВТОРИЗОВАННЫХ
    
    <? else : ?>
    
    Сюда текст или исполняемый код - для НЕАВТОРИЗОВАННЫХ
    
    <?php endif; ?>

    Простите сам сабжспаминг, забыл чекбокс «Mark this topic as resolved» отметить )

    [офтоп]

    Это агрессивный способ, но руководство просит сделать это, для сбора базы потенциальных клиентов.

    Этот способ 100% поможет сократить эту самую базу 🙂 В см не получить реальных клиентов. Зато получить ботов.
    [/офтоп]

    [офтоп]

    SeVlad: Этот способ 100% поможет сократить эту самую базу 🙂 В см не получить реальных клиентов. Зато получить ботов.

    Спасибо за прямоту! Постараюсь убедить… )

    [/офтоп]

    [офтоп]

    Постараюсь убедить… )

    Ну раз так, тогда я Вам попробую помочь в этом 🙂
    Аргументы следующие.
    1. Люди по свое природе ленивы. Им намного проще перейти на след. сайт из выдачи ПС, чем регистрироваться, авторизоваться, потом искать эти страницы.. и тд и тп.
    1.1. Не увидя цены — в 99% случаев человек СРАЗУ же уйдёт, даже не будет разбираться можно ли её увидеть.
    2. Вменяемые и опытные люди НИКОГДА не будут регистрироваться на новых/незнакомых им сайтах. Просто ради безопасности и сокращения времени (см п1).
    3. Не все, но многие из тех, кому так уж приспичило зарегистрироваться (вдруг у вас нечто уникальнейшее) не дадут реальную почту или др контакт — есть масса одноразовых. Те связи с ними всё равно не будет. Чит: это тоже НЕ клиент
    4. Боты регистрируются автоматически просто выискивая формы регистрации на всех найденных сайтах. Они не только НЕ клиенты, но и.. не просто так же они регистрируются.

    И наконец
    5. Зачем Вам левые юзеры, имеющие доступ в админку, пускай и обрезанную (хотя это как бЭ решается, но всё же)? Это и базу загаживать и вообще потенциально небезопасно.

    Ну вот так как-то 🙂
    [/офтоп]

    Модератор Yui

    (@fierevere)

    ゆい

    SeVlad отлично написано )

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

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Тема «Скрытие контента для незарегистрированных пользовате» закрыта для новых ответов.