Здравствуйте.
Придется все-таки раскрыть побольше эту тему
Все хорошо и почти работает, но как-то странно работает rcl_get_user_balance($rcl_office)
при переборе табов на хуке 'rcl_tab'
.
add_filter('rcl_tab','tab_compare_companies'); function tab_compare_companies($data){ global $rcl_office; var_dump(rcl_get_user_balance($rcl_office)); // ```1``` if ( $user_ID == $rcl_office ) { if ( $data['id'] == 'current_balance' ) { var_dump(rcl_get_user_balance($rcl_office)); // ```2``` $data['output'] = 'counters'; $data['counter'] = '<span class="current_balance">'.rcl_get_user_balance($rcl_office).'</span>'; } } return $data; }
Первый var_dump
( в коде ```1``` ) показывает int(0)
int(0)
string(500.00)
- то есть отдает баланс правильно, согласно обработке каждой вкладочки, коих у меня три штуки. Но второй var_dump
( в коде ```2``` ) отдает int(0)
, хотя именно тут, судя по циклу и должно появлятся string(500.00)
.
Я понимаю, что это не предусмотрено, но, что как не счетчик баланса должен быть в области счетчиков?
Вопрос: как поймать баланс, ведь он почти уже у меня, только как песок сквозь пальцы?
Спасибо.
В месте с counter'ами есть хук rcl_area_counters - с его помощью можно вывести там любой контент без регистрации вкладки, это на всякий случай.
У вас, во-первых, не объявлена $user_ID, т.е. global $rcl_office; надо заменить на global $rcl_office, $user_ID;
Ну и еще я не уверен что надо использовать $rcl_office, возможно лучше $user_LK; А может они дублируют друг друга, это Андрей лучше скажет
На самом деле я пробовал все global, когда запарился и искал в чем же подвох, просто здесь привел уж так как привел.
--
Также нашел такой вариант, который точно работает через $rcl_tabs
:
add_action('init', function() { global $user_LK, $rcl_tabs; $current_balance = (int)rcl_get_user_balance($user_LK); $rcl_tabs['current_balance']['counter'] = '<span class="current_balance">'.$current_balance.'</span>'; });
--
За rcl_area_counters
спасибо, посмотрю, что это и как работает. В списке сниппетов и в поиске по сайту не нашел его rcl_area_counters , а стоило бы добавить, наверное.