DaVinci Опубликовано 7 октября, 2014 Жалоба Поделиться Опубликовано 7 октября, 2014 (изменено) В стандарной симпле адрес изображения имеет вот такой адре:http://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg?72fa7cbe766923a198b8ad7e132e5e9f Задача получить адрес без $token-наhttp://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg но при это запретить произвольную нарезку изображений тех размеров которые на заданы в настройках сайта. Размеры изображений задаются через шаблон. Потому можно запомнить необходимые размеры в настройках. в Design.php добавляем код $size = ($width?$width:0).'x'.($height?$height:0).($set_watermark?"w":''); $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ $image_sizes[] = $size; $this->settings->image_sizes = implode('|',$image_sizes); } В Image.php добавляем код $size = ($width?$width:0).'x'.($height?$height:0).($set_watermark?"w":''); $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ header("http/1.0 404 not found"); exit(); } в resize/resize.php /* if(!$simpla->config->check_token($filename, $token)) exit('bad token'); */ Более подробно смотрите на видео Смотрите другие доработки в моем профиле Хотите сказать спасибо? Вам сюда Изменено 5 апреля, 2017 пользователем DaVinci Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 7 октября, 2014 Жалоба Поделиться Опубликовано 7 октября, 2014 Забыли упомянуть про настроку - $this->settings->image_sizes В админке в разделе "Настройки" обавляем поле image_sizes, где через | (вертикальную черту) вносим все допустимые размеры, включая те, что используются в админке (50x50 и 100x100). Т.е. получится строка вида 50x50|100x100|300x300 Цитата Ссылка на сообщение Поделиться на другие сайты
DaVinci Опубликовано 7 октября, 2014 Автор Жалоба Поделиться Опубликовано 7 октября, 2014 Забыли упомянуть про настроку - $this->settings->image_sizesВ админке в разделе "Настройки" обавляем поле image_sizes, где через | (вертикальную черту) вносим все допустимые размеры, включая те, что используются в админке (50x50 и 100x100).Т.е. получится строка вида 50x50|100x100|300x300 не обязательно, потому что все изображения проходят через шаблон. задача токена запретить нарезку изображений произвольных размеров через браузер. данное решение с этим справляется. Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 7 октября, 2014 Жалоба Поделиться Опубликовано 7 октября, 2014 Очень симпатичное решение! Жаль, нельзя автору плюсик поставить... Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 7 октября, 2014 Жалоба Поделиться Опубликовано 7 октября, 2014 Да, понял Вашу задумку Извините. Просто Вы использовали системную переменную, вот и сбило с толку. Цитата Ссылка на сообщение Поделиться на другие сайты
DaVinci Опубликовано 7 октября, 2014 Автор Жалоба Поделиться Опубликовано 7 октября, 2014 Да, понял Вашу задумку Извините. Просто Вы использовали системную переменную, вот и сбило с толку. безусловно можно использовать эту настройку и даже нужно. К примеру - часто при создании шаблонов верстальщики балуются с размерами. после остается много мусора. зная размеры созданных изображений, имея соответствующий функционал, можно удалять именно те которые уже не нужны. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 7 октября, 2014 Жалоба Поделиться Опубликовано 7 октября, 2014 Насколько я понял изменения в файле api/Image.php нужны для того чтобы не было произвольной нарезки изображений? Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 8 октября, 2014 Жалоба Поделиться Опубликовано 8 октября, 2014 Еще один момент - я (не знаю как другие) порой использую конструкции без передачи высоты, т.е. что-то типа {$image->filename|resize:400}Так вышеуказанные поправки не отрабатывали - выбрасывало на 404.Выход нашел в принудительном указании нулевого размера. В файле api/Image.php (~105 строка) меняем $width = $matches[2]; // ширина будущего изображения $height = $matches[3]; // высота будущего изображения на $width = $matches[2] ? $matches[2] : 0; // ширина будущего изображения $height = $matches[3] ? $matches[3] : 0; // высота будущего изображения Цитата Ссылка на сообщение Поделиться на другие сайты
drakulitkas Опубликовано 9 октября, 2014 Жалоба Поделиться Опубликовано 9 октября, 2014 Спасибо за бесплатное решение!!! Цитата Ссылка на сообщение Поделиться на другие сайты
Karen Опубликовано 15 января, 2015 Жалоба Поделиться Опубликовано 15 января, 2015 В стандарной симпле адрес изображения имеет вот такой адре:http://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg?72fa7cbe766923a198b8ad7e132e5e9f Задача получить адрес без $token-наhttp://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg но при это запретить произвольную нарезку изображений. Размеры изображений задаются через шаблон. Потому можно запомнить необходимые размеры в настройках. в Design.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ $image_sizes[] = $size; $this->settings->image_sizes = implode('|',$image_sizes); } В Image.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ header("http/1.0 404 not found"); exit(); } Более подробно смотрите на видео Извините, а зачем убирать токен с изображений? Это как-то влияет на поисковые системы? Цитата Ссылка на сообщение Поделиться на другие сайты
swap Опубликовано 19 января, 2015 Жалоба Поделиться Опубликовано 19 января, 2015 В стандарной симпле адрес изображения имеет вот такой адре:http://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg?72fa7cbe766923a198b8ad7e132e5e9f Задача получить адрес без $token-наhttp://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg но при это запретить произвольную нарезку изображений. Размеры изображений задаются через шаблон. Потому можно запомнить необходимые размеры в настройках. в Design.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ $image_sizes[] = $size; $this->settings->image_sizes = implode('|',$image_sizes); } В Image.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ header("http/1.0 404 not found"); exit(); } Более подробно смотрите на видео А как подключить чтобы alt к картинке брался из-за заголовка товара? Цитата Ссылка на сообщение Поделиться на другие сайты
Rash Опубликовано 19 января, 2015 Жалоба Поделиться Опубликовано 19 января, 2015 А как подключить чтобы alt к картинке брался из-за заголовка товара? alt="{$product->name|escape}" Цитата Ссылка на сообщение Поделиться на другие сайты
swap Опубликовано 19 января, 2015 Жалоба Поделиться Опубликовано 19 января, 2015 alt="{$product->name|escape}" Скажите пожалуйста это куда вставлять Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 19 января, 2015 Жалоба Поделиться Опубликовано 19 января, 2015 Скажите пожалуйста это куда вставлятьВ файлы main.tpl, products.tpl, product.tpl в нужное место. Цитата Ссылка на сообщение Поделиться на другие сайты
Djep Опубликовано 19 января, 2015 Жалоба Поделиться Опубликовано 19 января, 2015 Скажите пожалуйста это куда вставлятьВставлять в Kors( пока не обернулся) или плюшевого, как Вам удобнее будет Цитата Ссылка на сообщение Поделиться на другие сайты
DaVinci Опубликовано 28 марта, 2015 Автор Жалоба Поделиться Опубликовано 28 марта, 2015 (изменено) кто поставил, отпишитесь - полезное дополнение, нет?) Изменено 28 марта, 2015 пользователем DaVinci Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 1 апреля, 2015 Жалоба Поделиться Опубликовано 1 апреля, 2015 (изменено) кто поставил, отпишитесь - полезное дополнение, нет?)Да очень полезное!!! Большое спасибо! Изменено 1 апреля, 2015 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 1 апреля, 2015 Жалоба Поделиться Опубликовано 1 апреля, 2015 + Дополнения так то, что поисковики начнут картинки хорошо индексировать, а плагины для кнопок соцсетей наконец смогут подтягивать картинку товара без лишних манипуляций. Проверено, работает. Цитата Ссылка на сообщение Поделиться на другие сайты
Денис Опубликовано 22 апреля, 2015 Жалоба Поделиться Опубликовано 22 апреля, 2015 (изменено) Спасибо, то что искал. Появился вопрос: можно ли делать картинки на выходе переименованные относительно названия товара используя чпу.Например, загрузили картинку оригинал с названием 4ec3bbe56f65a.jpg у товара Кондиционер Electrolux FVNB 50M, а на выходе получаем kondicioner_electrolux_fvnb_50m.300x300.jpg , если указали ресайз 300 на 300Если у товара множество картинок, в конце, после 50m, подставляем _2, _3, _4 и т. д. Готов поощрить. Изменено 22 апреля, 2015 пользователем Денис Цитата Ссылка на сообщение Поделиться на другие сайты
FDA Опубликовано 23 сентября, 2015 Жалоба Поделиться Опубликовано 23 сентября, 2015 кто поставил, отпишитесь - полезное дополнение, нет?)Дополнение просто супер полезное!!! Цитата Ссылка на сообщение Поделиться на другие сайты
FDA Опубликовано 25 сентября, 2015 Жалоба Поделиться Опубликовано 25 сентября, 2015 В стандарной симпле адрес изображения имеет вот такой адре:http://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg?72fa7cbe766923a198b8ad7e132e5e9f Задача получить адрес без $token-наhttp://simpla/files/products/Samsung-Galaxy-Mini-S5570.300x300.jpg но при это запретить произвольную нарезку изображений. Размеры изображений задаются через шаблон. Потому можно запомнить необходимые размеры в настройках. в Design.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ $image_sizes[] = $size; $this->settings->image_sizes = implode('|',$image_sizes); } В Image.php добавляем код $size = $width.'x'.$height; $image_sizes = array(); if($this->settings->image_sizes) $image_sizes = explode('|',$this->settings->image_sizes); if(!in_array($size, $image_sizes)){ header("http/1.0 404 not found"); exit(); } Более подробно смотрите на видео Хотите сказать спасибо? Вам сюда Только что обнаружил.При добавлении нового товара картинки не появляются.Это у меня у одного так? Цитата Ссылка на сообщение Поделиться на другие сайты
Dantey Опубликовано 2 октября, 2015 Жалоба Поделиться Опубликовано 2 октября, 2015 И ещё в карточке товара пропали изображения, а при попытке их открыть пишет "bad token" Цитата Ссылка на сообщение Поделиться на другие сайты
FDA Опубликовано 8 октября, 2015 Жалоба Поделиться Опубликовано 8 октября, 2015 Разобрался с ошибками.Забыл отредактировать файл resize/resize.php т.е. не закоментировал строки: require_once('../api/Simpla.php'); $filename = $_GET['file']; $token = $_GET['token']; $simpla = new Simpla(); /* if(!$simpla->config->check_token($filename, $token)) exit('bad token'); */ $resized_filename = $simpla->image->resize($filename); if(is_readable($resized_filename)) { header('Content-type: image'); print file_get_contents($resized_filename); } Цитата Ссылка на сообщение Поделиться на другие сайты
Dantey Опубликовано 27 октября, 2015 Жалоба Поделиться Опубликовано 27 октября, 2015 Разобрался с ошибками.Забыл отредактировать файл resize/resize.php т.е. не закоментировал строки: require_once('../api/Simpla.php'); $filename = $_GET['file']; $token = $_GET['token']; $simpla = new Simpla(); /* if(!$simpla->config->check_token($filename, $token)) exit('bad token'); */ $resized_filename = $simpla->image->resize($filename); if(is_readable($resized_filename)) { header('Content-type: image'); print file_get_contents($resized_filename); } Спасибо ЧЕЛОВЕЧИЩЕ!!! Цитата Ссылка на сообщение Поделиться на другие сайты
SeregaSobol Опубликовано 21 января, 2016 Жалоба Поделиться Опубликовано 21 января, 2016 Перестали создаваться и накладываться ватермарки на изображение при увеличении. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.