Forums / National / Russian / Тех. поддержка / Запросы документации

<<<1...5...10...35363738394041>>>

Принимаем вопросы от населения

Denisbox
#556 2023-06-08 11:14

Kabak

Увы, чем могу:)

Есть ещё вот такая статья на css-tricks: https://css-tricks.com/recreating-mdns-truncated-text-effect/

Там более интересное решение, но опять не решает именно вашу задучу.

 

contact: fonts (at) otlab . ru
Kabak
#557 2023-06-08 11:20

по-моему, такая функция существенно упростит жизнь пользователям движка и она должна быть в базовой поставке.

Denisbox
#558 2023-06-08 11:28
#46874 Kabak:

по-моему, такая функция существенно упростит жизнь пользователям движка и она должна быть в базовой поставке.

Полностью согласен.

Если ничего не путаю, там вроде при обрезке текста выводилось всё в виде HTML и если попадал начальный тег, например strong, а конечный уходил в обрезку, то по итогу всё выглядело не очень красиво. Но я четсно особо не заморачивался и в блок выводил содержимое краткого описания с оформлением блока через CSS. Конечно тоже так себе решение заставлять пользователя делать дополнительные телодвижения, но как вариант.

contact: fonts (at) otlab . ru
Kabak
#559 2023-06-08 11:52

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

 

Пример такого использования карточки. они должны быть фиксированного размера и текст который в них отображается нужно обрезать, а для красоты обрезать с учётом HTML.

пример 

выглядит не очень, потому , что получается разный размер текста, а именно где-то две строки, а где-то три строки, но да общее количество символов не превышает указанное мной значение.

 

а вот здесь вот всё шикарно, потому что обезано качественно или изначально контроллируемый объём отображаемых символов не превышающий какую-то длинну.

This post was edited by Kabak (2023-06-12 11:20, 11 months ago)
Kopusha
#560 2023-06-08 14:37

Функцией php обрезать кол-во строк на фронте?

Ну ну.

Kort
#561 2023-06-12 11:00

В блоковом элементе (div или p, например) текст "врапится" в зависивости от его ширины. При адаптивной верстке пользовательского текста вообще загадка сколько будет чего (и будет ли вообще). Поэтому одновременно управлять количеством символов в строке и количеством строк в блоке теоретически можно только, например, через jquery. Практически есть два нормальных решения.

Можно ограничить все одной строкой:

.text-truncate {
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}

Или можно ограничить количество строк:

.limitlines2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}

 

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Kabak
#562 2023-09-10 18:57

Привет

В файле ../themes/имя_темы.php

есть строка

Schemes=default:Default

1) Что она значит ?

Где почитать что может и должно быть в разделе 

[BEGIN_COT_THEME]

...

[END_COT_THEME]

2) Какие обязательные файлы *.tpl  должны быть в каталоге темы ?

Добавлено 2 дня спустя:

cot_rc когда собирает поле для администратора  IP | Правка | Удалить    Где подставляется какой символ будет разделять эти ссылки на действие ?

Добавлено 12 часов спустя:

            $com_admin = ($auth_admin) ? cot_rc('comments_code_admin', array(

                    'ipsearch' => cot_build_ipsearch($row['com_authorip']),

                    'delete_url' => cot_confirm_url(cot_url('plug', 'e=comments&a=delete&cat='.$cat.

                        '&id='.$row['com_id'].'&'.cot_xg()), 'comments', 'comments_confirm_delete')

                )) : '';

 IP | Правка | Удалить

Откуда беррутся разделительные символы и как их переопределить на иные ?  ( это для коментариев )

Добавлено 16 минут спустя:

Cot::$cfg['separator']

В админке можно переопределить  ?

This post was edited by Kabak (2023-09-13 08:49, 8 months ago)
Kort
#563 2023-09-14 05:13
  1. Цветовые схемы в теме оформления
  2. В разделе BEGIN_COT_THEME (или в любом служебном файле Cototi) по умолчанию могут быть строки Code, Name, Description, Category, Version, Date, Author Copyright, Notes, Auth_members, Lock_members, Auth_guests, Lock_guests. Подробно см. в описании функции cot_infoget()
  3. Дефолтная тема Nemesis и имеет обязательные файлы. Все необязательное подтянется из TPL-папок расширений, правда с дефолтной разметкой. Так что более правильным будет иметь в папке с темой все необходимые tpl-файлы, т.е. шаблоны используемых расширений.
  4. Разделитель устанавливается в админке: Конфигурация -> Настройки темы. Переопределить "по-быстрому" можно, например, в php-файле темы:
Cot::$cfg['separator'] = '//';

 

SED.by - создание сайтов, разработка плагинов и тем для Котонти
This post was edited by Kort (2023-09-14 06:12, 8 months ago)
Kabak
#564 2023-09-26 18:56
#46902 Kort:

В блоковом элементе (div или p, например) текст "врапится" в зависивости от его ширины. При адаптивной верстке пользовательского текста вообще загадка сколько будет чего (и будет ли вообще). Поэтому одновременно управлять количеством символов в строке и количеством строк в блоке теоретически можно только, например, через jquery. Практически есть два нормальных решения.

Можно ограничить все одной строкой:

.text-truncate {
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}

Или можно ограничить количество строк:

.limitlines2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}

 

Как гораничить количество символов в строке с помощью CSS ?

Argont
#565 2023-09-26 22:41
#47113 Kabak:

Как гораничить количество символов в строке с помощью CSS ?

конечно я и сам прибегаю к не стандартным решениям, но зачем через каскадные стили таблиц?

в котонти делается все просто, если НЕ лезть в движок:

карточка статьи page.tpl

{PAGE_TEXT|cot_string_truncate($this, '180')} // 180 символов
{PAGE_SHORTTITLE|cot_string_truncate($this, '18')} // 18 символов
{PAGE_DESC|cot_string_truncate($this, '24')} // 24 символа

списки статей page.list.tpl

{LIST_ROW_TEXT|cot_string_truncate($this, '180')} // 180 символов
{LIST_ROW_SHORTTITLE|cot_string_truncate($this, '18')} // 18 символов
{LIST_ROW_DESC|cot_string_truncate($this, '24')} // 24 символа

 

можно и truncate через js, но тут от конкретной задачи...

 

Добавлено 22 минуты спустя:

#46876 Kabak:

выглядит не очень, потому , что получается разный размер текста, а именно где-то две строки, а где-то три строки, но да общее количество символов не превышает указанное мной значение.

что бы не было разного размера текста, лишаем его тегов, задающих ему форматирование, таких как <p>, <br>, <span>, <b>, <strong>, <blockquote> и .д.

другими словами, получаем чистый текст с колонки "page_text", из таблицы "prefix_pages" нашей БД.

{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}

примечание: в данном случае, функция будет примененна к тому, что было набрано, например в визуальном редакторе CKEditor. Но если, вышеуказанную конструкцию поместить в HTML-блок, - стили этого блока будут унаследованны, как и HTML-теги. например

<div class="name-class-css">
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</div>

<div class="name-class-css">
  <span class="other-class-css">
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
  </span>
</div>

<H1>
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</H1>

<p>
	{LIST_ROW_TEXT|strip_tags|mb_substr($this,'75')}
</p>

тут функция унаследует нагрузку тегов, внутри которых помещенна, но сам "page_text" будет лишен таких тегов (<p>, <h3>, <br>, <small>, <span>, <u>, <sup>, <b>, <strong>, <blockquote> итд) и уже таким образом регулируем для себя количеством символов на 2 строки, на три, как нравится больше ))

 

Добавлено 1 минута спустя:

и что с того, что это реализуем через функции php?

экспертное мнение с нумерованным списком недостатков такого решения будет? ))

иногда поржать над задравшим подбородок разработчиком
This post was edited by Argont (2023-09-27 00:53, 7 months ago)
Kabak
#566 2023-09-27 06:55

Argont , благодарю за ответ. По-моему хорошие варианты решения.

Argont
#567 2023-09-27 07:04
#47116 Kabak:

Argont , благодарю за ответ. По-моему хорошие варианты решения.

рад помочь. получилось?

иногда поржать над задравшим подбородок разработчиком
Kabak
#568 2023-09-27 08:10

Да, лучше и не нужно yes

Kort
#569 2023-09-27 10:32
#47114 Argont:

и что с того, что это реализуем через функции php?

экспертное мнение с нумерованным списком недостатков такого решения будет? ))

Вообще-то вопрос был про CSS. Да и смысл что-то объяснять если включен режим "а вот я так хочу"? Плюс не хочется портить вам момент. Вот здесь с выключенным режимом можно почитать все, что надо с примерами (ахтунг, много букоф, возможны обмороки).

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Argont
#570 2023-09-27 13:55
#47119 Kort:
#47114 Argont:

и что с того, что это реализуем через функции php?

экспертное мнение с нумерованным списком недостатков такого решения будет? ))

Вообще-то вопрос был про CSS. Да и смысл что-то объяснять если включен режим "а вот я так хочу"? Плюс не хочется портить вам момент. Вот здесь с выключенным режимом можно почитать все, что надо с примерами (ахтунг, много букоф, возможны обмороки).

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

Функцией php обрезать кол-во строк на фронте?

Ну ну.

без предметного и конструктивного указания в чем же состоит это "ну-ну"

иногда поржать над задравшим подбородок разработчиком

<<<1...5...10...35363738394041>>>