Как уменьшить краткое описание в каталоге до 150 знаков
#1
Отправлено 21 October 2011 - 02:06 PM
echo substr(strip_tags($string), 0, strpos(strip_tags($string), ' ', 150)).'...';
пример функции, но не могу понять где менять нужно, т.е. в каком файле
#3
Отправлено 22 October 2011 - 03:16 PM
реализовал так:
/function/product_function.php строка 1355:
$textSrt = $row["brief_description"];
$textSrt = substr($textSrt, 0, strrpos(substr($textSrt,0, 250), ' '));
//if ($textSrt >= 250)
//{textSrt.= " ";}
//else
//{textSrt.= "...";};
$row["brief_description"] = $textSrt;
ТОЛЬКО не могу задать условие ему, если меньше 250 знаков оставить пусто. если нет, то тавить многоточие
#4
Отправлено 22 October 2011 - 03:51 PM
ТОЛЬКО не могу задать условие ему, если меньше 250 знаков оставить пусто. если нет, то тавить многоточие
это потому что твоя переменная $textSrt - содержит строку, а не кол-во символов в строке.
strlen($textSrt) >= 250
{textSrt.= " ";} - а здесь где "$" ??
#5
Отправлено 22 October 2011 - 05:57 PM
спасибо
пришлось отказаться от резание последнего слово, так как когда знаков меньше 250 он режит его
получалось это:
$textSrt = $row["brief_description"];
$textSrt = substr($textSrt, 0, 250);
$countText = strlen($textSrt);
if ($countText < 250)
{$textSrt.= " ";}
else
{$textSrt.= "...";};
$row["brief_description"] = $textSrt;
#6
Отправлено 22 October 2011 - 07:13 PM
Ну я думаю как-то так
#7
Отправлено 22 October 2011 - 09:17 PM
не стоит изобретать велосипед, в smarty встроенная функция
{$product_brief|truncate:150}
Блеск то что нада, и слова не обрезает и троеточие добавляет НО, что такое 150 - это же не символы.
Меня эти обрезания натолкнули на мысль обрезать заголовки заголовки в кратком описании товаров, чтобы все товары выводились аккуратно одинаковыми блочками. Обычно я делал это с помощью css, т.е. overflow .......
в смарти если ну указать 150 то поумолчанию должно обрезать на 80 символов, у меня текст исчез вообще - когда указал 195 отобразилось в каждом заголовке разное кол-во символов - так и понял что этот параметр означает.
Пока решил вернуться к overflow ......
#8
Отправлено 22 October 2011 - 09:51 PM
Блеск то что нада, и слова не обрезает и троеточие добавляет НО, что такое 150 - это же не символы.
Меня эти обрезания натолкнули на мысль обрезать заголовки заголовки в кратком описании товаров, чтобы все товары выводились аккуратно одинаковыми блочками. Обычно я делал это с помощью css, т.е. overflow .......
в смарти если ну указать 150 то поумолчанию должно обрезать на 80 символов, у меня текст исчез вообще - когда указал 195 отобразилось в каждом заголовке разное кол-во символов - так и понял что этот параметр означает.
Пока решил вернуться к overflow ......
я просто не помню правильное написание, давно делал
вот ссылка на офф мануал truncate | Smarty
там подробно расписаны параметры
#9
Отправлено 22 October 2011 - 10:00 PM
#10
Отправлено 10 January 2012 - 06:03 PM
не стоит изобретать велосипед, в smarty встроенная функция
{$product_brief|truncate:150}
Где находится? не могу найти ...