Вход • Регистрация

Всего найдено: 1212

  • 27 февраля 2017 г.
  • Коллега, мнение одного из самых опытных разработчиков данного форума для меня бесценно :)

    Поясню. Мне нужно было средство, которое позволит в лишь в некоторых местах показывать то у чего кол-во больше нуля. Т.е. в листинге у меня показываются ВСЕ товары с сортировкой по наличию (которую), как потребовал наш СЕОшник, а в различных "заманухах" уже использую show block с данным аргументом.
  • 22 февраля 2017 г.
  • Друзья, срочно нужен ответ поэтому не полез в документацию и ТП, а пишу сразу тут в стиле "Как мне сделать..."



    Мне нужно добиться того чтобы напротив каждой цены был блок в котором был бы контент-типа: IDтовара[idХар-ки|ЗначениеХар-ки] - в данном случае хар-ки влияющей на цену. Чет поковырял public function list_variable_price в shop.admin - нифига не поменялось.

    Всем заранее спасибо за помщь
  • 21 февраля 2017 г.
  • Здравствуйте коллеги. Что из этого мне НЕ надо прописывать, чтобы в полной мере использовать свойства и методы классов diafan, в самописных скриптах?
    Спасибо!

    Код


    define('DIAFAN', 1);
    define('ABSOLUTE_PATH', $_SERVER['DOCUMENT_ROOT'].'/');
    include ABSOLUTE_PATH.'config.php';
    include_once ABSOLUTE_PATH.'includes/custom.php';
    Custom::init();
    Custom::inc('includes/developer.php');
    Dev::init();
    Custom::inc('includes/core.php');
    define('IS_ADMIN', 0);
    Custom::inc('includes/init.php');
    Custom::inc('includes/database.php');
    $diafan = new Init();

  • 21 февраля 2017 г.
  • Имелось ввиду не для модуля а для самопального скрипта, который на CRON к примеру вешаю.
    Я так товары, цены и наличие например синхрю с внешними сервисами различными.
  • 22 февраля 2017 г.
  • Внутрь CMS лезсть есть зачем. :) Вот например с работой с БД я использую http://phpfaq.ru/safemysql чтобы избежать многократного написания рутинного кода, ну а если сайт на диафане так я использую класс по работе с БД диафана.
    Так же для произведения типовых операций например с товарами, обновление цены и наличия удобнее использовать что-нибудь типа:

    Код

    if (! $diafan->_shop->price_get($id)) {
    $diafan->_shop->price_insert($id,$product['price'],0,$product['count_all']);
    }

  • 20 февраля 2017 г. , редакция: 1487620822
  • Если уже самостоятельно нашли вьюху накладной то считайте дело в шляпе.
    Вы можете в модельке или непосредственно во вьюхе выполнить SQL запрос типа:
    Код
    $delivery_name = DB::query_result("SELECT [name] FROM {shop_delivery} WHERE id = (SELECT delivery_id FROM {shop_order} WHERE id=%d)", $id);

    где $id - номер заказа

    ой, вы способ оплаты просили а я вам способ доставки выпилил. не то )))

    Для оплаты вот так:

    Код
    $payment_name = DB::query_result("SELECT [name] FROM {payment} WHERE id = (SELECT payment_id FROM {payment_history} WHERE id=%d", $id);


  • 16 февраля 2017 г.
  • Еслиб я делал порносайт я бы точно не стал писать CMS с нуля. Хотя, справедливости ради, скажу очень многие передовые изобретения веб технологий и интернет-маркетинга идут из порно-бизнеса. Та же самая контекстная-реклама.
  • 20 февраля 2017 г. , редакция: 1487591938
  • Вам Павел послал настройки подключения по SFTP (ftp over ssh). SSH доступ скорее всего закрыт.
    А вам надо простое FTP я полагаю.

    Если провайдер SPACEWEB то поставьте галку в админке - включить SSH доступ. Тогда и по SFTP пустит.
  • 14 февраля 2017 г. , редакция: 1487024718
  • В магазине shop.php - дописать название своего обработчика в функцию public function action(). Например в конец дописать
    Код

    case 'block_random': // block_random должен будет передаваться в $_POST["action"], чтобы отработада данная функция
    $this->action->block_random();
    break;


    Далее в shop.action.php - зафигачить сам обработчик нечто отдаленно напоминающее:
    Код


    public function block_random()
    {
    $this->model->show_block($count, $site_ids, $cat_ids, $brand_ids, $sort, $images, $images_variation, $param, $hits_only, $action_only, $new_only, $discount_only, $tag);
    $this->model->result();
    $this->model->result["ajax"] = true;
    $this->result["data"] = $this->diafan->_tpl->get(вот тут название вьюхи, 'shop', $this->model->result);
    $this->result["result"] = 'success';
    }



    ну и JS куда-нить воткнуть
    Код

    $(document).on('click', '.класс_кнопки', function() {
    $.post(
    "/", {
    "module": "shop",
    "action": "block_random",
    "ajax": 1,
    },
    function(result) {
    result = JSON.parse(result);
    result.data = prepare(result.data);

    $(".класс_контейнера").empty();
    $(".класс_контейнера").html(result.data);
    });
    })
  • 14 февраля 2017 г. , редакция: 1487024885
  • Ошибку исправил.

    Пожалуйста, пользуйтесь.
    Код практически рабочий, там надо будет только правильно аргументы передать в $this->model->show_block()
    На крайняк можно result самому собрать запросами к БД ну и проследить, чтобы вьюха была корректная.

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум