1. Заведите в системе склады в разделе Товары->Склады.
2. Добавьте доставку с расчетным классом "Самовывоз".
При выборе данной доставки у вас появится возможность выбрать склад на следующем шаге.
Форум ReadyScript Сообщения от admin
1. Заведите в системе склады в разделе Товары->Склады.
2. Добавьте доставку с расчетным классом "Самовывоз".
При выборе данной доставки у вас появится возможность выбрать склад на следующем шаге.
Да, как в облаке, так и в коробочной версии это можно сделать с помощью добавления
файла scripts.tpl из раздела Управление Шаблоны.
Подробнее здесь: http://readyscript.ru/faq/#faq-script-counter
У нас все маршруты могут быть подкорректированы из сторонних модулей.
На нашем сайте мы используем эту возможность и перегружаем стандартный маршрут просмотра списка статей.
$routes[] = new \RS\Router\Route('article-front-previewlist', array(
'/blog/'
), array('category' => 'blog'), t('Список новостей/статей')); материал о перегрузке маршрутов есть здесь: http://readyscript.ru/text-blog/Kak-pra … adyScript/
на beatsound - все понятно. Там пример про /reservation/, /oneclick/ - это понятно это обычные ссылки, которые попали естественным образом в поисковый индекс. Здесь нет никакого таинства или бага.
Все-таки на мобильных устройствах это отдельные страницы, да и PC их можно всегда открыть в новом окне, поэтому и присутствуют в поиске.
Не ясно как в поисковик может попасть url /text-4/ если все ссылки на сайте всегда были /text-blog/
(не берем ситуацию, когда у категории намеренно полгода был не задан alias, а потом он появился, т.е. оба урла долгое время светились)
По вопросу о дубляжах. Ну какой же это дубль, если о нем никто не знает? Дубль - это скорее проиндексированный одинаковый контент по разным урлам. Все-таки не ясно как в поисковик может попадать url, на который нигде ссылок и на который никто не заходит (т.е. метрика тоже о нем не знает).
Авторы сайта beatsound (наши партнеры) не задавали правила в robots.txt, поэтому у них и проиндексированы ссылки на резервацию, купить в 1 клик, капчу.
Вы можете использовать в шаблонах в ссылках, которые открываются в диалоге вместо href, data-href, в случае Формы заказать и купить в 1 клик. Наш JS подхватит такие ссылки, а для поисковиков они будут незаметны.
<a data-href="ссылка" class="inDialog">Заказать</a>По вопросу 404 ошибки. напишите, пожалуйста, в поддержку ссылку на этот товар, и доступ в админ. панель, мы посмотрим более детально и напишем, в чем проблема.
Обновлена документация для разработчиков. Изменения в формате модулей коснулись следующего:
1. Сведения о модуле должны теперь указываться в файлае /config/module.xml
2. Файл /config/install.inc.php - теперь не обязательный
2. Файл /config/uninstall.inc.php - теперь не обязательный
- Уточните, пожалуйста, чем вам мешает техническая возможность открытия страницы по двум урлам.
Дубляжей в поисковиках это не создает, так как в публичной части все урлы одного вида.
Например: только /text-blog/, если задан алиас. А алиас должен быть задан.
У нас для примера все страницы форума доступны по урлам:
http://forum.readyscript.ru/forum/1/voprosy-po-rabote-s-sistemoi/
а также forum.readyscript.ru/forum/1/При этом в поисковиках нет ни одного проидексированного урла forum.readyscript.ru/forum/1/,
просто потому, что на этот урл нет ссылок.
- Если вы хотите исключить какие-то адреса из индексации, то добавьте в robots.txt
(можно прямо из админ. панели из раздела Управление->Сайты):
User-agent: *
Disallow: /oneclick/
Disallow: /reservation/
Disallow: /cart/Google и Яндекс официально поддерживают robots.txt.
- У вас случайно ЧПУ имя не цифрами задано? (ЧПУ должен содержать хотя бы одну букву)
- Подавляющему большинству ЧПУ нужно у всех товаров. У нас есть инструменты для удобного автоматического проставления ЧПУ сразу всем товарам. В разделе Веб-сайт->Настройка модулей->Каталог товаров. Справа ссылка "Добавить ЧПУ имена товарам и категориям". Дополнительно, автогенерация ЧПУ есть в форме редактирования товара при потере фокуса у поля название. Вы можете стереть сгенерированное ЧПУ, если оно вам не нужно.
- Чтобы добавить страницу с адресом /kontakty/, нужно воспользоваться разделом Веб-сайт->Меню.
- По валидности, нужны более детальные сведения.
В каком CSS файле? Какие конкретно ошибки или предупреждения? Если там какой-нибудь warning на CSS-хак, то это не требует внимания. Если что-то посерьезнее, то нужно разобраться. Валидность - это хорошо, но кроссбраузерность и качество отображения страницы в большем числе браузеров - важнее, а как вы понимаете не всегда эти вещи совместимы.
Если у вас задача: Использовать собственный код в контроллере регистрации, то
перегрузить стандартный контроллер можно двумя способами (оба описаны в нашей статье - http://readyscript.ru/text-blog/Kak-pra … yScript/):
1. Перегрузкой маршрута (рекомендуется)
2. Подменой класса (.my.inc.php)
--------------------------------------------------------------------
Если у вас задача - вставить при отправке SMS проверку разрешения от пользователя, то мне кажется вы выбрали оптимальный путь (доработав всего один класс (смс-транспорт) и полностью сохранив возможность обновления):
1. Создали доп. поле стандартными средствами в настройках модуля Пользователь. (насколько я понял)
2. Создали свой транспортный модуль для SMS, который проверяет данное поле. (это все равно нужно было бы делать, т.к. стандартный модуль не делает проверку на разрешение пользователя)
Не совсем понятно в чем костыльность вашего решения? (Возможно задача бы решалась проще, если бы было какое-нибудь событие перед отправкой SMS, которое бы можно было перехватывать и останавливать отправку.)
Или опишите, как бы вы хотели видеть реализацию вашей задачи?
Думаю, Олег неверно понял вопрос. У автора все работает в корзине, он имел ввиду, что не хватает колонки Цена, в которой бы отображалась стоимость 1 шт. товара.
Это вопрос уровня шаблонов. Это в любой момент можно реализовать изменив шаблон корзины.
/shop/view/cartpage.tpl
Цена находится в поле single_cost. Вот пример:
Элементы корзины:<br>
{$product_items=$cart->getProductItems()}
{foreach $cart_data.items as $index=>$item}
{$product=$product_items[$index].product}
{$cartitem=$product_items[$index].cartitem}
Наименование: {$product.title}
Цена 1 шт.: {$item.single_cost}
Стоимость: {$item.cost}
Скидка {$item.discount}
{/foreach}В стандартных шаблонах дизайнеры предложили убрать эту колонку, исходя из того, что пользователя больше интересует цена его покупки, чем сверка цен за 1 единицу. Но это вопрос субъективный, поэтому шаблон можно смело менять как пожелаете.
С сегодняшнего дня доступен вывод средств с лицевого счета ReadyScript на карты Visa, Mastercard, Яндекс.Деньги, расчетный счет(для физических и юридических лиц).
Раннее, потратить заработанные деньги можно было только на наши продукты и услуги, теперь вы можете забрать деньги и купить все что угодно. Партнерская программа теперь становится еще привлекательнее.
Подробности тут
Могу предположить, что у вас в браузере в разных вкладках открыты разные мультисайты, поэтому в админке у вас и соскакивает текущий сайт, т.к. будучи авторизованным под админом, при посещении мультисайта, он устанавливается в качестве текущего и в админ. панели.
Если вы в одно время будете управлять одним сайтом и открывать только его в соседних вкладках - такой проблемы не будет.
Или используйте возможность "Приватное окно", которая есть в браузерах FireFox, Chrome,
если хотите управлять одновременно двумя мультисайтами. Т.е. в одном приватном окне - можно держать открытой админку и клиентскую часть одного сайта.
Этот вопрос правильнее адресовать хостеру или принимающей стороне писем (почему они положили ваше письмо в спам). Движок формирует письмо обычной командой PHP - mail(), в которую передается Email получателя, тело письма, стандартные заголовки FROM, REPLY.
Непосредственно отправкой письма занимается ПО, установленное на хостинге (обычно exim). Письма могут попадать в спам по огромному числу причин:
1. IP сервера в спам-листах, IP целой подсети в спам-листах, домен в спам листах.
2. Отсутствие необходимых подписей или заголовков письма (DKIM,....)
3. Наличие в письме по мнению фильтрующих программ спам-слов
4. Внутренние алгоритмы, фильтры, ограничения принимающей стороны. (наличие жалоб на спам на подобные письма, и.т.д.)
Возможно просто достаточно однажды вытащить письмо из спама вручную и mail.ru будет класть далее эти письма во входящие? (проверили, с наших тестовых аккаунтов на mail.ru письма успешно доходят, не в спам)
У нас на доменах .local и .test - не происходит блокировок. Видимо у вас что-то не так настроено.
Попробуйте удалить папку /cache. Убедитесь, что из PHP можно обратиться к ВАШЕМДОМЕН.local и у вас действительно открывается ваш сайт. Пример файла для проверки доступности локального домена.
<?
echo file_get_contents('ВАШДОМЕН.local/robots.txt');должен вернуть содержание вашего robots.txt
Если необходимо выполнить следующий запрос:
SELECT COUNT(*)
FROM products as A
INNER JOIN second as B ON A.id = B.product_id
WHERE A.num > 0;
Можно сделать это так:
1 способ. С помощью запроса через \RS\Orm\Request
$result = \RS\Orm\Request::make()
->from(new Orm\Product, 'A')
->join(new Orm\Second, 'A.id = B.product_id', 'B')
->where('A.num > 0')
->count();т.е. можно создать метод в вашей модели, например getSomethingCount() и реализовать в нем такой запрос.
2 способ. С помощью стандартных \Catalog\Model\Api и метода getListCount();
$product_api = new \Catalog\Model\Api();
$product_api->queryObj()
->join(new Orm\Second, 'A.id = B.product_id', 'B')
->where('A.num > 0');
$result = $product_api->getListCount();т.е. метод queryObj() возвращает текущий объект \RS\Orm\Request, который загружен в API, соответственно там по умолчанию уже присутствует часть запроса
\RS\Orm\Request::make()
->from(new Orm\Product, 'A')
и вам остается только добавить недостающую часть.
1. Мета теги для главной прописываются в разделе Веб-сайт->Заголовки, мета-теги.
-- Необходимо нажать справа справа "Добавить"
-- Выбрать маршрут: "Главная страница"
-- Добавить мета-теги
2. У нас есть массовое редактирование. Вы можете зайти в определенную категорию, поставить флажок "Выбрать товары на всех страницах" ( http://readyscript.ru/manual/user_admin_elements.html ), внизу нажать на кнопку Редактировать. В открывшемся окне установить флажок "Показывать товар"
3. У вас включено подробное отображение информации об ошибках. Снимите галочку "Подробно отображать информацию об исключениях" в разделе Управление->Настройки системы.
Это наверняка разовая история.
Вы можете удалить фото через базу из таблицы ..._images
После удаления записей из базы нужно зайти в раздел Веб-сайт->Настройка модулей->Блок фотографий и выбрать справа "Удалить несвязанные фото". Данная операция удалит файлы изображений со всеми миниатюрами, на которые нет ссылок в базе.
После этого загрузите массово новые изображения.
1,2. Удалять фото у товаров можно только через карточку товара в админ. панели.
3. При импорте фото из ZIP, происходит сравнение по имени файла фото.
Если фото с таким же именем было загружено к товару раннее, то оно повторно загружаться не будет.
Т.е. работает правило - либо добавляю либо пропускаю.
Эта ошибка с остатками была исправлена достаточно давно. Вы используете самые свежие версии системы?
Что нужно для работы системы уведомлений с сайта?
1. Заполнить Email администратора в разделе Веб-сайт->Настройка сайта
2. Заполнить поле От(From), Reply, в разделе Веб-сайт->Настройка сайта->Уведомления.
В поле From, Reply - нужно указывать Email с доменом, на котором находится ваш сайт. Например info@yoursite.ru
Если ваш сайт имеет кирилический домен, то адрес необходимо указывать в punycode.
вот здесь можно получить Puny представление вашего домена: http://r01.ru/domain/whois/instruments/converter.php
Пример: для сайта тестовыйсайт.рф, email будет выглядеть так: info@xn--80adirb0auddcg7h.xn--p1ai
Если после заполнения указанных выше полей письма не приходят (обязательно посмотрите в папке СПАМ), то 90% (по статистике обращений в нашу поддержку) - это проблема на хостинге. Можно провести небольшой тест, чтобы узнать работает ли отправка писем на хостинге, для этого нужно создать тестовый файл test.php в корне сайта, следующего содержания.
<?php
$to = 'YOUREMAIL@MAIL.RU'; //Здесь укажите ваш Email
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
var_dump(mail($to, $subject, $message, $headers));Далее нужно запустить созданный скрипт через браузер http://ВАШСАЙТ.RU/test.php.
Если вы увидите в браузере false или вам не придет письмо, значит на хостинге действительно существует проблема с отправкой письма. В этом случае нужно писать в поддержку хостинга со ссылкой на ваш тестовый файл test.php
Насколько я понял вы внесли изменения в стандартный файл Smarty core/smarty/plugins/modifier.date_format.php,
чтобы добавить поддержку русских месяцев и формата вывода "23 ноября 2015".
Оригинал мы изменять не можем, для поддержки простого обновления дистрибутива Smarty внутри ReadyScript с официального сайта Smarty.
Но это и не нужно, потому что у нас уже есть плагин, нашего производства, который делает то, что вам нужно.
Он называется "dateformat" (без подчеркивания) располагается в папке /core/smarty/rsplugins/modifier.dateformat.php, он поддерживает весь набор стандартных инструкций обычного плагина date_format + дополнен конструкциями:
%k - отображает сколько времени назад произошло событие "сегодня","вчера", "N дней назад", если больше месяца, то пишет дату "23.02.2010".
%v - отображает месяц на русском языке "января", "февраля",....
@time - возвращает время в формате ЧЧ:ММ
@date - возвращает дату в формате ДД.ММ.ГГГ
@sec - возвращает кол-во секунд
%datetime - возвращает дату и время в формате ДД.ММ.ГГГГ ЧЧ:ММ:СС
Как этим пользоваться?
{$date = '2014-01-20 10:30:00'}
//Нужно вывести дату в форме "20 января 2014"
{$date|dateformat:"%d %v %Y"}
//Нужно вывести дату в форме "[Сегодня|Вчера|5 дней назад|20.01.2014], в 10:30".
{$date|dateformat:"%k, в @time"}Пока такой возможности, к сожалению, нет, но обязательно появится в будущих версиях.
Да, вы можете загрузить GIF анимированный баннер,
необходимо будет только использовать флажок "Использовать оригинал файла для вставки" непосредственно в окне редактирования баннера. (Чтобы система не пережимала его и соответственно не терялась анимация)
Вы также можете загрузить и Flash баннер, но необходимо будет подкорректировать шаблон баннера
/modules/banners/view/blocks/bannerzone/zone.tpl или /modules/banners/view/blocks/slider/slider.tpl, стандартно там используется
<img src="{ссылка на баннер}">, а в случае с flash Баннером нужно будет использовать что-то вроде:
<object width="280" height="600" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0"
type="application/x-shockwave-flash" data="{ссылка на баннер}">
<param name="quality" value="high" />
<param name="scale" value="noborder" />
<param name="salign" value="t" />
<param name="wmode" value="opaque" />
<param name="src" value="{ссылка на баннер}" />
<embed width="280" height="600" id="linebanner" src="{ссылка на баннер}"> </embed>
</object>Пример использования SEO генератора есть у нас в блоге http://readyscript.ru/text-blog/Novye-v … adyScript/.
Можно подменить ссылку на раздел Управления заказами у пункта меню в админ. панели, сразу с установленными фильтрами.
Это делается - копированием /modules/shop/config/handlers.inc.php в
/modules/shop/config/myhandlers.inc.php
myhandlers.inc.php должен быть примерно такого содержания (код не проверял, возможны синтаксические ошибки):
<?php
namespace Shop\Config;
class MyHandlers extends Handlers
{
public static function getMenus($items){
$items = parent::getMenus($items);
//Перебираем пункты меню и модифицируем ссылку у нужного
foreach($items as &$item) {
if ($item['alias'] == 'allorders') {
$item['link'] = '%ADMINPATH%/shop-orderctrl/?f[dateof]='.date('Y-m-d');
}
}
return $items;
}
}Это очень странно. На факт оплаты у нас нет условий на списание остатка товара.
У нас в коде установлено простое условие, если включена указанная выше опция,
то всегда при создании заказа списывать товар со склада, выбранного вручную в случае самовывоза или "по-умолчанию".
Проверьте, у вас хотя бы один склад отмечен, как склад "по-умолчанию"?
Проверьте, пожалуйста, на вкладке Комплектации - количество уменьшается?
Форум ReadyScript Сообщения от admin