• 08-07-2022, 11:32:50
    #1
    Biraz zor bir şey ama aldığım temada kullanıcıya premium kullanıcı eklenebiliyor. Fakat bir ekleme daha yapılmasını istiyorum. Kullanıcılar panelinde üyenin sağ tarafında "Premium yap" butonu ile kullanıcı premium oluyor bunun da fonksiyon kodu aşağıda verdim. Premium kullanıcı yap butonuna tıklayınca üyenin usermeta da premium sutunu eklenip karşılığında "1" sayısal değerini belirliyor. Normal yap dediğimde ise premium siliyor. Eklemek istediğim işlem ise "premium yap" dediğim de kullanıcının websitesi de ww.site.com şeklinde atamasını istiyorum. Eğer ki normal yap dersem website adresi kullanıcının user_meta da yer alan adı olsun ww.saleh.com yapma imkanımız var mı acaba? işte var olan fonksiyon kodlarım

    function mg_users_columns( $columns ) {
    
        // $columns is a key/value array of column slugs and names
        $columns[ 'custom_field' ] = 'Premium';
    
        return $columns;
    }
    
    add_filter( 'manage_users_columns', 'mg_users_columns', 10, 1 );
    
    function mg_users_custom_column( $output, $column_key, $user_id ) {
    
        switch ( $column_key ) {
            case 'custom_field':
                $value = get_user_meta($user_id, 'premium', true) ?: "0";
                if($value=="0")
                {
                    $value = '<input type="button" class="button" onclick="setpremium(this,'.$user_id.', 1, '."'".get_home_url()."'".');" style="background:green; color:white;" value="Premium Yap" />';
                } else {
                    $value = '<input type="button" class="button" onclick="setpremium(this,'.$user_id.', 0, '."'".get_home_url()."'".');" style="background:red; color:white;" value="Normal Yap" />';
                }
                
                return $value;
                break;
            default: break;
        }
    
        // if no column slug found, return default output value
        return $output;
    }
    
    add_filter( 'manage_users_custom_column', 'mg_users_custom_column', 10, 3 );
    
    add_action("wp_ajax_setuserpre", "setpre");
    add_action("wp_ajax_nopriv_setuserpre", "setpre");
    function setpre()
    {
        //Kullanıcı pre switch...
        $userid = intval($_POST['usid']);
        $switch = intval($_POST['switched']);
        
        if(current_user_can('administrator'))
        {
            if($switch=="1")
            {
                add_user_meta($userid, "premium", "1", true);
                update_user_meta($userid, "premium", "1");
                
                echo '<input type="button" class="button" onclick="setpremium(this,'.$userid.', 0, '."'".get_home_url()."'".');" style="background:red; color:white;" value="Normal Yap" />';
            } else {
                delete_user_meta($userid, "premium");
                
                echo '<input type="button" class="button" onclick="setpremium(this,'.$userid.', 1, '."'".get_home_url()."'".');" style="background:green; color:white;" value="Premium Yap" />';
            }
        }
        
        exit();
    }
  • 08-07-2022, 12:00:08
    #2
    add_user_meta($userid, "premium", "1", true);
    update_user_meta($userid, "premium", "1") ;
    Kısmını
    add_user_meta($userid, "premium", "1", true);
    update_user_meta($userid, "premium", "siteadi.com");
    Başka hangi dosya çalışıyor bilmiyorum bu dosyada ki işlem bu
  • 08-07-2022, 12:06:54
    #3
    Misafir adlı üyeden alıntı: mesajı görüntüle
    add_user_meta($userid, "premium", "1", true);
    update_user_meta($userid, "premium", "1") ;
    Kısmını
    add_user_meta($userid, "premium", "1", true);
    update_user_meta($userid, "premium", "siteadi.com");
    Başka hangi dosya çalışıyor bilmiyorum bu dosyada ki işlem bu
    Konuyu tam anlatamadim sanırım premium eklediğim kullanıcıya ayrıca birde web sitesi eklemek istiyorum.

    Premium dan çıkardığım kullanıcının ise web sitesi ww.ahmet.com olacak yani kullanici adi yer alacak
  • 08-07-2022, 12:19:28
    #4
    Aynı yer aynı mantık
    add_user_meta add derseniz ekler
    Oraya değer olarak 1 yolluyorsunuz birde site adi gönderin
    add_user_meta update derseniz günceller