Страница 1 из 1

[3.1] Изменение тайтлов страниц у расширения

Добавлено: 31.08.2017 23:26
rst
Есть платно написанное расширение. Оно динамически генерирует страницы с контентом с разными параметрами и пагинацией. Переменные для вывода в шаблон названий страниц и их номеров уже есть. На основе этого я сделал везде хлебные крошки. Хочу добавить всем страницам разные тайтлы по аналогии с крошками. Но совершенно не понимаю, как врисовывать их в шаблоне, если сам тайтл формируется в php:

Код: Выделить всё

page_header($this->user->lang['DIRECTORY']);
		$this->template->set_filenames(array(
			'body' => directory.html'));
Подскажите направление, пожалуйста.

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 0:26
Sheer

Код: Выделить всё

page_header('Бла-бла пешу здеся што хачу');

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 0:43
rst
Т.е. в кавычки берем условную конструкцию и она исполняется? Ушел проверять.

Отправлено спустя 2 минуты 27 секунд:
ээммммм, в php же не работают шаблоны? Те надо использовать условные конструкции и переменные на php?
А нельзя передать формирование тайтла в шаблон? События там точно есть.

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 0:52
Sheer

Код: Выделить всё

$header = ($fid) ? 'Мой заголовок' : 'Другой заголовок';
page_header($header);

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 1:47
rst
Суть понял. Но это тот ещё ад. ) Часть нужных переменных берется из базы в виде линков. Чтобы их переделать в текст (для вывода в тайтл нужен текст) надо заново переопределять. Как-то я не готов морально. )
Попробуем зайти с другой стороны и упростить себе задачу. У меня есть переменная страницы, которая формируется вот так:

Код: Выделить всё

'PAGE_NUMBER'	=> $this->pagination->on_page($count, $per_page, $start),
В ней откуда-то берется тег <strong>. В коде вроде он нигде не конкатинируется, значит, переменная в базе определена с этим тэгом. Мне же переменная нужна без тегов. Как очистиить $count и $start от тэгов?

Формируются вроде так:

Код: Выделить всё

$count = (int) $this->db->sql_fetchfield('total');
$start		= $this->request->variable('start', 0);
При этом далее по коду нет ничего такого, что бы приклеивало <strong> ((

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 2:24
Sheer
rst писал(а): 01.09.2017 1:47откуда-то берется тег <strong>
Отсюда
language/ru/common.php

Код: Выделить всё

	'PAGE_OF'				=> 'Страница <strong>%1$d</strong> из <strong>%2$d</strong>',
Номер текущей страницы можно получить так

Код: Выделить всё

$current_page_number =  $this->pagination->get_on_page($per_page, $start);

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 16:37
rst
Ништяк, всё отлично получилось, спасибо. С номером тоже понял.
Последний вопрос, наверное, идиотский. Если есть переменная, содержащая ссылку на профиль юзвера в виде:

Код: Выделить всё

<a href="./memberlist.php?mode=viewprofile&u=7020" class="username">xxxx</a>
можно ли отсюда выдернуть строку xxxx?

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 17:16
Sheer
Можно. Только у меня тоже идиотский вопрос. А зачем? Если это значение уже где-то определено, иначе как бы оно попало в ссылку?

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 17:37
rst
Потому что я не могу понять, как работает get_username_string - она требует 3 аргумента - ничего не понятно (

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 17:49
Sheer

Код: Выделить всё

$user_name = get_username_string('full', $pic['user_id'], $pic['username'], $pic['user_colour']);
Что такое user_id, username и user_colour понятно?

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 18:39
rst
Да, я прописываю режим 'username' и беру из функции $pic['username']
А мне выдается ошибка, что мало аргументов.

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 19:27
Sheer
Это не функция, а массив.

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 20:33
Татьяна5
rst писал(а): 01.09.2017 18:39А мне выдается ошибка, что мало аргументов.
В функции get_username_string должно быть 4 аргумента, независимо от того, что в результате хотим получить

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 21:16
rst
Теперь понял. Всё получилось. Я думал она может выборочно вытаскивать.

Re: [3.1] Изменение тайтлов страниц у расширения

Добавлено: 01.09.2017 22:22
Татьяна5
Может выборочно возвращать значения, но аргументы передавать в любом случае надо все заявленные