Добро пожаловать на сайт SEDBY

[Plugin] Pagelist

Главная / Форумы / Форумы сообщества / Расширения / [Plugin] Pagelist

Плагин вывода страниц через функцию по условиям (аргументам)

Автор Сообщение
admin
Аватар

Администратор
Сообщения: 77

[Plugin] Pagelist
  • #1
  • 18.09.2023 14:29

Функция sedby_pagelist

Благодарности отсутствуют
Kabak
Аватар

Участник
Сообщения: 39

Re: [Plugin] Pagelist
  • #2
  • 12.12.2023 10:09

1)  Создаёт ли Pagelist ссылку на профиль создателя ( владельца ) страницы ?

Если нет, то было бы здорово дополнить pagelist таким тегом.

 

2) Как правильно определить и вывести паджинацию для созданных pagelist элементов ?

 

Например, я хочу на главной странице использую pagelist создать список страниц.

2.1 ) Где указать начиная с какого количества элементов создаётся паджинация ?

у меня просто выводится указанное количество элементов без паджинации для них. 

 

Благодарю. 

Отредактировано: Kabak (12.12.2023 10:29, 11 месяцев назад)
Благодарности отсутствуют
admin
Аватар

Администратор
Сообщения: 77

Re: [Plugin] Pagelist
#138 Kabak:

1)  Создаёт ли Pagelist ссылку на профиль создателя ( владельца ) страницы ?

Если нет, то было бы здорово дополнить pagelist таким тегом.

Можно было бы, если бы было бы нельзя:

<a href="{PAGE_ROW_OWNER_ID|cot_url('users', 'm=details&id=$this')}">
  {PAGE_ROW_OWNER_NAME}
</a>
#138 Kabak:

2) Как правильно определить и вывести паджинацию для созданных pagelist элементов ?

Например, я хочу на главной странице использую pagelist создать список страниц.

2.1 ) Где указать начиная с какого количества элементов создаётся паджинация ?

у меня просто выводится указанное количество элементов без паджинации для них.

Надо просто указать код паджинации, например:

{PHP.c|sedby_pagelist('pagelist.root', 8, 'page_release DESC, page_date DESC', '', 'single', '$this', 1, 0, 0, 'page', '')}
Поблагодарили: 1
Kabak
Аватар

Участник
Сообщения: 39

Re: [Plugin] Pagelist
  • #4
  • 12.12.2023 12:57

Как получить ссылку на профиль пользователя по его ID ?

cot_build_user($id, $userName, $extra_attrs = '');

пример вызова из php

1

cot_build_user{2,"Имя пользователя");

пример вызова из TPL

1

  {PHP|cot_build_user(2,"link to user N2")}

$userName - любой текст который будет выступать в качестве текста работающего ссылкой на профиль пользоватлея с указанным ID.  Если пользователя с указанным ID не существует, то текст $userName будет просто текстом, а не ссылкуй на профиль.

так уже нельзя получить ссылку на профиль пользователля ?

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

Получается, что я в одном месте задаю и количество элементов которое создаёт плагин по моему запросу и это же число указывает сколько элементов я хочу видеть на странице при включении паджинации ?

Или это число указывает на количество элементов при включённой паджинации, а если паджинация отключена, то указывает на количество сколько элементов создавать ?

{PHP.c|sedby_pagelist('pagelist.root', 8,...

Отредактировано: Kabak (12.12.2023 13:21, 11 месяцев назад)
Благодарности отсутствуют
admin
Аватар

Администратор
Сообщения: 77

Re: [Plugin] Pagelist

Ссылку на профиль можно получить двумя способами: простой, через ID и "сложный", через ID и user_name. И первый и второй ведут на одну и ту же страницу пользователя. Второй, избыточный, имеет в урле имя -- вот и вся разница.

sed_pagelist() создает pagetags, usertags и 4 абсолютно необходимых тега:

$t->assign(cot_generate_pagetags($row, 'PAGE_ROW_'));

if (Cot::$cfg['plugin']['pagelist']['usertags']) {
  $t->assign(cot_generate_usertags($row, 'PAGE_ROW_USER_'));
}

$t->assign(array(
  'PAGE_ROW_NUM'        => $jj,
  'PAGE_ROW_ODDEVEN'    => cot_build_oddeven($jj),
  'PAGE_ROW_RAW'        => $row,

  'PAGE_ROW_TEXT_PLAIN' => strip_tags(cot_parse($row['page_text'])),
));

Все остальное элементарно собирается из pagetags и usertags. Ну вот не вижу я необходимости в том, чтобы добавлять туда рандомные готовые ссылки. Тем более, что кому-то сразу же захочется иметь ссылку "автор", а кому-то другой вариант.

Если все же очень хочется, в функции есть хук pagelist.loop -- делай миниплагин и добавляй какие хочешь TPL-теги.

Что касается паджинации:

  1. Если указано только количество, оно и выведется.
  2. Если указано и количество и имя, выведутся все записи с паджинацией. На странице будет указанное количество.

Да, давно уже надо сделать и третий вариант -- комбинацию первого и второго, при котором будет и паджинация и указание количества на странице и указание общего количества (если надо не все). Пока я решаю, как это сделать максимально логично.

Поблагодарили: 1
Kabak
Аватар

Участник
Сообщения: 39

Re: [Plugin] Pagelist
  • #6
  • 12.12.2023 16:13

Волшебное слово включаюўее страніцы = page ?

Благодарности отсутствуют
admin
Аватар

Администратор
Сообщения: 77

Re: [Plugin] Pagelist
  • #7
  • 12.12.2023 16:27

Любое, не вызывающее конфликтов 

Благодарности отсутствуют
Kabak
Аватар

Участник
Сообщения: 39

Re: [Plugin] Pagelist
  • #8
  • 12.12.2023 18:14

т.е.  главное, чтобы в этом поле было что угодно кроме пустоты ?

Благодарности отсутствуют
admin
Аватар

Администратор
Сообщения: 77

Re: [Plugin] Pagelist
  • #9
  • 12.12.2023 22:30

Да, по такому принципу работают практически все аргументы.

Благодарности отсутствуют
Блок пользователя
Регистрация на нашем сайте позволит вам общаться на форумах и получить доступ к другому полезному функционалу
Вы вошли как Гость