Автор Тема: YML-файл  (Прочитано 4563 раз)

16 Январь 2020, 22:31:06
Ответ #15
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У меня на престе 1.7.6.2 Яндекс Модуль не генерит ничего.(прил.) В чем дело не пойму. Причем пишет почему-то http, когда там ssl везде... памагите, люди добрые!
17 Январь 2020, 13:29:30
Ответ #16
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль переустановите, возьмите последнюю версию модуля v1.1.11 от 25.11.2019
17 Январь 2020, 20:34:52
Ответ #17
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
был 1.1.10, поставил 1.1.11 Изменений никаких...
18 Январь 2020, 14:19:06
Ответ #18
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
У меня версия prestashop 1.7.6.1
Модуль Y.CMS 2.0 для Prestashop v1.1.11
Генерит yml файл со всеми выбранными товарами.
18 Январь 2020, 17:20:31
Ответ #19
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
не знаю, может из-за того, что товаров 55 тыс. почти... но тогда по таймауту вылетал бы, а тут сразу раз и готово, но не то...
21 Январь 2020, 22:04:53
Ответ #20
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ответ поддержки: "Адрес сайта определяется по значению __PS_BASE_URI__, которое берется из настроек Prestashop. Для изменения адреса в прайс-листе Вам необходимо изменить значение __PS_BASE_URI__."
Этот __PS_BASE_URI__ задается, как я понимаю в config.php, но там присутствует функция: define('__PS_BASE_URI__', $context->shop->getBaseURI());
Что нужно поменять, чтобы этот __PS_BASE_URI__ стал с https, а не с http?
Может это из-за того, что php в режиме CGI работает, а не Apache? Может из-за этого переадресация не срабатывает?
И в Рассширенные параметры-Информация тоже с http:// домен стоит...
22 Январь 2020, 12:14:02
Ответ #21
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
__PS_BASE_URI__ - создаеьтся из 2-х переменных, включенного протоколо и имени домена.  Значения берутся из бызы.
У вас протокол https включен в админке?
22 Январь 2020, 12:20:26
Ответ #22
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если про http://joxi.ru/KAgWwoVtEY0B0A, то да.
22 Январь 2020, 13:07:59
Ответ #23
  • Ветеран
  • *****
  • Сообщений: 1285
  • Репутация: +13/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Ответ поддержки: "Адрес сайта определяется по значению __PS_BASE_URI__, которое берется из настроек Prestashop. Для изменения адреса в прайс-листе Вам необходимо изменить значение __PS_BASE_URI__."
Этот __PS_BASE_URI__ задается, как я понимаю в config.php, но там присутствует функция: define('__PS_BASE_URI__', $context->shop->getBaseURI());
Что нужно поменять, чтобы этот __PS_BASE_URI__ стал с https, а не с http?
Может это из-за того, что php в режиме CGI работает, а не Apache? Может из-за этого переадресация не срабатывает?
И в Рассширенные параметры-Информация тоже с http:// домен стоит...
У вас изменены базовые матоды, так как getBaseURL вернет адрес сайта с https, если ssl включено в админке
/**
     * Get shop URL
     *
     * @param string $auto_secure_mode if set to true, secure mode will be checked
     * @param string $add_base_uri if set to true, shop base uri will be added
     * @return string complete base url of current shop
     */
    public function getBaseURL($auto_secure_mode = false, $add_base_uri = true)
    {
        if (($auto_secure_mode && Tools::usingSecureMode() && !$this->domain_ssl) || !$this->domain) {
            return false;
        }

        $url = array();
        $url['protocol'] = $auto_secure_mode && Tools::usingSecureMode() ? 'https://' : 'http://';
        $url['domain'] = $auto_secure_mode && Tools::usingSecureMode() ? $this->domain_ssl : $this->domain;

        if ($add_base_uri) {
            $url['base_uri'] = $this->getBaseURI();
        }

        return implode('', $url);
    }
В папке override проверьте переопределение класса Shop в оригинальном файле проверьте.
22 Январь 2020, 13:34:17
Ответ #24
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если вы про файл /override/classes/shop/index.php, то там вот что:
<?php
/**
 * 2007-2019 PrestaShop and Contributors
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Open Software License (OSL 3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * https://opensource.org/licenses/OSL-3.0
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@prestashop.com so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade PrestaShop to newer
 * versions in the future. If you wish to customize PrestaShop for your
 * needs please refer to https://www.prestashop.com for more information.
 *
 * @author    PrestaShop SA <contact@prestashop.com>
 * @copyright 2007-2019 PrestaShop SA and Contributors
 * @license   https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0)
 * International Registered Trademark & Property of PrestaShop SA
 */

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");

header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0"false);
header("Pragma: no-cache");

header("Location: ../");
exit;

Вы про версию престы про 1.7.6.2 или про другую какую?
22 Январь 2020, 14:22:20
Ответ #25
  • Ветеран
  • *****
  • Сообщений: 1285
  • Репутация: +13/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Для prestashop 1.7.6 метод определния url изменился.

Prestashop 1.6
$this->getBaseURI();
Prestashop 1.7
$this->getURL($ssl = false/true)
Может модуль не поддердивает prestashop 1.7.
22 Январь 2020, 19:04:09
Ответ #26
  • Новичок
  • *
  • Сообщений: 46
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль вот этот: https://github.com/yandex-money/yandex-money-ycms-v2-prestashop
Написано поддерживает. :'(
Тем более ещё и тут http у меня: https://prestashop-forum.ru/index.php?action=dlattach;topic=8150.0;attach=9039;image
Тут то модуль не причем...
12 Июль 2020, 13:58:32
Ответ #27
  • Новичок
  • *
  • Сообщений: 12
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
У меня данный модуль на 1.7 версии не работает. Ошибка валидации в вебмастере яндекса.
14 Июль 2020, 12:58:01
Ответ #28
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
У меня данный модуль на 1.7 версии не работает. Ошибка валидации в вебмастере яндекса.
Какая ошибка? Описание?
16 Ноябрь 2021, 20:43:51
Ответ #29
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
не знаю, может из-за того, что товаров 55 тыс. почти... но тогда по таймауту вылетал бы, а тут сразу раз и готово, но не то...

Для таких больших выгрузок в Яндексе мне посоветовали делать несколько YML файлов. Магазин с 50 тыс товаров.
Сам Яндекс маркет не успевал обработать по тайм ауту файл.
Сделал 3 YML файла по 20+20+10 тыс товаров, Яндекс все скушал.