perfkirill

perfkirill

С нами с 21 сентября 2016; Место в рейтинге пользователей: #663
perfkirill
26 марта 2019, 14:56
0
Ну короче недосоздалось там… Починил, вроде…
perfkirill
26 марта 2019, 14:19
0
Добрый день,

Подскажите, у меня не отображается «Список настроек полей:» после обновления на новую версию, при чем в базе создается. А при выборе ничего нет

[2019-03-26 14:17:26] (ERROR @ core/xpdo/om/xpdoobject.class.php: 240) Error 42S22 executing statement:
Array
(
[0] => 42S22
[1] => 1054
[2] => Unknown column 'MsiePresetsFields.where' in 'field list'
)
perfkirill
28 ноября 2018, 11:37
0
Добрый день,
Можно ли через «импорт категорий» изменять pagetitle категорий?
У меня создаётся новая с очередным ID
Настройки:

В файле:
Код группы; Родитель; Наименование группы
100540984;2; НовоеНазвание
perfkirill
14 ноября 2018, 09:47
1
0
Добрый день,

Помогите, пожалуйста.

Я распарсиваю артикул и помещаю нужные данные в нужные поля.

С цветом и размером проблем нет.
Но есть проблемы с свойствами товара (Опции minishop2)

Вот код
<?php

        $article = $resource->get('article');
        
       
        //Поиск цвета
        preg_match('/[A-z]{2,}/',$article,$color);
       
        //Поиск размера
        preg_match('/\d{2}$/',$article,$size);
         $size = "[".$size[0]."]";
        //Поиск материала
        preg_match('/0\d{2}/',$article,$material); 
        //Поиск модели
        $model_article = substr($article,8,5);
        preg_match('/0\d{2}?-?\d/',$model_article,$model); 

        
       
        $resource->set('size', $size);
    
        $color_arr_json = json_encode($color);
        $resource->set('color', $color_arr_json);
        
        
        // Работа с опциями
       $id = $resource->get('id');
       
       $product = $modx->getObject('msProduct', $id);
       //пробовал так
      // $options['cloth'] = "123";
       
       //пробовал так
       $options = array(
        
        	'composition' => array('value1', 'value2')
        );

        $product->set('options', $options);
        $product->save();
В итоге пустота.
perfkirill
25 сентября 2018, 11:15
0
Добрый день,

Подскажите по поводу крона.
Использую cronmanager, раньше делали просто из админки, но каталог слишком большой. И так раньше был чанк tpl.exp.create.row

в нем код
<h3>[[+pagetitle]]</h3>

[[+content]]


  [[!pdoPage?
  &parents=`[[+id]]`
&element=`msProducts`
&limit=`800`
  &tpl=`catalog_item_pdf`
&includeTVs=`fasovka`
&sortby=`menuindex`
&sortdir=`ASC`
    ]]


Как мне сделать такое же вывод только из под крона?

Я сделал сниппет в нем написал
<?php

define('MODX_API_MODE', true);
//require_once dirname(dirname(__FILE__)) . '/core/config/config.inc.php';
require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/config/config.inc.php';
require_once MODX_BASE_PATH . 'index.php';
// error
$modx->getService('error', 'error.modError');
$modx->getRequest();
$modx->setLogLevel(modX::LOG_LEVEL_ERROR);
$modx->setLogTarget('FILE');
$modx->error->message = null;
/** @var array $scriptProperties */
$scriptProperties = array();
$scriptProperties['returnIds'] = 1;
$scriptProperties['showLog'] = 1;
$scriptProperties['fastMode'] = 1;
$scriptProperties['limit'] = 10;
$scriptProperties['depth'] = 10;
$scriptProperties['parents'] = 0;
$scriptProperties['where'] = '{"class_key:IN":["msProduct","msCategory"]}';
// @var array $params */
$params = array();
$params['mode'] = 'url';
$params['sets'] = 1;
/** @var exportpage $exportpage */
if (!$exportpage = $modx->getService('exportpage', 'exportpage', $modx->getOption('exportpage_core_path', null, $modx->getOption('core_path') . 'components/exportpage/') . 'model/exportpage/', $scriptProperties)) {
	return 'Could not load exportpage class!';
}
$exportpage->initialize($modx->context->key, $scriptProperties);
/** @var modSnippet $snippet */
if ($snippet = $modx->getObject('modSnippet', array('name' => 'pdoResources'))) {
	$snippet->_cacheable = false;
	$snippet->_processed = false;
	$ids = $snippet->process($scriptProperties);
}
if (!empty($ids)) {
	$ids = explode(',', $ids);
	foreach($ids as $id) {
		$params['id'] = $id;
		if (!$response = $modx->runProcessor('web/files/request',
			$params,
			array(
				'processors_path' => $exportpage->config['processorsPath'],
			))
		) {
			$exportpage->printLog('[ExportPage] Could not create file:');
			$exportpage->printLog($params);
		}
		$modx->error->reset();
		$exportpage->printLog('[ExportPage] Generate for id='.$params['id']);
	}
}

Я так понимаю, что нужно 100% менять $scriptProperties['parents'] = 0; на свой id
Но вот вопрос:
1. это все, что нужно менять
2. куда будет генерироваться pdf (где ее искать)?
perfkirill
25 сентября 2018, 06:48
0
Добрый день,

Не совсем понял про getx и gety

Я хочу сделать из этого select

по типу

название опции цена
название опции2 цена2

превратить в
<option value='цена'>название опции цена</option>
<option value='цена2'>название опции2 цена2</option>
Подскажите, пожалуйста, как это сделать?