Писать на форуме DIAFAN.CMS могут только зарегистрированные пользователи. Войдите или зарегистрируйтесь.
Отличие вставки товаров в блоке
-
23 апреля 2018 г.
-
Раньше в файл shop.view.show_block.php
была вот такая интеграция с выводом товаро
Код//товары в разделе
if (!empty($result["rows"]))
{
echo '<div class="shop-pane column3">';
echo $this->get('rows','shop',$result);
echo '</div>';
}
и можно было легко варьировать шаблонами, типа $this->get('rows_block','shop',$result);
в последней версии уже товары выводятся по другому
Код//товары в разделе
if(! empty($result["rows"]))
{
echo '<div class="shop-pane">';
echo $this->get($result["view_rows"], 'shop', $result);
echo '</div>';
}
Как в этом случае подключать новый шаблон оформления? -
-
-
-
23 апреля 2018 г.
-
Тоже кстати с этим столкнулся.
Оставил старый кусок кода -
-
-
-
23 апреля 2018 г.
-
Это понятно, но ведь не зря новую конструкцию ввели, для скорости или еще для чего
-
-
-
-
23 апреля 2018 г.
-
а в модельке опять же идет присвоение
Код$this->result["view_rows"] = 'rows';
-
-
-
-
23 апреля 2018 г.
-
Это получается модельку нужно править будет?
Такое же присвоение дописывать в нее? -
-
-
-
24 апреля 2018 г.
-
да хз, проще использовать старую конструкцию, пока от Диафана рекомендаций не будет :)
-
-
-
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
А какая между ними разница?Цитатада хз, проще использовать старую конструкциюget() никто не переписывал. Нюансы, конечно, появилилсь.Код
echo echo $this->get($result["view_rows"], 'shop', $result);
echo $this->get('rows','shop',$result); -
-
-
-
- Denis (Drachoon)
- 154
-
24 апреля 2018 г.
-
Разница лишь в том что константу (например 'rows') заменили на элемент массива, который может содержать это значение ($result["view_rows"] = 'rows'), а может и другое в зависимости от того что в него положили выше по коду.
-
-
-
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
ЦитатаА какая между ними разница?
Код
echo echo $this->get($result["view_rows"], 'shop', $result);
echo $this->get('rows','shop',$result);
разница в том что раньше такая конструкция работалаКодecho $this->get('rows_bla_bla_bla','shop',$result);
а сейчас как такое вывести?- не работаетКодecho $this->get($result["view_rows_bla_bla_bla"], 'shop', $result);
-
-
-
-
- Denis (Drachoon)
- 154
-
24 апреля 2018 г.
-
а так?Код
$result["view_rows"] = 'view_rows_bla_bla_bla';
echo $this->get($result["view_rows"], 'shop', $result); -
-
-
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
Александр, даже не смешно. В get() передаются параметры. Один из них ранее был строкой (явно), а теперь - значением массива (переменной), в которой передаётся та же самая строка . Кто мешает прописать там строку? Или переназначить, как привёл пример Денис.Цитатаа сейчас как такое вывести?
Там другой момент куда более важен - если переназначить таким образом, то кнопка "Показать ещё" выведет порцию товаров следующей страницы пагинатора через шаблон, определённый в модели (т.е. через rows).
Если бы вас это интересовало, то да - вопрос интересный. А обсуждать (разработчикам) почему в get() параметр в виде переменной вместо строки и как жить дальше теперь - перебор.
-
-
-
-
24 апреля 2018 г.
-
Ребята из диафана, все ходите вокруг да около...
Какая то жесть из кода и куча догадок сообщества.)
Вопрос простой был изначально. Раньше было можно так. - разные rows. Сейчас как тоже самое сделать в рамках нововведения и чтобы все работало? Может быть планируется анонс или подобное?
Если нет и не планируется, вообще непонятно как так получается. Вышло обновление, а информацию по нему приходится клещами вытаскивать.. -
-
Поблагодарили: Евгений (mbytez)
-
-
-
25 апреля 2018 г. , редакция: 25 апреля 2018 г.
-
Лично я смотрю как развивается дискуссия. Что кому понятно, что нет. В данном случае это становится видно как нельзя лучше. Я уже много раз говорил, что верстальщик. Но некоторые моменты (вопросы) даже меня удивили. Никогда бы не подумал, что это нужно пояснять. А выходит, что надо.ЦитатаРебята из диафана, все ходите вокруг да около...
Значит оно будет объяснено в той степени, в которой оно того требует.
Виталий программист. Он изложил всё доступно и понятно (в его понимании). Что непонятно, можно посмотреть в документации или файл открыть глянуть. Он не сидит сутками на форуме, поэтому не отвечает на каждое сообщение. Было время - прокомментировал.
Понятно, что оно многим непонятно. Понятно, что это информационный пробел, такой же как с "Отзывами". Это всё закроется, но не прям вот сейчас. Все же в курсе, что и меня и Виталия в штат взяли буквально вчера. Нужно время, чтобы войти в курс дела, решить рабочие моменты и т.д..
Это и сейчас можно. Единственная проблема - то, что кнопка "Показать ещё" вернёт при старых переопределениях шаблонов данные в дефолтный шаблон rows.ЦитатаВопрос простой был изначально. Раньше было можно так
Но это только в том случае, если старый сложившийся сайт был обновлён и на нём включили эти галки. Во всех остальных случаях всё по-старому.Комментарии по этому вопросу будут.ЦитатаМожет быть планируется анонс или подобное? -
-
-
-
25 апреля 2018 г.
-
Павел, спасибо за пояснения.
-
-
-
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
Все так же. В моделе модуля идет определение переменной $result["view_rows"]ЦитатаКак в этом случае подключать новый шаблон оформления?
Попробую пояснить на примере. Возьмем файл shop.model.php. В этом файле возьмем функцию вывода списка товаров. В указанной функции определяется представление списка, например,Кодpublic function list_()
. То есть представление в данном случае определено в файле shop.view.list.php. Далее представление уже элементов в списке, как было ранее, жестко определялось в shop.view.list.php. Теперь же этой жесткости нет. В той же функцииКод$this->result["view"] = 'list';
можно изменить как основное представление, так и представление списков исходя из каких-либо условий (т.е. не трогая основное представление). Для этого нужно лишь изменить значение, например,Кодpublic function list_()
То есть представление элементов списка определено в shop.view.rows.php.Код$this->result["view_rows"] = 'rows';
Все верно. Такой подход позволяет легко решить множество вопросов. Например, во время отработки ajax в action можно изменить не только основное представление, но и представление списка элементов не плодя полукопии основного представления.ЦитатаЭто понятно, но ведь не зря новую конструкцию ввели, для скорости или еще для чего
Как практический пример, то такой подход используется в реализации кнопки "Показать еще". Для этого в настройках модуля активируем соответствующий пункт и на странице списка элементов появиться кнопка "Показать еще". Нажав такую кнопку список элементов на странице дополниться еще одной партией списка, сменив пагинацию и url-адрес без перезагрузки самой страницы. -
-
Поблагодарили: Михаил (ZzzBep), Denis (Drachoon)
-
-
-
24 апреля 2018 г.
-
Виталий, вы все подробно расписали. Спасибо.
А попроще можно?
Т.е. чтобы подключить новый шаблон, я должна залезть в модельку и написать там новое значение типа
Код$this->result["view_rows"] = 'rows_new';
После чего создаю новый шаблон и заливаю его на сайт.
Я правильно рассуждаю? -
-
-
-
- Степан (idxdoc)
- 334
-
24 апреля 2018 г.
-
На сколько я понял просто дописываем свой шаблон.Код
echo $this->get($result["view_rows_my_theme"], 'shop', $result);
-
-
-
-
24 апреля 2018 г.
-
Да, но без добавления доп.строки в модельке он ведь не будет обрабатываться? Или у меня "лыжи не едут"?
-
-
-
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
Следствие покажет. Проще всего взять да попробовать.
-
-
-
-
24 апреля 2018 г.
-
Не совсем проще. Если только лицуху в Тп покляньчить для тестов
-
-
-
-
24 апреля 2018 г.
-
Зачем? Локальный сервер, ничего больше не надо.
-
-
-
-
24 апреля 2018 г.
-
Ага. Нет, спасибо. Мы уж как-нибудь так тогда...
-
-
-
-
24 апреля 2018 г.
-
Такое ощущение, что я что-то неприличное предложил.
-
-
-
-
24 апреля 2018 г.
-
ЦитатаТакое ощущение, что я что-то неприличное предложил.
Не, просто в свое время ковырялась. Мне эта кухня так жутко не понравилась: засирание компа + тормоза + половина потом на хосте не пашет + настройки муторные...
Короче, мне проще прямо на хосте ковыряться. Удобнее.
П.С. Считайте это моим личным бзиком. -
-
-
-
25 апреля 2018 г.
-
Дык, Вы же используете поддомены лицензий, в чем проблема?
-
-
-
-
24 апреля 2018 г.
-
После такого сообщения я просто не могу не пригласить вас в секту пользователей правильно локального сервера. А по поводу- подраздел "Привилегии и возможности партнера" соответствующей памятки в помощь. С учётом того, что лицензия распространяется на все поддомены третьего уровня, партнёрской NFS-лицензии Вам вполне хватит на любые задачи.ЦитатаЕсли только лицуху в Тп покляньчить для тестов
-
-
-
-
24 апреля 2018 г.
-
Цитатане могу не пригласить вас в сектуЦитатаП.С. Считайте это моим личным бзиком.
А проще: у меня комп ляжет с виртуалкой.
Цитата"Привилегии и возможности партнера"
Спасибо. Знаю. Но пока язык не поворачивается просить. -
-
-
-
24 апреля 2018 г.
-
Так это же не одолжение, а привилегия. Надо не просить, а требовать.ЦитатаСпасибо. Знаю. Но пока язык не поворачивается просить.
-
-
-
-
25 апреля 2018 г.
-
-
-
-
- Denis (Drachoon)
- 154
-
24 апреля 2018 г.
-
Ребята в настройках модуля админки выбираете другой шаблон, который надо использовать для вывода: списка, главной страницы и элемента. Всё к чему такие сложности. Всё же сделано.
Не, если вы сами разрабатываете модуль и не вывели выбор шаблона, то да необходимо вот так заморачиваться. -
-
-
-
24 апреля 2018 г.
-
Тут дело не в этом
Если выводятся блоки на главной, в карточке и у всех разное оформление, то для всех не выбрать
Вариант Степана не работает -
-
-
-
- Denis (Drachoon)
- 154
-
24 апреля 2018 г.
-
Ну почему если засетит $result["view_rows_my_theme"] то получится.
Да для блока надо своё имя шаблона установить. Такого в настройках помоему я не видел. -
-
-
-
24 апреля 2018 г.
-
пробовал делать так - не работало
название вывода списка было сделано ...rows_my_theme.php -
-
-
-
-
24 апреля 2018 г.
-
К примеру есть блоки на главной, блоки в карточке, вывод листинга в 3,4 колонки и тд (разные rows используются). В админке можно выбирать какой шаблон (и соответственно какой rows ему выводить) к какой категории соотнести.
Как теперь все это дело обрабатывать, я не очень понял. неужели в модель лезть надо.. -
-
-
-
-
24 апреля 2018 г.
-
Не совсем понятно, в чём гибкость? Или не понял сути, может быть, но всё же, если мне нужно в одном шаблоне страницы вывести список "list_one", я отправляюсь в модель, и меняю присвоение значения переменной:Код
$this->result["view"] = 'list';
наКод$this->result["view"] = 'list_one';
А на другом шаблоне, я хочу использовать список другого вида "list_two".
Опять идём в модель, и что делаем? -
-
-
-
- Dmitry (weissfl)
- 161
-
24 апреля 2018 г. , редакция: 24 апреля 2018 г.
-
Как я понял, можно использовать старую конструкцию в большинстве случаев.
А вот в случае с кнопкой "показать еще", кнопка перестаёт работать. В общем то это логично исходя из объяснений Виталия NVGPRO выше.
Что с этим делать в случае если нужны разные шаблоны shop.view.rows (хотя это не такой частый случай, как мне кажется) и одновременно кнопка "показать еще", тоже хотелось бы понять. -
-
-
-
24 апреля 2018 г.
-
Не знаю как у вас, Дмитрий, а у меня, примерно в 80% проектов используются разные shop.view.rows, shop.view.list и др.
Поэтому, весьма актуально пояснение по использованию. Это один момент.
Второй, это то, что после правки модель улетит в custom, или создавать придётся shop.model.custom.php. -
-
-
-
- Степан (idxdoc)
- 334
-
24 апреля 2018 г.
-
Тоже часто использую разные.
Либо мы чего то не понимаем и нужно ждать официальной версии :)
Либо что-то как то не очень сделали в итоге, не удобно. -
-
-
-
-
24 апреля 2018 г.
-
Пробовал как только вышло обновление и увидел данные изменения.
Со старой конструкциейКодecho $this->get('rows', 'shop', $result);
Работает кнопка "показать еще" -
-
-
-
- Dmitry (weissfl)
- 161
-
24 апреля 2018 г.
-
Конечно работает, ведь в сущности $result["view_rows"] и содержит в себе значение rows
-
-
-
-
-
24 апреля 2018 г.
-
Не перестаёт, а выводит данные в шаблон, который определён в модели, а не во вьюхе.ЦитатаА вот в случае с кнопкой "показать еще", кнопка перестаёт работать.
-
-
-
-
24 апреля 2018 г.
-
Это что? Весеннее обострение у всех?
Изменили статический атрибут у функции на динамический (которым теперь можно управлять из модели) - паника на корабле.
-
-
-
-
24 апреля 2018 г.
-
Никакой паники нет. С чего вы взяли?
Просто обсуждение уже второй день идет, но до сих пор неясно: как же это использовать. -
-
-
-
24 апреля 2018 г.
-
Паника на корабле из-за того, что ранее этим атрибутом можно было управлять напрямую из шаблона. А как теперь этим же атрибутом управлять опять же из шаблона - не пояснили. А модель - штука более нежелательная с т.з. кастомизации, нежели шаблон view.Цитатапаника на корабле.
-
-
-
-
25 апреля 2018 г. , редакция: 25 апреля 2018 г.
-
Я единственную проблему вижу, что теперь, чтоб узнать какой шаблон для вывода используется, то нужно сделать дополнительное действие. Ну это, конечно, субъективно.
Видимо, лучшим вариантом будет дополнить дефолтовые шаблоны комментами с указанием шаблона по умолчанию, чтоб не пугать отправками в модель. -
-
-
-
25 апреля 2018 г.
-
Да, вот такая конструкция работает.
Код//товары в разделе
if(! empty($result["rows"]))
{
echo '<div class="shop_block_list"><div class="row">';
$result["view_rows"] = 'rows_block';
echo $this->get($result["view_rows"], 'shop', $result);
echo '</div></div>';
} -
-
-
-
- Dmitry (weissfl)
- 161
-
25 апреля 2018 г.
-
А что мешает просто написать так?Код
echo $this->get(rows_block, 'shop', $result);
Ведь в сущности это то же самое, просто в вашем примере вы сначала меняете значение в массиве, а потом его выводите оттуда. -
-
-
-
25 апреля 2018 г.
-
Ну Виталий NVGPRO (DIAFAN.CMS) написал же, что значение $result["view_rows"] участвует в работе кнопки "Показать еще" и если значение не будет определено $result["view_rows"] = 'rows_block';, то, при нажатии на кнопку "Показать еще" будет подгружаться не нужный нам шаблон rows_block, а стандартный row и верстка поплывет.
-
-
-
-
25 апреля 2018 г. , редакция: 25 апреля 2018 г.
-
Либо вот так
Код//товары в разделе
if(! empty($result["rows"]))
{
echo '<div class="shop_block_list"><div class="row">';
$result["view_rows"] = 'rows_block';
echo $this->get('rows_block', 'shop', $result);
echo '</div></div>';
} -
-
-
-
25 апреля 2018 г. , редакция: 25 апреля 2018 г.
-
Я уже писал выше - оно работало как и работает. get() принимает стандартный набор параметров. Ему без разницы что туда придёт - строка, переменная $result["view_rows"] или переопределённая чуть выше переменная $result["view_rows"].ЦитатаЛибо вот так
Проблемы у этого способа начнутся, когда вы воспользуетесь кнопкой "Показать ещё". Потому что show_more вернёт данные, используя шаблон rows, который указан в модели, а не тот, который указан во вьюхе.
Виталий позже даст комментарии на этот счёт. -
-
-
-
-
25 апреля 2018 г. , редакция: 25 апреля 2018 г.
-
- "Что то я очкую обновляццо"
(С) Наша Раша. ТНТ -
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
ЦитатаВиталий позже даст комментарии на этот счёт.
Попробую разъяснить некоторые моменты, по которым возникают вопросы.
Возьмем в качестве примера модуль "Интернет-магазин", а именно вывод списка товаров. И так, сами данные для списка товаров генерирует public function list_() (modules/shop/shop.model.php). В указанной функции задается значениеТакое значение в последующем будет использовано в представлении (modules/shop/views/shop.view.list.php) следующим образом:Код$this->result["view_rows"] = 'rows';
Так как в моделе модуля было определено, что $this->result["view_rows"] = 'rows';, то выражение $this->get($result["view_rows"], 'shop', $result); будет равно следующему:Код//вывод списка товаров
if(! empty($result["rows"]))
{
//вывод сортировки товаров
if(! empty($result["link_sort"]))
{
echo $this->get('sort_block', 'shop', $result);
}
echo '<div class="shop-pane">';echo $this->get($result["view_rows"], 'shop', $result);
echo '</div>';
}Таким образом обеспечена обратная совместимость с ранее сделанными наработками. И если в своих шаблонах Вы оставите примерно вот такое (как было ранее):Кодecho $this->get('rows', 'shop', $result);
То ничего страшного не произойдет. Все будет работать так, как и задумывалось Вами ранее.Код//вывод списка товаров
if(! empty($result["rows"]))
{
//вывод сортировки товаров
if(! empty($result["link_sort"]))
{
echo $this->get('sort_block', 'shop', $result);
}
echo '<div class="shop-pane">';echo $this->get('rows', 'shop', $result);
echo '</div>';
}
Если же в представлении Вы используете, например, другое указание для вывода элементов в списке:То так же ничего страшного не произойдет за исключением. Например, при отработке нажатия кнопки "Показать еще" будет использован шаблон, указанный в $this->result["view_rows"] = 'rows';, что вызовет расхождения в логике отображения элементов списка.Кодecho $this->get('rows_xxx', 'shop', $result);
Если Вам не требуется функционал кнопки "Показать еще" или иной функционал, завязанный на $this->result["view_rows"], то можно ничего не менять и действовать по старому. Если же требуется, то правильным будет определение такого значения в модели. Например, выдержка из кастомизированного файла shop.model.custom.php:Таким образом можно легко переопределить значение, не переопределяя весь код функции.Код/**
* Генерирует данные для списка товаров
*
* @return void
*/
after public function list_()
{
$this->result["view_rows"] = 'rows_xxx';
}
Возможно в последующем, если это будет нужным, данное направление будет усовершенствовано и определение такого значения будет выведено в административную часть сайта. Тогда в моделе не потребуется, что либо дописывать. -
-
Поблагодарили: Степан (idxdoc)
-
-
-
27 апреля 2018 г.
-
Повторю свой вопрос: как быть, если необходимо использовать не один вариант изменённого вывода списка - "rows_one", "rows_two" и т. д. ?
Для этого не подойдёт решение, создавать кастомное вкрапление в функцию модельки.
Будет ли работать вариант присвоения (переопределения) значения в shop.view.list.phpКод
//вывод списка товаров
if(! empty($result["rows"]))
{
//вывод сортировки товаров
if(! empty($result["link_sort"]))
{
echo $this->get('sort_block', 'shop', $result);
}
echo '<div class="shop-pane">';
$result["view_rows"] = 'rows_one';
echo $this->get($result["view_rows"], 'shop', $result);
echo '</div>';
}
Соответственно, в другом варианте:Код
//вывод списка товаров
if(! empty($result["rows"]))
{
//вывод сортировки товаров
if(! empty($result["link_sort"]))
{
echo $this->get('sort_block', 'shop', $result);
}
echo '<div class="shop-pane">';
$result["view_rows"] = 'rows_two';
echo $this->get($result["view_rows"], 'shop', $result);
echo '</div>';
} -
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
Цитатаиспользовать не один вариант изменённого вывода списка - "rows_one", "rows_two" и т. д. ?
То есть Вы в одном представлении списка элементов (shop.view.list.php) задействуете разные варианты представлений вывода элементов в списке? Если так, то важно понимать, что те значения, которые Вы присвоите $this->result["view_rows"] в представлении, модель модуля об этом не узнает. Поэтому, например, та же кнопка "Показать еще" будет использовать значение $this->result["view_rows"], которое было определено в модели.
В самом представлении вывода списка товаров Вы можете использовать как варианттак и вариантКодecho $this->get('rows_xxx', 'shop', $result);
Разница в таких вариантах в том, что при втором варианте в представление элементов списка придет измененное значение $this->result["view_rows"].Код$this->result["view_rows"] = 'rows_xxx';
echo $this->get($this->result["view_rows"], 'shop', $result);
Если Вы переопределили $this->result["view_rows"] в представлении, то, например, для того, чтобы задействовать функционал кнопки "Показать еще" Вам будет необходимо внести изменения в логику ее action, что тоже очень легко. Или не изменять логику, если не нужен такой функционал. -
-
-
-
27 апреля 2018 г.
-
ЦитатаТо есть Вы в одном представлении списка элементов (shop.view.list.php) задействуете разные варианты представлений вывода элементов в списке?
Не совсем это имел в виду, Виталий.Не в одном представлении списка элементов.
Обычно, для вывода разных вариантов списка, я создаю отдельный шаблон вывода, например, "shop.view.list_one.php", "shop.view.list_two.php". И уже в них, соответственно используюКод
echo $this->get('rows_xxx', 'shop', $result); -
-
-
-
27 апреля 2018 г.
-
Так присвойте такие значения в моделе, как я показал чуть ранее в своем сообщении.Код
/**
* Генерирует данные для списка товаров
*
* @return void
*/
after public function list_()
{
$this->result["view_rows"] = 'rows_xxx';
} -
-
-
-
27 апреля 2018 г.
-
Владимир правильно спрашивает. Я в большинстве случаев использую разные вьюшки. Особенно когда закладываешь возможности на будущее. К примеру делаем выводы списком в 3 колонки, в 4 колонки, таблицей и тд. Для этого создаем list_1, list_2, list_3 и тд. А в них уже определяем rows. Дальше у клиента есть возможность выбрать из админки любой шаблон для списка, вплоть до выбора для каждой категории.
Теперь получается вывод жестко привязан к модельке. Я понимаю, что можно иcпользовать старый метод. Но показать еще работать будет неправильно. А так по-моему делать нельзя. Если есть стандартный функционал в коробке, он должен работать всегда. Даже когда по-началу эта функция не используется.
Собственно вопрос: с новым методом как проделать такой трюк? -
-
-
-
27 апреля 2018 г.
-
Как мне видится, решение тут назревает одно, к которому все уже привыкли и которое уже устоялось. Вместов шаблоне нужно выводить шаблонный тег, который примет параметр - название шаблона. Или просто учтёт в каком шаблоне выводится сам.Код
//Кнопка "Показать ещё"
if(! empty($result["show_more"]))
{
echo $result["show_more"];
} -
-
-
-
27 апреля 2018 г.
-
Может быть зарубим этот Показать еще и все?))) Нафига он сдался..)
Насколько я понял все из-за него. Просто раньше (исключительно на мой взгляд) было очень удобно и многофункционально с rows_ и разными list.
Теперь я вот в упор не пойму как..
Если я создам разные list а в них разные rows, так надо идти в модельку и править ее для включения-определения множественных вариаций rows(тут большой вопрос о возможности так делать)
-
-
-
-
27 апреля 2018 г.
-
Как мне видится, нужно в вышеупомянутой функции list_(), добавить значения по-умолчанию для переменных:Код
public function list_($view_list = 'list', $view_rows = 'rows')
{
$this->result["view_list"] = $view_list;
$this->result["view_rows"] = $view_rows;
}
А в самой функции, уже будет возможность переопределения значений, как-то так. -
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
Проще галку в админке не ставить да и всё. Чуть позже будет наглядный пример, либо реализация в админ-панели, которая позволит без дополнительных исправлений реализовывать поддержку работы кнопки "Показать ещё" в разных шаблонах.ЦитатаМожет быть зарубим этот Показать еще и все?))) Нафига он сдался..).
-
-
-
-
27 апреля 2018 г.
-
ЦитатаА так по-моему делать нельзя.
Сергей (universe), это уж сильная фраза. Не буду переубеждать. Но посыл Ваш понял. Донесу до разработчиков cms, может они примут решение, что данное значение также будет определяться в административной части сайта, как и шаблон list
PS: различные вариации отображения можно реализовать в одной вьюшки list и одной rows, используя лишь условия вывода. -
-
-
-
27 апреля 2018 г.
-
Виталий, "PS: различные вариации отображения можно реализовать в одной вьюшки list и одной rows, используя лишь условия вывода." - если есть варианты с полной автоматизацией через админку (клиент сам впоследствии сможет менять шаблоны и условия, не в коде) - с удовольствием ознакомлюсь.
"Сергей (universe), это уж сильная фраза. Не буду переубеждать."
А моя фраза вполне однозначна. Я правда убеджен, что при сдаче проекта клиенту, весь стандартный функционал системы должен работать как задуман. И если в админке есть кнопка включения "показать еще" - то кнопка на фронтенде должна работать. -
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
Павел, я выше описал что вариант "Проще галку в админке не ставить да и всё." вообще неприемлем и так делать нельзя. Завтра клиент поставит эту галочку, дальше нифига хорошего. Мне бы хотелось, чтобы Diafan был примером в уверенности его работоспособности. Этим диафан и силен (в умелых руках разработчиков). Когда мы что-то включаем, оно не работает, такой негатив сразу на всю систему распространяется. Не надо нам джумлы и прочих ворпрессов..) Проходили.
Про зарубить этот функционал конечно шутка, но в каждой шутке.. Рубить - так с корнями и админкой))
А что касается правки модели - ну жесть же.. Нет, разве? В реалиях системы - меньше правок (и кастомных) в моделях - лучше и проще потом.
Вполне возможно, что новое решение дает много преимуществ. Если ребята сделали так - значит должны быть причины, в ребятах я уверен. Но пока, ознакомившись поверхостно, увидел только проблемы. Может нас тут 3-4 человека, которые list и rows делают множественные... -
-
Поблагодарили: Dmitry (afonnikov10)
-
-
-
27 апреля 2018 г.
-
ЦитатаМожет нас тут 3-4 человека
Думаю, что больше.
Список товаров в категории - это один вид.
Список товаров в сопутствующих - это другой вид.
Список товаров на странице поиска товаров - это третий вид.
И т.д.
У меня, например, редко где используется один и тот же вывод. -
-
-
-
27 апреля 2018 г.
-
ЦитатаМожет нас тут 3-4 человека, которые list и rows делают множественные...
Больше -
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
Дополню. Чтобы переопределить action для кнопки "Показать еще", достаточно взглянуть на html-код этой кнопки (скриншот прилагается). В поле action будет указано название функцииТо есть в данном случае необходимо изменить или добавить, если ее нет, функцию list_. Cms автоматически поймет, что action для кнопки был переопределен.Код
<input type="hidden" name="action" value="list_">
Еще в дополнение. В том же html-коде можно обратить внимание на строчкуВ поле mode значение model говорит, что будет задействовано поведение, которое определено в моделе модуля. Если Вы добавите ту же функцию в action, то значение mode автоматически измениться на action. Соответственно cms задействует именно Вашу функцию в action.Код<input type="hidden" name="mode" value="model">
-
-
-
-
27 апреля 2018 г. , редакция: 27 апреля 2018 г.
-
"Чует моё сердце, шо мы накануне грандиозного шухера"
(C) Свадьба в Малиновке....
- Думаю сделают и оставят так - на сколько терпения хватить (у разработчиков), как с "сопутствующими услугами" вышло, будет Колоться - но все будут продолжать есть колючий кактус (помоему уже им и не пользуется ваапче никто....)
Пока только читаю и время глянуть что выкатили в обновлении - нет..... -
-
-
Новости
-
18 июня
-
В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
-
24 апреля
-
В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
-
12 января
-
После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке.
Блоги
-
24.04.2024
-
Выпустили новую сборку DIAFAN.CMS 7.1.4.
Блоги
-
12.01.2024
-
В данном руководстве познакомим вас с панелью управления DIAFAN.CMS