Перейти к содержимому


Фотография
- - - - -

Элемент JBPrice Plain настройка вывода модификаци1

jbprice plain

Лучший Ответ Cheren-dow , 22 October 2015 - 13:05

roma_sanbl4, попробуйте тогда в методе _getOptions закомментировать следующие строки

    protected function _getOptions($label = true)
    {
        $options = $sorted = $this->_parseOptions(false);

        if (!$this->hasOptions())
        {
            $options = $this->getJBPrice()->elementOptions($this->identifier);
        }
        elseif (!$this->showAll && $options)
        {
            $selected = $this->getJBPrice()->elementOptions($this->identifier);
            array_walk($selected, function ($value, $key) use ($options) {
                return isset($options[$key]) ? $value : null;
            });
            $options = array_filter($selected);
        }

       /* if (false !== $label && count($options))
        {
            $options = $this->app->jbarray->sortByArray($options, $sorted);
            $options = $this->app->jbarray->unshiftAssoc($options, '', $this->getLabel($label));
        }*/

        return $options;
    }
Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 8

#1 roma_sanbl4

roma_sanbl4

Отправлено 20 October 2015 - 15:01

Уважаемые коллеги, техподдержка!

ковыряю настройки      JBPrice Plain  в плане вывода модификаций.

  https://yadi.sk/i/o8C5QbBNjsPngкак убрать заголовок поля   "модификации"?

http://www.1.electro...gulyatory-trm  собственно ссылка

 


  • 0

#2 Cheren-dow

Cheren-dow

Отправлено 21 October 2015 - 22:51

roma_sanbl4, попробуйте сделать следующее, откройте файл

\media\zoo\applications\jbuniversal\cart-elements\price\option\option.php

найдите код:

    public function render($params = array())
    {
        if ($layout = $this->getLayout($params->get('layout', 'radio') . '.php')) {
            return $this->renderLayout($layout, array(
                'data' => $this->_getOptions($params->get('label', ''))
            ));
        }

        return false;
    }

И замените на:

    public function render($params = array())
    {
        if ($layout = $this->getLayout($params->get('layout', 'radio') . '.php')) {
            return $this->renderLayout($layout, array(
                'data' => $this->_getOptions(false)
            ));
        }

        return false;
    }

Должно сработать, так же возможна не верная работа некоторых элементов из-за данного хака.


Сообщение отредактировал Cheren-dow: 21 October 2015 - 22:52

  • 0
Изображение
 

#3 roma_sanbl4

roma_sanbl4

Отправлено 22 October 2015 - 11:36

roma_sanbl4, попробуйте сделать следующее, откройте файл

\media\zoo\applications\jbuniversal\cart-elements\price\option\option.php

найдите код:

    public function render($params = array())
    {
        if ($layout = $this->getLayout($params->get('layout', 'radio') . '.php')) {
            return $this->renderLayout($layout, array(
                'data' => $this->_getOptions($params->get('label', ''))
            ));
        }

        return false;
    }

И замените на:

    public function render($params = array())
    {
        if ($layout = $this->getLayout($params->get('layout', 'radio') . '.php')) {
            return $this->renderLayout($layout, array(
                'data' => $this->_getOptions(false)
            ));
        }

        return false;
    }

Должно сработать, так же возможна не верная работа некоторых элементов из-за данного хака.

Что-то и фигушки. ни какой реакции даже после сброса кеша... вроде код тот туда и вместо того вставил)))


  • 0

#4 Cheren-dow

Cheren-dow

Отправлено 22 October 2015 - 13:05   Лучший Ответ

roma_sanbl4, попробуйте тогда в методе _getOptions закомментировать следующие строки

    protected function _getOptions($label = true)
    {
        $options = $sorted = $this->_parseOptions(false);

        if (!$this->hasOptions())
        {
            $options = $this->getJBPrice()->elementOptions($this->identifier);
        }
        elseif (!$this->showAll && $options)
        {
            $selected = $this->getJBPrice()->elementOptions($this->identifier);
            array_walk($selected, function ($value, $key) use ($options) {
                return isset($options[$key]) ? $value : null;
            });
            $options = array_filter($selected);
        }

       /* if (false !== $label && count($options))
        {
            $options = $this->app->jbarray->sortByArray($options, $sorted);
            $options = $this->app->jbarray->unshiftAssoc($options, '', $this->getLabel($label));
        }*/

        return $options;
    }

  • 0
Изображение
 

#5 roma_sanbl4

roma_sanbl4

Отправлено 22 October 2015 - 13:59

что-то и это решение не помогает


  • 0

#6 Cheren-dow

Cheren-dow

Отправлено 22 October 2015 - 14:13

roma_sanbl4, вы что то делаете не правильно, т.к это решение я проверил у себя на локальном сайте


  • 1
Изображение
 

#7 roma_sanbl4

roma_sanbl4

Отправлено 22 October 2015 - 14:28

 а можете кинуть ваш файлик?  вроде копировал все куда указывали


  • 0

#8 roma_sanbl4

roma_sanbl4

Отправлено 22 October 2015 - 14:46

внимательно вот все с начала по инструкции в исходный файлик и............... фигушки)


  • 0

#9 roma_sanbl4

roma_sanbl4

Отправлено 23 October 2015 - 12:49

Cheren-dow, действительно я был не внимателен. вроде сейчас все как надо. Попробую потестить, посмотрю будут ли баги
  • 0





Темы с аналогичным тегами jbprice plain

Click to return to top of page in style!