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

Импорт картинок WP All Import Pro.

dim70

Опытный
Добрый день!
Несколько дней самостоятельно разбирался с интернет магазином построенным на Wordpress посредством: тема от Woo + плагины: WooCommerce, WordPress Importer, WP All Import - WooCommerce Add-On Pro, WP All Import Pro.
Разобрался. Стало получаться. Всё работает как надо. Супер! Но, вот неожиданная проблема. Импорт товаров с картинками и описанием и т.д. проходит отлично только тогда, когда источником картинки является url начинающийся на http://
Потребовалось мне импортировать товары с каталога .xml где картинка представлена таким вот образом
ftp:// - не получается сохранить картинку. При создании импорта в режиме превью, картинка отображается. Но когда начинается импорт, то загружается всё, кроме картинок. Вот как выглядит ошибка: <div class="progress-msg"><b>WARNING</b>: File ftp://ftp_drive_d_r:zP3CxVm4O8kg5UWkG5D@178.159.255.108:41/ad525465-0b44-45ea-a1de-4d87a68237c6%23v8_3_348d.jpeg cannot be saved locally as /home/virtwww/w_proverk6f7_2ca658b0/http/wp-content/uploads/2015/11/ad525465-0b44-45ea-a1de-4d87a68237c6-23v8_3_348d.jpeg</div>
Сперва подумал, что не хватает прав на запись картинок - дал на папки полные права, потом стал грешить на плагины Woo - снёс их. Установил новые, самые свежие, но бесплатные. Там оказалось, что в бесплатной версии не работают картинки, но у меня ведь платная версия. Написал в тех. поддержу. Пока ответа нет. Скачал потом крякнутую более свежую версию - результат такой же - всё работает, а картинки - нет. Установил на другой хостинг всё заново. Результат отрицательный. Может, кто-то сталкивался с такой ситуацией? Как можно решить проблему?
 

ADv

Гуру
Местный
Добрый день!
Несколько дней самостоятельно разбирался с интернет магазином построенным на Wordpress посредством: тема от Woo + плагины: WooCommerce, WordPress Importer, WP All Import - WooCommerce Add-On Pro, WP All Import Pro.
Разобрался. Стало получаться. Всё работает как надо. Супер! Но, вот неожиданная проблема. Импорт товаров с картинками и описанием и т.д. проходит отлично только тогда, когда источником картинки является url начинающийся на http://
Потребовалось мне импортировать товары с каталога .xml где картинка представлена таким вот образом
ftp:// - не получается сохранить картинку. При создании импорта в режиме превью, картинка отображается. Но когда начинается импорт, то загружается всё, кроме картинок. Вот как выглядит ошибка: <div class="progress-msg"><b>WARNING</b>: File ftp://ftp_drive_d_r:zP3CxVm4O8kg5UWkG5D@178.159.255.108:41/ad525465-0b44-45ea-a1de-4d87a68237c6%23v8_3_348d.jpeg cannot be saved locally as /home/virtwww/w_proverk6f7_2ca658b0/http/wp-content/uploads/2015/11/ad525465-0b44-45ea-a1de-4d87a68237c6-23v8_3_348d.jpeg</div>
Сперва подумал, что не хватает прав на запись картинок - дал на папки полные права, потом стал грешить на плагины Woo - снёс их. Установил новые, самые свежие, но бесплатные. Там оказалось, что в бесплатной версии не работают картинки, но у меня ведь платная версия. Написал в тех. поддержу. Пока ответа нет. Скачал потом крякнутую более свежую версию - результат такой же - всё работает, а картинки - нет. Установил на другой хостинг всё заново. Результат отрицательный. Может, кто-то сталкивался с такой ситуацией? Как можно решить проблему?
На этом FTP сервере авторизация не требуется?
 

dim70

Опытный
Вот ответ от WP All Import (support@wpallimport.com)
"The problem is that the images are served from FTP paths which are not supported for image imports.
I'll still check this with our developer and confirm if this is possible at all."
 

dim70

Опытный
тех поддержка WP All Import (support@wpallimport.com) помогла. Прислала подробную инструкцию, какие и куда внести изменения и всё заработало ура!
 

dim70

Опытный
Поделиться не хотите с сообществом? ;)
Вот что мне посоветовала сделать тех поддержка WP All Import (support@wpallimport.com):

As mentioned earlier, images served from FTP paths are not supported for image imports. However here's a workaround that you can use:
Step 1: Add the following code in the Functions Editor or functions.php file of your theme:

function get_image_path($ftp_path){

$ftp_details = parse_url(esc_url($ftp_path));

if (! empty($ftp_details))
{
return get_image_by_ftp($ftp_path, $ftp_details['host'], $ftp_details['port'], $ftp_details['user'], $ftp_details['pass'], $ftp_details['path']);
}

return '';
}

function get_image_by_ftp($ftp_path, $ftp_server, $ftp_server_post, $ftp_user_name, $ftp_user_pass, $server_file){

$uploads = wp_upload_dir();

$local_file_name = urldecode(wp_all_import_sanitize_filename(basename($server_file)));

$local_file_path = $uploads['basedir'] . DIRECTORY_SEPARATOR . WP_ALL_IMPORT_FILES_DIRECTORY . DIRECTORY_SEPARATOR . $local_file_name;

if (file_exists($local_file_path)) return $local_file_name;

$curl = curl_init();
$file = fopen($local_file_path, 'w');
curl_setopt($curl, CURLOPT_URL, "ftp://". $ftp_server . ":" . $ftp_server_post . $server_file); #input
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FILE, $file); #output
curl_setopt($curl, CURLOPT_USERPWD, $ftp_user_name . ":" . $ftp_user_pass);
$res = curl_exec($curl);
curl_close($curl);
fclose($file);

if ($res) {

$result_image_name = $local_file_name;
}

return $result_image_name;
}
Step 2: Use these settings in the import template:

    • Chose the 'Use image(s) currently uploaded in /wp-content/uploads/wpallimport/files/' option
    • In the images field, put image XPath into PHP function like this: [get_image_path({interior_list[1]/interior[1]})]
Выполнив все предписанные выше действия смог получить положительный результат - импорт картинок работает через ftp
 

Вложения

  • Screen Shot 2015-11-18 at 1.50.27 PM.jpg
    Screen Shot 2015-11-18 at 1.50.27 PM.jpg
    85.2 KB · Просмотры: 62
Последнее редактирование:

dim70

Опытный
Хотел создать новую тему на форуме, но видно мозг уже выключается, не нашёл ссылки, кнопки и т.д. "Создать новую тему"...
 

dim70

Опытный
Плагины WP All Import Pro + WooCommerce Add-On Pro имеют огромный потенциал. Однако чем больше я читаю новой информации, тем больше запутываюсь...
Мне надо из каталога.xml который состоит из двух частей:

первая часть коллекции

<collection_list>
<collection id="000003180">
<name>
<![CDATA[ Abrila/Purio ]]>
</name>
<interior_list>
<interior>
ftp://ftp_drive_d_r:z230001.jpg
</interior>
</interior_list>
<brand>
<![CDATA[ Grupa Paradyz ]]>
</brand>
<country>
<![CDATA[ Польша ]]>
</country>
</collection>
</collection_list>

вторая часть товары:

<element_list>
<element code="х9999029219" id="020730">
<name>
<![CDATA[ Плитка напольная GS-N5002 Forest Maroon15х90 ]]>
</name>
<price>1611</price>
<edizm>м2</edizm>
<balance>1</balance>
<balanceCount>140.93</balanceCount>
<category>Плитка</category>
<collection_list>
<collection>000002969</collection>
</collection_list>
<field_of_application_list>
<field_of_application>Для ванной</field_of_application>
<field_of_application>Для гостиной</field_of_application>
<field_of_application>Для коридора</field_of_application>
<field_of_application>Для кухни</field_of_application>
</field_of_application_list>
<place_in_the_collection>Базовая плита</place_in_the_collection>
<minpart_list>
<minpart>0.1350 кв.м. (в упаковке 1.0800 кв.м. - 8 шт.)</minpart>
</minpart_list>
<weight_list>
<weight>1 шт. - 2.658 кг (в упаковке: 24 кг)</weight>
</weight_list>
<size>15х90</size>
<architectural_surface>Пол</architectural_surface>
<DesignValue>Дерево и керамопаркет</DesignValue>
<BaseValue>Керамика</BaseValue>
<ColorValue>Коричневый</ColorValue>
<CoverValue>Глазурованная</CoverValue>
<SurfaceValue>Матовая</SurfaceValue>
<frost_hardiness>Нет</frost_hardiness>
<Rectified>Нет</Rectified>
<durability>PEI III (для глазурованно</durability>
<pic>
ftp://ftp_drive_d_r:zP23v8_3_4394.jpeg
</pic>
</element>
</element_list>

Создать в своём магазине следующую структуру отображения полученной из каталога.xml информации:
Разделы меню:
плитка
мозаика
керамогранит
и т.д.
Пункт меню "Плитка" при нажатии должен выдавать подпункты: Для ванной, для пола,и т.д.
При нажатии на "Для ванной" или "Для пола" и т.д. попадать на коллекцию, а уже из коллекции переход на товары относящиеся к этой коллекции.
Пункт меню "Мозаика" должен выдавать сперва "Коллекцию" потом товары из этой коллекции.

Вот вроде, как мне кажется, я смог объяснить, сформулировать, то от чего у меня пухнет голова последние несколько дней...
Дело в том, что у меня не получается в рамках этих плагинов WP All Import Pro + WooCommerce Add-On Pro организовать доступ сразу к двух разделам каталога.xml к коллекциям <collection> и товарам <element>
Когда я выбираю /collection coll.JPG
то могу обращаться только к тем данным которые указаны в /collection
coll1.JPG
это <collection id=""> <name> <brand> <country> и картинка
Я могу на выходе сортировать коллекции по <brand> и <country>.
Когда же я обращаюсь к /element
elem.JPG
то получаю возможность на выходе (выводить на своём сайте, создавать меню и категории и под категории) сортировать товар по тем параметрам которые указаны. Этих параметров больше чем в коллекции и возможность группировать товар значительно шире (это видно на картинке ниже)
elem1.JPG
но я не могу сообразить, как мне вывести на своём сайте вот такую структуру:
Разделы меню:
плитка
мозаика
керамогранит
и т.д.
Пункт меню "Плитка" при нажатии должен выдавать подпункты: Для ванной, для пола,и т.д.
При нажатии на "Для ванной" или "Для пола" и т.д. попадать на коллекцию, а уже из коллекции переход на товары относящиеся к этой коллекции.
Пункт меню "Мозаика" должен выдавать сперва "Коллекцию" потом товары из этой коллекции.

Я чувствую, что мне не хватает знаний. Я могу закачать все коллекции и задать им категории "Для ванной" "Для пола" и т.д. а потом вручную сортировать их. Тоже самое с товаром. Разбить товар на категории "Плитка" "Мозаика", а потом опять в ручную присваивать нужной коллекции относящийся к ней товар.

Подскажите, как мне решить эту задачу. Мозг взрывается, когда я пытаюсь в уме всё это разложить по полочкам. Может можно что-то прописать сюда (смотрите картинку)
d11.JPG
чтобы оперировать сразу к данным из раздела /collection и раздела /element чтобы сформировать нужный мне результат?
Или я неправильно в корне рассуждаю и алгоритм действий в данной ситуации должен быть иным?
 

dim70

Опытный
Утро вечера мудрене́е. Вот как я пока, что реализовал описанное выше.
Сортирую товар по виду (плитка, мозаика и т.д.) применению (для ванны, для пола и т.д.) и по номеру коллекции.
Вот такая формула у меня получилась:
/element[field_of_application_list[field_of_application[contains(.,"Для ванной")]]]
w1.JPG
w2.JPG
 

LLL

Новичок
Утро вечера мудрене́е. Вот как я пока, что реализовал описанное выше.
Сортирую товар по виду (плитка, мозаика и т.д.) применению (для ванны, для пола и т.д.) и по номеру коллекции.
Вот такая формула у меня получилась:
/element[field_of_application_list[field_of_application[contains(.,"Для ванной")]]]
Посмотреть вложение 1670
Посмотреть вложение 1671
Пишите дальше!
Скоро так же буду заливать картинки, случайно на вас наткнулся.
Спасибо!
 

dim70

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

dim70

Опытный
Да! Теперь - это я! Возможно немного пафосно и самоуверенно, но я смог решить многие задачи, которые ранее мне казались просто чем-то из области фантастики.
 

aplitka

Новичок
Тут такое дело-я тоже плиточник :) С Вами возможно посотрудничать на коммерческой основе в плане аналогичной настройки?
 

dim70

Опытный
Да, давайте попробуем. Чем я могу быть Вам полезен? Так как я всё же ещё не совсем "волшебник, а только учусь", постарайтесь наиболее полно описать свою проблему и то что Вы в итоге хотите получить.
 

aplitka

Новичок
ок.Спасибо.Там сейчас сражается "специалист",но что-то мне подсказывает,что до конца он не справиться :)
 

dim70

Опытный
Договорились, дождёмся окончания "сражения" и тогда, пишите свои предложения о сотрудничестве...
 

aplitka

Новичок
Здравствуйте.Все-таки судя по всему-дубль три и опять практически та же самая картина... Я уже устала объяснять этим "специалистам" категория коллекция-как она должна собирать товары и т.д. Можете показать Ваш сайт,чтобы я посмотрела, лишний раз не объясняла-судя по вышеописанному Вами-Вы точно также формировали Ваш каталог :)
 
Сверху Снизу