Перейти к содержанию
Официальный форум поддержки Simpla

phukortsin

Фрилансер
  • Публикаций

    1412
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные phukortsin

  1. 23 часа назад, megauser сказал:

    Такой вопрос, как можно сделать так, чтоб я сделал

    Обращаться к этому "я", чтобы он выполнил все требующееся.

    А если серьезно, то реализовывать весь нужный функционал, в том числе "каждый раз бегать по товарам и смотреть свойство высота". Фактически требуются взаимосвязанные списки для выбора, подобное часто делается в магазинах автозапчастей, когда по шагам выбирается марка, модель, год выпуска... 

     

  2. Это работает верно для простых данных (когда в массиве $products ключи идут по порядку 0,1,2,3). А когда ключи произвольные, возникает ошибка, потому что условие ($key % 5 == 4) фактически выдает результат СЛУЧАЙНЫМ ОБРАЗОМ.

    Можно, например, не использовать $key, а вместо нее вручную формировать свою переменную.

     

  3. Могут быть десятки разных причин. Скорее всего, дело  в настройках хостинга. Simpla - система давным-давно морально устаревшая, гарантированно не работает (даже не устанавливается) на новых версиях PHP.

    Поддержка хостинга, как правило, в деталях CMS не разбирается и разбираться не должна.

    Надо индивидуально анализировать и исправлять ситуацию. Обращайтесь в личку...

  4. 1 час назад, get31 сказал:

    Почему в шаблоне связанный товар отображается на всех товарах? а не для каждого свой (если есть связанные товары)?

    Видимо, потому что автор так запрограммировал. 

    По тому, что предоставлено, видно что они В ПРИНЦИПЕ не могут отображаться "для каждого свой", поскольку автор их свалил в одну кучу в одной переменной без  какого бы то ни было разделения.

  5. Оно и не должно работать. Если считаете, что должно, то пишите ТОЧНЫЕ объяснения, с какой стати это должно работать. Причина все та же - нужные данные в шаблон НЕ передаются.

  6. 1 час назад, get31 сказал:

    вывести где угодно "методом тыка" получается, а вот в каталоге нет....аналогичный метод а ТЫК не работает...

     

     

     

    Очень сомневаюсь, что Вы сможете это сделать "где угодно".

    И дополнительно возникает вопрос о смысле этого "где угодно". У Вас получается вывести абсолютно ВО ВСЕХ местах, кроме каталога? Все у Вас получается на главной, на странице корзины, на странице заказа, на инфостраницах, в блоге, в личном кабинете, в письмах? Может, сможете описать полностью свое рабочее решение хоть в одном из перечисленных случаев?

  7. В 09.12.2023 в 15:05, Kami сказал:

    Ну не прям объемный

    Именно объемный. В Вашем же посте вижу с ходу тому два подтверждения. Первое:

     

    В 09.12.2023 в 14:59, Kami сказал:

    Чтоб не разжевывать скинул полные файлы

    Пользователю куда удобнее иметь инструкцию в виде "в файле таком-то вставить код такой-то в место такое-то". То, что Вы в таком виде не написали, говорит о том, что это требует трудозатрат, и куда больше чем пара минут. 

    Второе:

    В 09.12.2023 в 14:59, Kami сказал:

     ищи в коде комменты 

    
    /*related_page_products*/
    
    /*/related_page_products*/

     

    Потому как если выискать только такие комменты и сделать только по ним изменения, то с гарантией работать не будет. Потому как есть еще несколько иные комменты, и даже ДВУХ типов.  Добавочно вспоминаем и тезис об аккуратности...

  8. 22 часа назад, alexivchenko сказал:

    Ой, ну поспешил и вместо simpla/ProductAdmin.php написал api/ProductAdmin.php прям надо было акцентировать. Одновременно писал инструкцию к модулю и ошибся. 

    Если такой ранимый, не будем акцентировать, а сосредоточимся на более существенном: 

    Как надо смотреть на переменную и что нужно увидеть?
    Строка 308: if(is_array($groop_products))
    Строка 453: $this->design->assign('groop_products', $groop_products);

    Как по мне, так в комментарии к ошибке все и так сказано понятно: PHP Notice: Undefined variable. 

    Надеюсь, уважаемый многостаночник в новом ответе не ошибется. И надеюсь, в той инструкции, которую писал в режиме многозадачности, не насажал ошибок. Может, стоит в той инструкции добавить примечание примерно такое: создавалось, мол, при напряженной одновременной работе над несколькими проектами, возможны ошибки и при обнаружении просьба на них внимание не акцентировать...

  9. 7 часов назад, alexivchenko сказал:

    Надо смотреть api/ProductAdmin.php 308, 453 строку что за переменная groop_products

    Оригинально - смотреть несуществующий файл...

    Ошибки, видимо, из-за перехода на новую версию PHP.

    В simpla/ProductAdmin.php надо сделать так:

    class ProductAdmin extends Simpla
    {
    	public function fetch()
    	{
    		$product = new stdclass();

    И во многих соседних файлах надо провести подобные изменения, так как весьма вероятно, что другие сущности аналогично могли стать не редактируемыми.

    Ошибка со значением поля по умолчанию тоже, скорее всего связана с изменением версии БД. И также, скорее всего, аналогичные ошибки могут наличествовать в других сущностях. Проверять надо все... И лучше решать не по каждому полю, а через общие настройки.

    Прочие ошибки носят более частный характер, но причины примерно те же...

  10. 13 часов назад, shooroop сказал:

     

    
    {if isset($product->images[$i])}
                  	{if $product->images[$i]->image_main == 1}<img src="{$product->images[$i]->filename|resize:600:600}" style="width:100%;" />{else}<img src="{$product->images[$i]->filename|resize:600:600}" style="width:100%;" />{/if}
                {/if}
      			

    Остроумно пошутил...

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

  12. 3 часа назад, get31 сказал:

    Как сделать нормальный порядок без пустого?

    Сначала надо определить ТОЧНО, что такое "нормальный порядок".

    И код надо бы выкладывать полностью, а не кусками.

    И значения  $product->images[$i]->image_main  в Simpla стандартно нет. Если свои доработки делались, то надо все нужные детали выкладывать...

    Если надо выкладывать не все изображения, а некую их часть, то лучше всего в шаблон передавать эту часть. Непосредственно в шаблоне конструировать такое хлопотно...

     

  13. <div class="items-wrap">
      {foreach $properties as $i => $property}
    	{if $i % 2}
        <div>{$property->name}</div>
        <div>{if isset($product->images[$i])}<img src="{$product->images[$i]->filename|resize:600:600}" style="width:100%;" />{/if}</div>
    	{else}
        <div>{if isset($product->images[$i])}<img src="{$product->images[$i]->filename|resize:600:600}" style="width:100%;" />{/if}</div>
        <div>{$property->name}</div>
    	{/if}
      {/foreach}
    </div>

     

  14. 4 часа назад, komolov87 сказал:

     

    Как мы видим из вопроса, авто указывает нам  ровно 15 товаров и хочет чтобы в мобильной версии у него отображались 14.
    Если бы ему нужно было более сложное условие, я думаю, он бы написал.
     

    Постановка вопроса в начальном посте такова:

    В 21.08.2023 в 21:50, keks сказал:

    Друзья! 

    Нужна помощь, требуется в мобильной версии шаблона, вывести определённое число товаров к категории, к примеру 14.

    В полноценной версии у меня 3 колонки и в админке установлено число товаров 15.

    В мобильной версии 2 колонки и получается в самом низу пустует одно место.

    Как видно из постановки,

    1. ничто не  "указывает нам  ровно 15 товаров",

    2. ничто указывает на то, что "Если бы ему нужно было более сложное условие". Ему вообще не нужно никакое условие, ему нужно изменить вывод товаров, о чем он прямо пишет.

    3. Число 15 фигурирует как параметр, задаваемый в админке. Как обычно известно работающим с Simpla, такой параметр задает ограничение числа товаров, и результат может быть не в точности 15, а НЕ БОЛЕЕ 15, в зависимости от общего имеющегося количества.

    Формально Вы, может, и правы, а по существу - надо бы стараться хоть немного о минимальном качестве своих ответов заботиться...

  15. 11 часов назад, komolov87 сказал:

    Самый простой вариант это скрыть последний товар в мобильной версии стилями.

    .itemsList li:last-child {display:none;}

    Вариант очень хороший и простой, только у него один недостаток - он неправильный. Автор упускает из виду, что товаров может быть не обязательно ровно 15, а меньше...

  16. 10 часов назад, Kami сказал:

    Ну вот проблема ресурсов решена, а вот всё равно фид грузится 5 минут ти ложится с ошибкой. То есть даже 5 минут не хватает чтоб выполнить запрос к 20 к товарам со свойствами т.д.

    Если не может обработать легкий запрос, видимо, проблема не решена.

    Еще можно попробовать для ОДНОГО товара.

    10 часов назад, Kami сказал:

    Как вы выходили из ситуации? пилить фид?

    Уже говорилось:

    В 18.08.2023 в 08:50, phukortsin сказал:

    Сначала выяснять причину (основные варианты - не хватает ресурсов MySQL или не хватает оперативной памяти сервера). А потом уже придумывать хитрости, чтобы обойти нехватку ресурсов...

    Например, если причина затыка в нехватке ресурсов MySQL, то можно выходить из положения, как намекнул shooroop - делать подряд несколько запросов с ограничением, например, по 4000 записей...

    А еще бывает такое в случае нерациональной доработки. Например, если много свойств, и их значения по одному извлекаются в цикле. А поскольку у Вас все в секрете, и в общем и целом, то гадать можно долго...

  17. Надо программировать все нужное индивидуально. Не совсем просто, так как надо отдельно обрабатывать подсчет на странице корзины и на странице заказа. А возможно, потребуется еще и в заказе в админке.

×
×
  • Создать...