Перва заглавная остальные пропесные

как в заголовке сделать первую заглавной а остальные прописными
 

{$p.name|capitalize}

вставлял так не получается

2 ответа

  • 2
    replicant 23 марта 2023 12:37 #

    Потому что если в названии будет несколько слов, например "товар подарок 25 см (новый)", то на выходе после такого будет "Товар Подарок 25 См (Новый)". Если были бы кавычки в названии, то искажение тоже произошло бы и появились бы видимые &Quot;

    Даже CSS

    text-transform: capitalize;

    сработает в данном случае чище, по крайней мере кавычку не сделает видимой.

    Данный модификатор оптимально использовать для объединенного поля $name, в котором склеиваются три поля ФИО, но для названий товаров решение неудобное.

    Если задача ставится косметическая, то к заголовкам можно применить что-то подобное, задействовав псевдоэлемент,

    ::first-letter {  font-size: 130%; color: red; text-transform: uppercase; }

    но работает это только с блочным элементом, поэтому местами верстку лучше проверить. Выглядит примерно так ДО и ПОСЛЕ

    • +1
      replicant replicant 23 марта 2023 13:07 #

      Ещё можно попробовать сделать модификатор для smarty по аналогии с ucfirst для PHP. Штатно  {$p.name|ucfirst} не сработает вроде бы.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите