Здравствуйте, подскажите как при нажатии на кнопку/ссылку изменить баланс пользователя. Более развернуто: Сайт на вордпресс, подключен плагин личного кабинета WP-Recall , в котором присутствует виджет "личный счет пользователя". Его можно пополнять и с него уже оплачивать покупки. Хочу сделать акцию для пользователей, посредством денежного бонуса на их личный счет. Так вот этот счет должен пополнятся, когда сам пользователь нажмет на какую-то кнопку или ссылку. То есть нажал кнопку - хоп на счет +100 к текущему. php код виджета, который выводится в сайдбаре сайта находится по стандартному пути вп-контент/плагинс/wp-recall/phpfile.php Насколько я понял, то эта функция в файле phpfile.php отвечает за вывод в сайдбаре: PHP: function rcl_get_html_usercount(){ global $user_ID,$rmag_options; $id = rand(1,100); $usercount = '<div class="rcl-widget-balance" id="rcl-widget-balance-'.$id.'">'; $user_count = rcl_get_user_balance(); if(!$user_count) $user_count = 0; $usercount .= '<div class="usercount" > <p class="usercount-text">Денег на вашем счёте</p><p class="usercount-num">'.$user_count.' '.rcl_get_primary_currency(1).'</p></div>'; $usercount = apply_filters('count_widget_rcl',$usercount); if($rmag_options['connect_sale']!='') $usercount .= "<!-- <div class='rcl-toggle-form-balance'>" . "<a class='recall-button rcl-toggle-form-link' href='#'>" .__("Deposit",'wp-recall') ."</a> </div> <div class='rcl-form-balance'> ".rcl_form_user_balance(array('idform'=>$id))." </div> -->"; $usercount .= '</div>'; return $usercount; } Саму кнопку "пополнения" нужно сделать на совершенно другой страничке. Как заставить кнопку обратится к нужному пхп файлу и добавить +100 (например) к текущему значению ? Пробовал добавить в этом же файле PHP: if(isset($_POST['btn'])) $user_count = $user_count + 100; но как-то не получилось) Если кто поможет буду очень благодарен)
HTML: <a class='recall-button rcl-toggle-form-link' href='#'> в поле href введи ссылку на страницу, где будет производится расчет или же вешай событие и аяксом меняй PHP: rcl_get_user_balance(); возвращает баланс, который хранится скорей всего в БД, значит и менять значение нужно в БД в общем, начни с азов изучать PHP) http://www.intuit.ru/studies/courses/42/42/info http://phpfaq.ru/newbie/na_tanke
@Silver Soft , я пробовал через яакс и в href вписывал url php-файла с выполнением функции типа key=value, но в этом файле есть спец функция !is_admin, а вордпресс ее считывает как ошибку синтаксиса. Если там через бд, то как можно к бд обратится через клик по кнопке или ссылке? Да, сейчас активно учу php, но как раз эту проблему именно сейчас и не могу решить, а ее нужно срочно. Я уже даже готов заплатить кому-то, кто помог бы)
если не аяксом, то в href пишешь куда обратится к примеру href="/refill/" далее, открываешь этот файл и пишешь там пополнение, в WP за БД отвечает $wpdb, к примеру PHP: $data = array('name'=> 'Иванов', 'balans'=>2000); $id = get_current_user_id(); if ($id >0) $result = $wpdb->update('users', $data, array('id'=>$id)); текущему пользователю меняет имя и баланс... тут нужно знать структуру таблицы, чтобы точно поля написать)
В wp-recall за обновление баланса отвечает функция rcl_update_user_balance. Значит, изменить пользователю баланс можно как-то вот так: PHP: $user_id = get_current_user_id(); //Получаем текущий id пользователя $sum = 100; //Сумма которую нужно прибавить пользователю. Можно так же указать отрицательное число и отнять $user_count = rcl_get_user_balance($user_id)+$sum; //Прибавляем пользователю указанную сумму и сохраняем результат в переменную $comment = 'Комментарий к операции со счётом'; rcl_update_user_balance($user_count, $user_id, $comment); //Обновляем счёт пользователя