Профиль пользователя заблокирован сроком с 30 мая 2020 г. и навсегда по причине: нарушение п. 6.6. правил Сервиса
Ответы пользователя по тегу WordPress
  • Почему выскакивает ошибка кук на wordpres?

    @s1mypj Автор вопроса
    Начинающий web-программист.
    Исправил отправкой формы через ajax, но таким костылём, просто ужас...
    Всё ещё жду совета по решению этой проблемы.
    Мой костыль
    $('#loginform').submit(function(event) {
    	event.preventDefault();
    	var url = $(this).attr('action');
    	var logindata = $(this).serialize();
    	$.ajax({
    		url: url,
    		type: 'POST',
    		data: logindata,
    	})
    	.done(function() {
    		var url = $('#loginform').attr('action');
    		var logindata = $('#loginform').serialize();
    		$.ajax({
    			url: url,
    			type: 'POST',
    			data: logindata,
    		})
    		.done(function() {
    			window.location.href = 'https://site.ru/enter';
    		})
    		.fail(function() {
    			console.log("error");
    		})
    		.always(function() {
    			console.log("complete");
    		});
    	})
    	.fail(function() {
    		console.log("error");
    	})
    	.always(function() {
    		console.log("complete");
    	});
    });

    Двойная отправка информации, ибо с первого раза почему-то он не хочет конектить.
    Ответ написан
    Комментировать
  • Проблема с $wpdb, как подключить в отдельном файле?

    @s1mypj Автор вопроса
    Начинающий web-программист.
    define('SHORTINIT', true);
    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );
    Просто нужно было подключить wp-load.php
    Ответ написан
    Комментировать
  • Как изменить роль покупателя определённого товара?

    @s1mypj Автор вопроса
    Начинающий web-программист.
    Получилось изменить роль только в usersmeta, но тоже успех
    function s1_change_role( $order_id ) {
    
        $order = new WC_Order( $order_id );
        $items = $order->get_items();
    
        foreach ( $items as $item ) {
            $product_name = $item['name'];
            $product_id = $item['product_id'];
            $product_variation_id = $item['variation_id'];
    
            if ( $order->user_id > 0 && $product_id == '522' ) {
                update_user_meta( $order->user_id, 'paying_customer', 1 );
                $user = new WP_User( $order->user_id );
    
                // Remove role
                $user->remove_role( 'subscriber' ); 
    
                // Add role
                $user->add_role( 'Любитель' );
            }
            if ( $order->user_id > 0 && $product_id == '527' ) {
                update_user_meta( $order->user_id, 'paying_customer', 1 );
                $user = new WP_User( $order->user_id );
    
                // Remove role
                $user->remove_role( 'subscriber' ); 
    
                // Add role
                $user->add_role( 'Клиент' );
            }
            if ( $order->user_id > 0 && $product_id == '528' ) {
                update_user_meta( $order->user_id, 'paying_customer', 1 );
                $user = new WP_User( $order->user_id );
    
                // Remove role
                $user->remove_role( 'subscriber' ); 
    
                // Add role
                $user->add_role( 'VIP-Клиент' );
            }
        }
    }

    Всё понятно и просто, только вывод кривоват, как мне кажется, главное - работает)
    $current_user_id = get_current_user_id();
    	$user_info = get_userdata($current_user_id);
    
    	$massiv = $user_info->caps;
    	foreach($massiv as $key => $value)
    	{
    		if($key == 'Любитель'){
    			echo 'Роль пользователя: ';
    			echo substr($key, 3);
    		}
    		if($key == 'Клиент'){
    			echo 'Роль пользователя: ';
    			echo substr($key, 3);
    		}
    		if($key == 'VIP-Клиент'){
    			echo 'Роль пользователя: ';
    			echo substr($key, 3);
    		}
    	}
    Ответ написан
    Комментировать