Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Всем привет.

 

Решил сделать краткие описания товаров автоматическими используя при этом информацию их характеристик, категорий и брендов.

 

На данный момент у меня в характеристиках к товару имеется к примеру: "цвет - черный", в описании мне необходимо произвести склонение данного свойства чтобы было черный = черная и т.п.

Подскажите пожалуйста как это правильно реализовать и написать на Smarty??? 

Если у кого-то есть какие-то идеи касательно автоматического краткого описания пишите суда.

 

Спасибо..

Ссылка на сообщение
Поделиться на другие сайты

Может как то по аналогии. 

 

Найдено в интернете: 

 

Нужно сохранить код приведенный ниже в файл function.decliner.php в каталоге с плагинами Smarty

<?php
/**
 * Smarty {decliner} function plugin
 *
 * Type:     function<br>
 * Name:     decliner<br>
 * Purpose:  handle word declines based on quantity number<br>
 * @param array $params
 * <pre>
 * Params:  qty: number of items to choose correct declining form
 *          word: declining forms of word. Ex: день, дня, дней.
 * </pre>
 * @param Smarty
 * @return string
 */
function smarty_function_decliner($params, &$smarty)
{
    // be sure equation parameter is present
    if (empty($params['qty']))
	$params['qty']=0;
    if (empty ($params['word'])) {
        $smarty->trigger_error("decliner: missing required parameter");
        return;
    }
    $forms=explode(',',$params['word']);
    $params['qty'] = abs($params['qty']) % 100;
    $n1 = $params['qty'] % 10;
    if ( $params['qty'] > 10 &&  $params['qty'] < 20) return $forms[2];
    else if ($n1 > 1 && $n1 < 5) return $forms[1];
    else if ($n1 == 1) return $forms[0];
    return $forms[2];

}

/* vim: set expandtab: */

?>

Затем в шаблонах можно использовать вот так.

{decliner qty=4 word='письма, письма, писем'}

 

Ссылка на сообщение
Поделиться на другие сайты

Определить форму склонения на ходу вряд ли удастся. Словари объемные подключать - нелегкое решение. Особенно если встречается цвет "мокрый асфальт" или "морская волна"...

 

Можно значения свойств вводить в разных видах по падежам. Тогда вывод будет совсем несложный. Но в админке работы больше будет. И с экспортом-импортом повозиться...

Ссылка на сообщение
Поделиться на другие сайты

Если на странице товара будет вывод пары десятка свойств, это решение даст дополнительно пару десятков запросов к базе. Надо этот момент как-то оптимизировать...

 

Во вторых, ТС просил
 

...имеется к примеру: "цвет - черный", в описании мне необходимо произвести склонение данного свойства чтобы было черный = черная и т.п.

 

То есть речь не о склонении по падежам, а еще и род надо менять...

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...