Домой Каталог: Дополнения WP-Recall Users Files Market Вывод кнопки VIP вместо кнопки корзина и настройка формы публикации товара
22ответ(ов) в теме
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
1
14:29

Здравствуйте!, Не получается сделать вывод на кнопке товара как здесь на сайте, нашёл тему на форуме.

Вы не можете просматривать опубликованные ссылки

Применил код который там описан, но не всё работает, помогите разобраться.

/*Выводим список доступов в редакторе формы публикации*/
add_filter('public_form_rcl','products_wpa_fields_publicform',99,2);
function products_wpa_fields_publicform($fls,$data){

    if($data->post_type!='products') return $fls;

    global $wppay_accounts;

    if($wppay_accounts){
         $fls .= '<table>';
            $fls .= '<tr>'
                    . '<td><label>Сделать доступным для покупателей с аккаунтом: </label></td>'
                    . '<td><select name="wppay-access">'
                    . '<option value="">Базовый</option>';
            foreach((array)$wppay_accounts as $account){
                    $fls .= '<option value="'.$account->ID.'" '.selected($account->ID,get_post_meta($data->post_id,'wppay-access',1),false).'>'.$account->acc_name.'</option>';
            }
            $fls .= '</select>'
                    . '</td>'
                    . '</tr>'
                    . '</table>';
    }

    return $fls;
}
/*Сохраняем выбранное значение доступа*/
add_action('update_post_rcl','update_wpa_product_meta_rcl',10,3);
function update_wpa_product_meta_rcl($post_id,$postdata,$update){
    if($postdata['post_type']!='products') return false;
    if($_POST['wppay-access']) update_post_meta($post_id, 'wppay-access', $_POST['wppay-access']);
}
/*Выводим тарифные планы на приобретение доступа на странице товара*/
add_filter('cart_button_product_page','edit_salebutton_ufm',10);
add_filter('salebutton_ufm','edit_salebutton_ufm',10);
function edit_salebutton_ufm($button){
    global $post,$User_Access;
    if($User_Access) return $button;

    $id_account = get_post_meta($post->ID,'wppay-access',1);
    if(!$id_account) return $button;

        return '';

}
/*Выводим надпись VIP на кнопке товара*/
add_filter('rcl_cart_button','add_vip_button',10,2);
function add_vip_button($button,$prod_id){
    global $User_Access;
    if($User_Access) return $button;

    $id_account = get_post_meta($prod_id,'wppay-access',1);
    if(!$id_account) return $button;

    return '<a href="/vip-account/" class="no-vip"><span class="access-vip-button">VIP</span></a>';
}

1) я так понимаю что нужно ещё что то менять под свои доступы? если да подскажите где именно?
2) В поле выводятся все тарифы которые есть, как оставить те какие надо?

Вы не можете просматривать опубликованные ссылки

3) для физических товаров нужно в админке переключать настройки. можно эту настройку вывести в форму? чтоб пользователь сам выбирал, какой товар он хочет опубликовать..

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
2
14:39

но не всё работает, помогите разобраться.

- так что работает, а что нет?

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
3
14:43

не выводится VIP вместо кнопки корзины

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
4
21:06

Немного разобрался, оказывается если у пользователя нет вообще никаких доступных аккаунтов, кнопка VIP на товаре отображается .
Но у меня кроме VIP есть ещё другие аккаунты.
В данном случае получается так: (К примеру у меня есть два тарифа VIP и PREMIUM оба активированы, если действие VIP закончилось а PREMIUM всё еще доступен, кнопка не будет отображаться)
как подкорректировать код чтоб другие аккаунты не мешали выводу кнопки?

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
5
13:39

По моему вопросу я так понял ответов нет? 🙄

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
6
13:42

В рамках заявленного функционала дополнения - нет.

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
7
13:57

Неужели задача не решаемая? Ведь то о чём я спрашиваю, всё присутствует на этом сайте.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
8
14:29

Если вам нужны доработки на ваш сайт, а текущий заявленный функционал не покрывает ваши потребности и вам нужно расширить его - создаем задание на бирже

Вы не можете просматривать опубликованные ссылки

- кто заинтересуется и свободен, откликнется.

Увы времени разработчика не хватает обрабатывать ваши задачи по не заявленному функционалу. Сейчас он занят.

p.s. работу в связке с этим дополнением и плагином я не знаю - поэтому порекомендовать и помочь больше ничем не смогу.

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
9
14:45

Расширение это понятно, что на биржу. Но для начала мне нужно сделать хотя бы как здесь на сайте чтоб работало, а он не работает как надо.
Кнопка VIP выводится, да я добился этого, но при этом цена пропала

Вы не можете просматривать опубликованные ссылки

при переходе к описанию также нет ни кнопки ни цены

Вы не можете просматривать опубликованные ссылки

P.s
(Версии плагинов и дополнений последние)

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
10
15:35

Здесь как работает - многое кастомное и писалось под этот сайт, и тут даже версия реколл не та, что вы пользуетесь а новая экспериментальная, которая еще не вышла. И поддерживается все это разработчиком этого сайта. Как вы хотите добиться того же самого - если это не входит в базовый функционал товара? - тоже не понятно. Кастомные решения которые вы нашли - кто даст гарантию что они рабочие? И поддерживать их в актуальном состоянии -тоже нет гарантии.

Ждите тогда ответа автора дополнения. А то уже флуд пошел.

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
11
10:55

Подскажите какой файл отвечает за вывод кнопки корзины на странице публикации товара?

Вы не можете просматривать опубликованные ссылки
0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
12
10:58

Если у вас вопрос по магазину - создавайте в той ветке форума новую тему.
Если продолжите здесь - я вынужден буду закрыть эту тему

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
13
11:11

Вообще это относится к этой теме, я пытаюсь отредактировать файл который отвечает за вывод корзины, чтоб закрыть его кнопкой VIP
Только пока не понял какой файл править

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
14
11:17

Я поиском по файлам нашел 2 места

Вы не можете просматривать опубликованные ссылки
1
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
15
12:14

Разобрался как закрыть кнопкой VIP чтобы не конфликтовал с другими аккаунтами

/*Выводим надпись VIP на кнопке товара*/
add_filter('rcl_cart_button','add_vip_button',10,2);
function add_vip_button($button,$prod_id){
global $User_Access;
if ( isset($User_Access[ID аккаунта которым хотим закрыть]) ) return $button;
$id_account = get_post_meta($prod_id,'wppay-access',1);
if(!$id_account) return $button;
return '

Вы не можете просматривать опубликованные ссылки

';
}

вот с выводом цены не получается.http://joxi.ru/82QWLnLUjpJWPr
помогите, что нужно добавить в код чтоб отображалась цена?

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
16
12:18

Вы не можете просматривать опубликованные ссылки

выводите стандартной ВП функцией get_post_meta

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
17
12:46

Спасибо за подсказку, теперь это всё нужно указать в одной функции, перепробовал кучу вариантов, не выходит почему то
вот один из них. что не так делаю?

/*Выводим надпись VIP на кнопке товара*/
add_filter('rcl_cart_button','add_vip_button',10,2);
function add_vip_button($button,$prod_id){
    global $User_Access;
    if ( isset($User_Access[7]) ) return $button;
    $id_account = get_post_meta($prod_id,'wppay-access',1);
    if(!$id_account) return $button;
$price = get_posts_meta($prod_id,'price-products',1);
$price =(!$price) ? 0 : $price;
return $price;
    return '<a href="/vip-account/" class="vip-access-button recall-button"><i class="fa fa-diamond" aria-hidden="true"></i>VIP</a>';
}

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
18
13:00

$prod_id содержит id записи?
потом:

$price = get_posts_meta($prod_id,'price-products',1);

$price - распечатывали? Что в ней?

Если id записи неверный передаете - конечно ничего не будет

p.s. второй return работать не будет. У вас ошибка

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
19
14:34

Цену вывел, только она без знака валюты

Вы не можете просматривать опубликованные ссылки

наверно это не самый правильный вариант, помогите скорректировать код
какой атрибут использовать чтоб цена выводилась вместе со знаком?

/*Выводим надпись VIP на кнопке товара*/
add_filter('rcl_cart_button','add_vip_button',10,2);
function add_vip_button($button,$prod_id){
global $User_Access;
if ( isset($User_Access[7]) ) return $button;
$id_account = get_post_meta($prod_id,'wppay-access',1);
if(!$id_account) return $button;
$price = get_post_meta($prod_id,'price-products',1);
$price = apply_filters('rcl_get_number_price',$price,$prod_id);
$price = (!$price) ? "Бесплатно!" : $price;
echo $price;
return'<a href="/vip-account/" class="vip-access-button recall-button"><i class="fa fa-diamond" aria-hidden="true"></i>VIP</a>';
}

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
20
15:13

Вот же

Вы не можете просматривать опубликованные ссылки

ставьте любой значок
И поглядывайте вы через вебинспектор браузера - как выводится в html странице - многое сразу прояснится

0
Aleks
не в сети 1 год
На сайте с 06.04.2016
Участник
Тем 68
Сообщения 330
21
15:52

Otshelnik-Fm сказал(а)

Вот же

Вы не можете просматривать опубликованные ссылки

ставьте любой значок
И поглядывайте вы через вебинспектор браузера - как выводится в html странице - многое сразу прояснится

это я знаю как поставить, только вот что получается с этого

Вы не можете просматривать опубликованные ссылки

если ставлю иконку, то возле слова "Бесплатно" она тоже выводится.

/*Выводим надпись VIP на кнопке товара*/
add_filter('rcl_cart_button','add_vip_button',10,2);
add_filter('null_price','rcl_get_null_price_content',10);
function add_vip_button($button,$prod_id){
global $User_Access;
if ( isset($User_Access[7]) ) return $button;
$id_account = get_post_meta($prod_id,'wppay-access',1);
if(!$id_account) return $button;
$price = get_post_meta($prod_id,'price-products',1);
$price = apply_filters('rcl_get_number_price',$price,$prod_id);
$price = (!$price) ? '<span class="price-prod no-price" itemprop="price" content="0">'.__('Free','wp-recall').'!</span>' : $price;
echo $price; echo ' <i class="fa fa-usd"></i>';
return'<a href="/vip-account/" class="vip-access-button recall-button"><i class="fa fa-diamond" aria-hidden="true"></i>VIP</a>';
}

здесь надо именно целиком атрибут выцепить который отвечает за всё вместе и вставить вместо этого: $price; echo ' <i class="fa fa-usd"></i>';
А именно если товар бесплатный то и слово "Бесплатно" должно быть без знака валюты как это происходит при обычном не закрытом товаре.

0
Вова (Otshelnik-Fm)
не в сети 1 день
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
22
16:11

Я не буду вас учить работе с php - но ретурн и эхо - это изврат.
Делайте проверку - нет цены или ноль - не выводите значок.

Если вам нужны доработки на ваш сайт, а текущий заявленный функционал не покрывает ваши потребности и вам нужно расширить его - создаем задание на бирже

Вы не можете просматривать опубликованные ссылки

- кто заинтересуется и свободен, откликнется.

0
Тема закрыта. Публикация новых сообщений запрещена.