• 25-01-2025, 15:12:34
    #1
    Merhaba,

    "Özel
    Yalnızca site yöneticileri ve editörleri tarafından görülebilir." alanını Tüm üyelere nasıl çevirebilirim? Zira editör veya yönetici yetkisi vermek istemiyorum. Harici eklenti olarak değilde, örn abone rolünüde özele dahil etme niyetindeyim.





    Temanın functions.php sine bu kodu yapıştırdım ama işe yaramadı .

    "function sadece_uye_goster($query) {
    if (!is_admin() && $query->is_main_query() && is_single()) {
    if (!is_user_logged_in()) {
    wp_redirect(wp_login_url());
    exit;
    }
    }
    }
    add_action('pre_get_posts', 'sadece_uye_goster');
    "

    2. Sorum sitenin arama barını sadece üyelerin kullanabilmesi için nasıl bir önlem alınabilir? Misafir olanlar kullanamasın istiyorum.
    Teşekkürler
  • Kabul Edilen Cevap
    • 1. soru
      function allow_subscribers_to_read_private_posts() {
          // 'subscriber' rolünü alalım
          $role = get_role('subscriber');
          if ( $role ) {
              $role->add_cap('read_private_posts');
              $role->add_cap('read_private_pages');
          }
      }
      add_action('init', 'allow_subscribers_to_read_private_posts', 11);
      2. soru
      function restrict_search_to_logged_in_users() {
          // Eğer şu an arama sayfasındaysak ve kullanıcı giriş yapmamışsa...
          if ( is_search() && ! is_user_logged_in() ) {
              // Login sayfasına yönlendirirken bir “login_message” parametresi ekliyoruz:
              $login_url = wp_login_url(); // İsterseniz buraya redirect_to için get_permalink() de ekleyebilirsiniz
              // Örneğin: $login_url = wp_login_url( get_permalink() );
      
              wp_redirect( add_query_arg( 'login_message', urlencode('Arama yapabilmek için lütfen giriş yapınız.'), $login_url ) );
              exit;
          }
      }
      add_action('template_redirect', 'restrict_search_to_logged_in_users');
  • 25-01-2025, 15:50:54
    #3
    Kıymetli yorumlarınız için çok teşekkür ederim. Acaba eklenti kurmadan kodlar üzerinden yönetici ve editörün yanına abonelerde eklenemez mi?
  • 25-01-2025, 18:58:08
    #4
    Karohan adlı üyeden alıntı: mesajı görüntüle
    Kıymetli yorumlarınız için çok teşekkür ederim. Acaba eklenti kurmadan kodlar üzerinden yönetici ve editörün yanına abonelerde eklenemez mi?
    uğraştırır.
  • 26-01-2025, 12:10:50
    #5
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    1. soru
    function allow_subscribers_to_read_private_posts() {
        // 'subscriber' rolünü alalım
        $role = get_role('subscriber');
        if ( $role ) {
            $role->add_cap('read_private_posts');
            $role->add_cap('read_private_pages');
        }
    }
    add_action('init', 'allow_subscribers_to_read_private_posts', 11);
    2. soru
    function restrict_search_to_logged_in_users() {
        // Eğer şu an arama sayfasındaysak ve kullanıcı giriş yapmamışsa...
        if ( is_search() && ! is_user_logged_in() ) {
            // Login sayfasına yönlendirirken bir “login_message” parametresi ekliyoruz:
            $login_url = wp_login_url(); // İsterseniz buraya redirect_to için get_permalink() de ekleyebilirsiniz
            // Örneğin: $login_url = wp_login_url( get_permalink() );
    
            wp_redirect( add_query_arg( 'login_message', urlencode('Arama yapabilmek için lütfen giriş yapınız.'), $login_url ) );
            exit;
        }
    }
    add_action('template_redirect', 'restrict_search_to_logged_in_users');