Кто-то решил идею сохранения картинок в поддиректории?

  • 21 Ответов
  • 391 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

У меня в перспективе получается более 50-100 тыс. только full_* картинок.
Сейчас ломаю голову, как их распихать по поддиректориям, т.к. хранить все в одной директории будет невозможно.
Кто-то решил идею сохранения картинок в поддиректории типа /p/i/pict.jpg ?
Есть ли возможность на JS 4 решить этот вопрос плагином или аддоном?
Подойдет, так же, хранение картинок на другом сервере.

*

Оффлайн dmitry_stas

Есть ли возможность на JS 4 решить этот вопрос плагином или аддоном?
решить в ЖШ плагином можно все :) если не 100%, то 99.99% точно. вопрос только - где он, плагин такой? насколько мне известно нет такого еще, не писали.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Оффлайн robert

IMHO, не так часто встречается любителей решать чужие идеи. Я бы назвал тему по-другому.
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.

*

Оффлайн shurakana

Не совсем понял что нужно, и что значит /p/i/?
Как то было что у каждого товара 15+ картинок, и было решено создавать директорию для каждого товара,
т.е. все фото хранились в ../p/id_товара/размер(b, m, s)/image_num.jpg

И почему "хранить все в одной директории будет невозможно."?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.

*

Оффлайн Taatshi

было решено создавать директорию для каждого товара,
т.е. все фото хранились в ../p/id_товара/размер(b, m, s)/image_num.jpg

А можно поинтересоваться как Вы это организовали в техническом плане? Тупо переопределили на уровне шаблона?


dmitry_stas, регуляркой?)
« Последнее редактирование: 28.12.2016, 23:18:30 от Taatshi »
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

решить в ЖШ плагином можно все :) если не 100%, то 99.99% точно. вопрос только - где он, плагин такой? насколько мне известно нет такого еще, не писали.
Нет такого? Буду первым!  yes!

IMHO, не так часто встречается любителей решать чужие идеи. Я бы назвал тему по-другому.
А я и не прошу за меня решать, я спросил есть ли уже готовое решение, возможно ли это в принципе, и есть ли альтернатива.

Не совсем понял что нужно, и что значит /p/i/?
Как то было что у каждого товара 15+ картинок, и было решено создавать директорию для каждого товара,
т.е. все фото хранились в ../p/id_товара/размер(b, m, s)/image_num.jpg
И почему "хранить все в одной директории будет невозможно."?
по долгосрочной перспективе картинок должно быть до полумиллиона (name, full_ и thumb_ вместе). Если вы пробовали хранить такое количество файлов, или хотя бы 100 тыс. в одной директории, как было заявлено мной, то были ли тормоза (вопрос на засыпку)? Насколько мне известно, некоторые файловые системы при записи большого кол. файлов в директорию начинают тормозить. + я хочу переопределить директории, чтобы можно было пользоваться стандартным медиа-менеджером. Как вы думаете, откроется 100000 картинок списком или плашками? :)

А можно поинтересоваться как Вы это организовали в техническом плане? Тупо переопределили на уровне шаблона?
dmitry_stas, регуляркой?)
Шаблон я трогать не хочу, хочу плагином. По памяти шаблона, могу сказать, что идея реализуема, но... Беглый взгляд на все задействованные для картинок $dispatcher->trigger не добавляют оптимизма, и наталкивают на мысль о невозможности решения, вот я и спрашиваю у сообщества. Вставлять в ядро дополнительные тригеры неохота, при первом же апе все посыпется. Правда, вот пару дней назад решал вопрос с "сопутствующими" пришлось в одном тригере объявить глобальный массив, чтобы его подхватить в тригере ниже, т.к. не все нужные параметры передавались.

В общем вопрос открыт, если есть идеи, буду рад слышать.

*

Оффлайн Taatshi

Я Вам открою секрет - не надо трогать ядро. Лучше в шаблоне добавляйте запросы. А шаблон joommshopping переопределяйте на уровне джумловского шаблона. Иначе каждое обновление может превратиться в ад, а они сейчас частенько происходят.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн dmitry_stas

Беглый взгляд на все задействованные для картинок $dispatcher->trigger не добавляют оптимизма
надо значит посмотреть не бегло :)

пару дней назад решал вопрос с "сопутствующими" пришлось в одном тригере объявить глобальный массив, чтобы его подхватить в тригере ниже, т.к. не все нужные параметры передавались.
сомневаюсь, что нужно было это делать
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Оффлайн Taatshi

Ок, ловите идею. В шаблоне

Путь к картинкам прописываем как images/shop/id_категории/id_товара И то, и другое в товаре есть. И прикручиваем какую-нибудь галерейку простенькую.

Картинки можно заливать через медиа менеджер.

Блин, почему, когда нужно было мне, я не доперла до этого?  Такой изврат устроила...  ;D
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн dmitry_stas

много всего... модули, корзина, заказ, письмо с заказом, админка, может еще что-то...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

сомневаюсь, что нужно было это делать
Мне нужны были данные по товару до и после формирования id (кстати, не проверил как будут вести себя товары при копировании, надо проверить):
function onBeforeDisplaySaveProduct($post, $product)
{
при новом товаре здесь нет его id, зато есть получаемые post-данные
}
function onAfterSaveProductEnd($product_id)
{
тут id товара уже сохраненного, но получаемые post-данные отсутствуют
}
а между ними тупо нет тригера

много всего... модули, корзина, заказ, письмо с заказом, админка, может еще что-то...
Запугали. Всего-то делов, поймать записанную картинку в базу и перезаписать там же с новым путем. РАБОТАЕТ ВИЗЬДЕ!


Путь к картинкам прописываем как images/shop/id_категории/id_товара И то, и другое в товаре есть. И прикручиваем какую-нибудь галерейку простенькую.
Картинки можно заливать через медиа менеджер.
Блин, почему, когда нужно было мне, я не доперла до этого?  Такой изврат устроила...  ;D
Маадам, перефразирую порутчика Ржесского, я до такого еще не созрел :)
Ай-ай, вы шалунишка, предложили мне заливать более 100К картинок через медиа менеджер. Мадам, снимаю шляпу перед Вашими талантами. (шучу конечно, не обижайтесь). ::цветы::

В общем вроде получается, правда кривовато смотрятся full и thumb_ папки (thumb_a/b/pict.jpg), может не поленюсь и решу.
Но, еще не спасибо и все не свободны :)

*

Оффлайн dmitry_stas

Мне нужны были данные по товару до и после формирования id
и что мешало в onBeforeDisplaySaveProduct сохранить $post в приватном свойсте плагина, а в onAfterSaveProductEnd получить его? для этого никакого хака точно не надо было. а то и вообще можно было к $_POST обратится.

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

если вас ничего не пугает - делайте, кто мешает? :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

и что мешало в onBeforeDisplaySaveProduct сохранить $post в приватном свойсте плагина, а в onAfterSaveProductEnd получить его? для этого никакого хака точно не надо было. а то и вообще можно было к $_POST обратится.
Одна голова хорошо, а две лучше.

*

Оффлайн dmitry_stas

а три - змей горыныч :) плагин делайте и выкладывайте, хватит ля-ля :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Оффлайн Taatshi

Ай-ай, вы шалунишка, предложили мне заливать более 100К картинок через медиа менеджер. Мадам, снимаю шляпу перед Вашими талантами. (шучу конечно, не обижайтесь). ::цветы::
Эммм... аббревиатура FTP Вам знакома?)

ИМХО, Вы недостаточно хорошо знакомы не только с JoomShopping, но и с самой Joomla, чтоб решать такие задачи.

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

шесть-семь тысяч, Карл! По FTP практически невозможно работать(((
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн dmitry_stas

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

а с ftp какая именно сложность? зашел только что в 16К ради теста http://prntscr.com/dp8yg7 - не особо то и сложно :) что именно проблему вызывает?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Оффлайн Linfuby

  • ******
  • 1239
  • [+]174 / [-]0
  • Всё просто...
    • Просмотр профиля
    • Разработка дополнений для JoomShopping
Если файлы заливаются по FTP, то можно использовать Импорт для сохранения путей с подпапками в БД. Правда тут есть недостаток - при каждом изменении, нужно будет делать импорт.
Хотя на мой взгляд управлять вручную 100к фото в ручном режиме - это изврат.

И вообще логичнее держать фото с подпапках производителя (alias) и именовать их с указанием артикула, тогда навигация даже по ФТП будет простой и понятной (Конечно если сформировать конкретную структуру, и лучше без идентификаторов, чтобы не зависеть от БД).

Например так:
{manufacturer_alias}/{product_alias или product_ean}/{product_image}
"apple/iphone/16GB-white-front.jpg", "apple/iphone/16GB-white-back.jpg", "samsung/galaxy/A3-gold-front.jpg"
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

Оффлайн Taatshi

а с ftp какая именно сложность? зашел только что в 16К ради теста http://prntscr.com/dp8yg7 - не особо то и сложно :) что именно проблему вызывает?
У меня ftp не шевелится вообще при таких объемах. Был как-то сайт с 20 000 имаджезов в одной директории - вирусы накидали - так я их неделю удаляла по чуть-чуть, потом плюнула и попросила хостера. После каждого удаления штук в 500 приходилось по пять минут отклика от сервера ждать. Все висит((
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн dmitry_stas

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

После каждого удаления штук в 500 приходилось по пять минут отклика от сервера ждать. Все висит((
вероятно зависит от хостера.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Оффлайн Taatshi

А если сделать путь к картинкам опцией выбора? Которую можно поставить оптом? И по умолчанию пусть она будет как сейчас. А не по умолчанию - настраивать.

Выбираем как в Wordpressе алиасы настраиваются и вуаля...
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3  /  ОТЗЫВЫ 
Минимальная ставка за платные услуги 1000 рэ Связь: telegram - Taatshi, почта - Taatshi на яндексе.

*

Оффлайн Linfuby

  • ******
  • 1239
  • [+]174 / [-]0
  • Всё просто...
    • Просмотр профиля
    • Разработка дополнений для JoomShopping
это все частный случай. не универсально совсем. что производитель, что артикул в принципе могут быть не назначены товару. а даже если и назначен, то алиас может меняться в процессе. и не понятно что делать с фотографиями - тоже перемещать?
Ну для этого я и написал "Конечно если сформировать конкретную структуру".

Если в ИМ более 100к товаров и что-то не заполнено - мне очень жаль такого предпринимателя. Сложно представить, если в заказе будет написано "Карандаши цветные" без артикула и производителя. Стоишь такой на складе и думаешь... "Где же у нас тут цветные карандаши?". "А... Вот они". "Возьму-ка я вот эти... или нет, вон те..."  :)
Немного воображения и логики, и любая проблема становится решенной.
Кривые решения - дают кривой результат!
Решения для JoomShopping
Благодарности и поддержка принимаются по след. реквизитам:
Яндекс.Деньги - 41001751720054

*

Оффлайн dmitry_stas

а мне не очень сложно представить :) есть миллионы товаров, у которых артикул отсутствует как понятие. и еще больше товаров, на которых написано Производитель: Китай :) а даже если он и есть - то есть масса магазинов, которые работают с одном производителем. и никакого профита располагать изображения по производителю нет.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций