Как сделать часть записи доступной только для администратора?

👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

Желательно — с помощью шорткодов.

Создай свой первый сайт на WordPress

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

  1. Ruslan

    http://themebot.ru/hide-category-and-posts-from-unauthorized.html

    http://wordpress.org/extend/plugins/hidden-content/

    Ответить
    1. Grawl

      Это Я и сам нашёл, причём — давно. Сложно было малость почитать и подумать? Не зарегистрированным пользователям показывать, а администраторам!

      Ответить
  2. ctapbiu

    http://dreamhelg.ru/2009/07/10-%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%BD%D1%8B%D1%85-%D1%88%D0%BE%D1%80%D1%82%D0%BA%D0%BE%D0%B4%D0%BE%D0%B2-%D0%B4%D0%BB%D1%8F-wordpress/

    4 пример
    только нужно выставить права администратора

    Ответить
    1. Grawl

      Что-то не понял, как их выставлять… Вот есть этот код:

      function access_check_shortcode( $attr, $content = null ) {
          extract( shortcode_atts( array( 'capability' => 'read' ), $attr ) );
          if ( current_user_can( $capability ) && !is_null( $content ) && !is_feed() )
              return $content;
       
          return 'Sorry, only registered members can see this text.';
      }
       
      add_shortcode( 'access', 'access_check_shortcode' );

      Как понимаю, зарегистрированность пользователя определяет эта строчка:

      if ( current_user_can( $capability ) && !is_null( $content ) && !is_feed() )

      А как в ней указать пользователя-администратора? Причём не пользователя с ID1, а всех админов. М?

      Ответить
      1. Sergey Biryukov

        Функцию менять не нужно. Права можно выставить в самом тексте:

        Обычный текст
        
        [access capability="manage_options"]
        Скрытый текст
        [/access]
        
        Снова обычный текст
        

        Здесь использована возможность manage_options, т.к. она есть только у администратора. С тем же успехом можно использовать, например, switch_themes или activate_plugins.

        Ответить
        1. Grawl

          Оу, вот так-то гораздо понятнее! Благодарю (:

          Ответить
  3. tiaurus

    Как сделать текст видимым только определенным пользователям | MemberView — https://n-wp.ru/kak-sdelat-tekst-vidimyim-tolko-opredelennyim-polzovatelyam-memberview/
    Как показать часть публикации только зарегистрированным | RestrictedArea Plugin for WordPress — https://n-wp.ru/4410
    Как сделать скрытый текст в посте без плагинов — https://n-wp.ru/4332
    Как показывать часть содержимого при определенных условиях | Optional Content — https://n-wp.ru/kak-pokazyivat-chast-soderzhimogo-pri-opredelennyih-usloviyah-optional-content/
    Думаю, что вполне подойдет RestrictedArea Plugin for WordPress — шорткод, в котором очень просто указать уровень доступа.

    Ответить
    1. Grawl

      Optional Content — то, что нужно.

      Ответить