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

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

  • 22 августа 2017 г.
  • Поясню. Вообще такой подход классически не верный. Дело в том, что в настройках модуля определяется формат вывода даты (поле называется "Формат даты"). Поэтому в модельке модуля содержание даты заносится в массив, как отформатированное. Соответственно изменим в настройках формат вывода даты и у Вас все полетит. Вывод, необходимо в в модельке кое-что подправить.

    И так, если это модуль новостей. Берем news.model.php и заменим эти строчки
    Код
    /**
    * Форматирование данных о элементе для шаблона вне зоны кэша
    *
    * @return void
    */
    public function format_data_element(&$row)
    {
    if (! empty($row["name"]))
    {
    $row["name"] = $this->diafan->_useradmin->get($row["name"], 'name', $row["id"], 'news', _LANG);
    }
    if (! empty($row["text"]))
    {
    $row["text"] = $this->diafan->_useradmin->get($this->diafan->_tpl->htmleditor($row["text"]), 'text', $row["id"], 'news', _LANG);
    }
    if (! empty($row["anons"]))
    {
    $row["anons"] = $this->diafan->_useradmin->get($this->diafan->_tpl->htmleditor($row["anons"]), 'anons', $row["id"], 'news', _LANG);
    }
    if (! empty($row["date"]))
    {
    $row["date"] = $this->diafan->_useradmin->get($row["date"], 'created', $row["id"], 'news');
    }

    $row["tags"] = $this->diafan->_tags->get($row["id"], 'news', 'element', (! empty($row["site_id"]) ? $row["site_id"] : 0));
    $row["rating"] = $this->diafan->_rating->get($row["id"], 'news', 'element', (! empty($row["site_id"]) ? $row["site_id"] : 0));
    }

    на эти строчки
    Код
    /**
    * Форматирование данных о элементе для шаблона вне зоны кэша
    *
    * @return void
    */
    public function format_data_element(&$row)
    {
    if (! empty($row["name"]))
    {
    $row["name"] = $this->diafan->_useradmin->get($row["name"], 'name', $row["id"], 'news', _LANG);
    }
    if (! empty($row["text"]))
    {
    $row["text"] = $this->diafan->_useradmin->get($this->diafan->_tpl->htmleditor($row["text"]), 'text', $row["id"], 'news', _LANG);
    }
    if (! empty($row["anons"]))
    {
    $row["anons"] = $this->diafan->_useradmin->get($this->diafan->_tpl->htmleditor($row["anons"]), 'anons', $row["id"], 'news', _LANG);
    }
    if (! empty($row["date"]))
    {
    $row["no_format_date"] = $row["date"];
    $row["date"] = $this->diafan->_useradmin->get($row["date"], 'created', $row["id"], 'news');
    }
    else $row["no_format_date"] = false;

    $row["tags"] = $this->diafan->_tags->get($row["id"], 'news', 'element', (! empty($row["site_id"]) ? $row["site_id"] : 0));
    $row["rating"] = $this->diafan->_rating->get($row["id"], 'news', 'element', (! empty($row["site_id"]) ? $row["site_id"] : 0));
    }


    А затем уже во вьюшке делаем спокойно так (и уже не о чем не беспокоимся)
    Код
    if (! empty($row['no_format_date']))
    {
    $pieces = explode(".", $row["no_format_date"]);
    $pieces[0] = ! empty($pieces[0]) ? $pieces[0] : '';
    $pieces[1] = ! empty($pieces[1]) ? $pieces[1] : '';
    $pieces[2] = ! empty($pieces[2]) ? $pieces[2] : '';
    echo $pieces[0] . '<br />' . $pieces[1] . '/' . $pieces[2];
    }


    Да, здесь конечно надо обратить внимание в каком формате храниться дата в базе данных, можно и это предусмотреть, путем обратных преобразований. Но это уже для prodaction версий :)
  • 16 августа 2017 г.
  • В большинстве случаев пятисотые ошибки связаны с работой связки nginx и apache. Но не суть. К Вашей проблеме это не сильно относится. Данная ошибка говорит лишь о том, что Вы не корректно используете ajax. Чтобы ответить более конкретно, то надо видеть всю картину. Без этого остается только гадать.

    Могу лишь посоветовать сделать так: прогоните тот же алгоритм, но без ajax. Тогда ошибка вылезет в отчете и все станет Вам понятно.

    Успехов.
  • 16 августа 2017 г.
  • Все в Вашей власти, если Вы знаете, что делаете. Только используя инструменты, которые уже есть в cms, Вы автоматом не задумываетесь о многих сопутствующих вещах, например, хэш пользователя и т.п.
  • 10 августа 2017 г.
  • В дефолтной версии cms, в административной части сайта есть раздел "Баннеры". Там уже есть две категории:
    1. "Слайдер на главной"
    2. "Сквозной баннер"
    Вывод этих баннеров описан в документации.

    Цитата
    Я расчитывал, что будет что-то вроде скроллинга.

    Если Вы под "скроллингом" подразумеваете слайдер, то пример можете взять с дефолтной версии.
    Если нужны другие эффекты, то требуется соответствующий js-скрипт (самописный или иной).
    Если обычный скроллинг, тогда выводите все баннеры в одном блоке. Задаете ему соответствующий стиль. Например:
    Код
    height: 100px; overflow: auto;
  • 04 августа 2017 г. , редакция: 1501840808
  • Все зависит от настроек хоста.
    Полагаю, что из вне, Вы не соединитесь с базой данных (по крайней мере я делаю такие настройки для своих нужд).
    Но однозначно будет соединение с хоста. Поэтому (я бы так сделал) на хост, в отдельную дирректорию, установите софт для работы с базой данных. Эту директорию лучше закрыть. Параметры подключения возьмете из конфига cms. Если нет доступа к конфигу, то через скрипт его все равно получить можно. Так что - это не проблема.
    Успехов.
  • 01 августа 2017 г.
  • Не видя код - сложно предугадать, что Вам необходимо сделать. Скорее всего в корневой папке (директории) сайта есть папка "custom". В указанной папке есть папка Вашей активной темы. В ней папка "themes". И уже в этой папке, скорее всего, файл site.php. Открываем его редактором и комментируем шаблонный тег вывода фильтра товаров. Скорее всего вот это
    Код
    <insert name="show_search" module="shop">
    должно стать таким
    Код
    <!--
    i_nsert name="show_search" module="shop" -->


    Успехов.
  • 01 августа 2017 г.
  • Если честно, то интересует ответ на вопрос: каковы познания хотя бы в html и css? Если таковых познаний пока нет, то лучше обратитесь к друзьям - помогут, так как на практике это занимает минуту, а в теоретических объяснениях может занять на мноОого больше :)
  • 01 августа 2017 г. , редакция: 1501535875
  • По данному вопросу не обязательно беспокоить ТП, они и так перегружены.

    На мой взгляд сама установка любого дополнения не представляет ни какой сложности. Только сделайте предварительно резервную копию файлов сайта и базы данных на случай, если будет необходимо откатить все к предыдущему состоянию. Обращаю внимание: полноценную копию сайта!

    И так, скачиваем желанный архив со страницы addons. Деактивируем свою тему (или темы) через административную часть сайта. Создаем новую тему с названием, например, как у дополнения. Затем активируем созданную тему, после активируем свои темы (именно в таком порядке). Далее распаковываем архиватором полученный архив дополнения и копируем все файлы распакованного дополнения в папку темы Дополнения (/custom/название_новой_темы/). Теперь идем в административную часть сайта - раздел "Модули и ДБ", закладка "Восстановление БД" и жмем восстановление БД. Ничего страшного не произойдет - система сверит структуру базы данных и воссоздаст необходимое, если это потребует Ваше дополнение. Далее в административной части сайта, в разделе "Параметры", закладке "Режим разработки" сбрасываем кэш. Вот и все. Пока все :))

    Теперь смотрим на сайт. Если все хорошо, то все равно делаем то, что, если было бы не все хорошо. А именно, сравниваем файлы темы дополнения с файлами Вашей темы с учетом кастомизированных файлов. Если пересекающихся файлов нет - то все здорово. Если Вы все же нашли одинаковые файлы (здесь подразумивается, что кастомизированный и не кастомизированный файл - это одно и тоже), то сравниваем их содержание и объединяем их. Если не знаем как, то просим соседа помочь (это уж как договоритесь). Думаю, что и разработчик Дополнения также не откажет в консультации (конечно в пределах разумного), но а за разумное вознаграждение - уж точно не откажет в практическом решении задачи.

    Вот теперь все, как говорится: наслаждайтесь и прибудет с Вами успех.
  • 01 августа 2017 г. , редакция: 1501573825
  • А в чем Вы видите сложность? В распаковке архива? В копировании файлов? В запуске процедуры восстановления структуры базы данных (просто кнопку нажать)? В сравнении названий файлов? Возможно в сравнении содержимого файлов?

    Скажу от души: для меня php, javascript и подобные веб языки программирования вообще считаются недоязыками. Для их понимания требуется 15-20 минут. И это даже много!!! Человек, который использует данные языки в течении месяца может считать себя профессионалом. Вопрос лишь в умении излагать свои желания на этих языках.

    Вот как-то так.
  • 01 августа 2017 г. , редакция: 1501574669
  • Вникать или не вникать конечно каждый пользователь решает самостоятельно. Возможно желание сэкономить играет важную роль, но на мой взгляд скупой платит дважды! Мне думается, что есть разделение труда, и пусть каждый занимается своим делом - профессионально. На мой взгляд, владельцам интернет магазинов не следует вникать в программирование, так как не хватит время на развитие своего бизнеса.

    Так, что не спорю с Вами, но считаю, что все зависит от мативировки. Если нужно вникнуть, то это не сложно. Просто необходимо потратить время.
  • 01 августа 2017 г.
  • Цитата
    всё делается в админке
    Все верно. Но, лучше закачать через ftp. Это частное мнение, не более.

    Поясню, почему сначала активация пустой темы, затем закачка по ftp, после восстановление БД.

    Такой алгоритм страхует от файла install.sql в дополнении. Дело в том, что он запускается при каждой активации темы. Если в этом файле присутствует корректировка структуры БД, то при первой активации будет все ОК. При последующих активациях будут ошибки, которые не увидет обычный пользователь. В принципе эти ошибки ничего плохого не сделают. Как бы, фиг с ними. Но, если в install.sql помимо корректировки структуры БД есть дополнение записей БД, то при повторных активациях эти записи будут вносится и вносится в БД. Т.е. уже будет пладиться мусор в лучшем случае. В худшем возможна корректировка значений (например, телефона интернет магазина, его адреса и т.п.).

    Исходя из изложенного - на мой взгляд, описанный механизм выше предусматривает почти все возможные мелкие проблемки.
  • 02 августа 2017 г.
  • Цитата
    куда рыть
    Отключите все активные темы, обновите cms, сбросте кэш. Все заработает. Поэтому нужно "рыть" в сторону своих корректировок. Не видя код, сказать в слепую что-то определенное не представляется возможным.
  • 24 июля 2017 г. , редакция: 1500875234
  • На странице характеристики, где Вы задаете варианты ее значений, есть режим быстрого редактирования. С помощью данного режима можно из буфера обмена вставить разом все значения. Единственное стоит помнить, что есть лимит на количество значений. Если не ошибаюсь, на текущий момент лимит равен 300 значений.

    Успехов.
  • 23 июля 2017 г.
  • Если Вы пытаетесь загрузить новое изображение, то такой файл необходимо заблаговременно разместить на хосте в папке импорта изображений (такая папка определяется в настройках описания импорта/экспорта). Подробнее читайте здесь.
  • 19 июля 2017 г.
  • На мой взгляд идея не верна.

    Во-первых, клиентам демонстрируется cms с собственными шаблонами (исходя из интересов клиента).

    Во-вторых, сделать то, чтобы нравилось всем, не реально. А реально захломить имеющуюся основу для будущих разработак. Потом нужно будет тратить время на очистку кода, а не сразу приступать к разработкам.

    В-третьих, не целесообразно делать из демонстрационного шаблона платный шаблон. Шаблонов в addons и так не мало.

    В-четвертых, если кому-то нужны какие-либо эффекты на сайт, но разработчик незнает как это делать, то не стоит это продавливать под видом смены дизайна демонстрационного шаблона. Просто разместите заказ в проектах или напрямую обратитесь в diafan (там профессионалы, вопрос лишь в цене).

    В-пятых, система голосования на форуме не предусмотрена. Это максимум можно попытаться организовать в разделе пожеланий. А здесь, я так понимаю планируется вручную считать количество нажатых "Спасибо".

    Пока как-то так.
  • 29 июля 2017 г.
  • Цитата
    А я демку никогда не брал за основу. Проще с нуля верстать по своей сетке чем демку перепиливать.
    Мне действительно интересно: то есть Вы сразу удаляете все css, вьюшки, js-скрипты? Есть ли возможность подсказать, а сколько файлов надо удалить, чтобы начать с чистого листа? Как пример, сейчас завершаю дополнение к cms, которое обладает неплохими эффектами. Так вот, это дополнение на текущий момент скорректировало 117 файлов cms. Интересно, желаемый новый шаблон потребует очистки большего числа файлов, чем текущий?

    Уж, если неуемное желание, то новый шаблом можно было бы сделать в виде кастомной темы, которая заранее инсталировалась в качестве примера. Ну а если он не нужен, то можно одним махом данную тему удалить.

Новости

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

Форум