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

Формирование Description

  • 01 марта 2017 г.
  • Здравствуйте, Степан. Для новостей - части новости, для статей части статьи, для товаров части описания продукта и т.д.
  • 25 ноября 2017 г.
  • Привет. Подскажите пожалуйста кто-нибудь, в какую сторону копать, где формируется description? Странно что из коробки нет возможности генерировать description из анонса! Анонс от по сути и есть краткое описание. Спасибо.
  • 26 ноября 2017 г.
  • Я в /includes/model.php делал такое
    Код
    /**
    * Определяет значения META-тегов элемента
    *
    * @param array $row данные о текущем элементе
    * @return void
    */
    protected function meta($row)
    {
    $this->result["timeedit"] = $row["timeedit"];
    $this->result["titlemodule"] = $row["name"];
    $this->result["edit_meta"] = array("id" => $row["id"], "table" => $this->diafan->_site->module);

    if(! empty($row["canonical"]))
    {
    $this->result["canonical"] = $row["canonical"];
    }
    elseif($this->diafan->_route->dpage > 1 || $this->diafan->_route->rpage > 1 || $this->diafan->_route->sort)
    {
    $this->result["canonical"] = $this->diafan->_route->current_link(array("dpage", "sort", "rpage"));
    }
    if(! empty($row["noindex"]))
    {
    $this->result["noindex"] = $row["noindex"];
    }

    $config_title = $this->diafan->configmodules("title_tpl");
    $config_keywords = $this->diafan->configmodules("keywords_tpl");
    $config_descr = $this->diafan->configmodules("descr_tpl");

    if($this->diafan->configmodules("cat") && (
    ! $row["title_meta"] && strpos($config_title, '%category') !== false
    || ! $row["keywords"] && strpos($config_keywords, '%category') !== false
    || ! $row["descr"] && strpos($config_descr, '%category') !== false
    || ! $row["title_meta"] && strpos($config_title, '%parent_category') !== false
    || ! $row["keywords"] && strpos($config_keywords, '%parent_category') !== false
    || ! $row["descr"] && strpos($config_descr, '%parent_category') !== false))
    {
    $cat = DB::query_fetch_array("SELECT parent_id, [name] FROM {%h_category} WHERE id=%d LIMIT 1", $this->diafan->_site->module, $row["cat_id"]);
    $category_name = $cat["name"];
    }
    else
    {
    $category_name = '';
    }
    if(! $row["title_meta"] && strpos($config_title, '%parent_category') !== false
    || ! $row["keywords"] && strpos($config_keywords, '%parent_category') !== false
    || ! $row["descr"] && strpos($config_descr, '%parent_category') !== false)
    {
    $parent_category_name = DB::query_result("SELECT [name] FROM {%h_category} WHERE id=%d LIMIT 1", $this->diafan->_site->module, $cat["parent_id"]);
    }
    else
    {
    $parent_category_name = '';
    }

    $parent_category_name_dash = ($parent_category_name ? ' — '.$parent_category_name : '');
    $category_name_dash = ($category_name ? ' — '.$category_name : '');

    $this->result["title_meta"] = $row["title_meta"];
    if (! $row["title_meta"] && $config_title)
    {
    $this->result["title_meta"] = str_replace(
    array('%name', '%category', '%parent_category'),
    array($row["name"], $category_name_dash, $parent_category_name_dash),
    $config_title
    );
    }

    $content_text = strip_tags(DB::query_result("SELECT text1 FROM {shop} WHERE id=%d LIMIT 1", $row["id"]));

    $this->result["keywords"] = $row["keywords"];
    if (! $row["keywords"] && $config_keywords)
    {
    $this->result["keywords"] = str_replace(
    array('%name', '%category', '%parent_category', '%text'),
    array($row["name"], $category_name_dash, $parent_category_name_dash, $content_text),
    $config_keywords
    );
    }

    $this->result["descr"] = $row["descr"];
    if (! $row["descr"] && $config_descr)
    {
    $this->result["descr"] = str_replace(
    array('%name', '%category', '%parent_category', '%text'),
    array($row["name"], $category_name_dash, $parent_category_name_dash, $content_text),
    $config_descr
    );
    }
    }

    Вероятно, можно делать что-то наподобие

Новости

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

Форум