Переменая, хранящая урл текущей страницы

Есть любые вопросы, связанные со стилями/темами для phpBB 3.0.x? Задайте их здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
ONIKS
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 1 месяц
Благодарил (а): 2 раза

Переменая, хранящая урл текущей страницы

Сообщение ONIKS »

Добрый день!

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

Спасибо!
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение MIT »

Можно получить название выполняемого файла: {SCRIPT_NAME}.
Или открой файл includes\functions.php и смотри что выводит функция page_header.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Sheer »

Это тут $user->data['session_page']
Пример:

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

<?php
/**
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

$user_id = ($user->data['user_id']);
$user_name = ($user->data['username']);

$session_id = ($user->data['session_id']);
$session_page = ($user->data['session_page']);

print "Uid $user_id Name $user_name  page $session_page<br />";
?>
ONIKS
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 1 месяц
Благодарил (а): 2 раза

Re: Переменая, хранящая урл текущей страницы

Сообщение ONIKS »

Sheer, Спасибо, но шаблоны вроде бы не подтягивают эти переменные. *Или Я не знаю как...*

Добавлено спустя 1 минуту 56 секунд:
MIT писал(а):Можно получить название выполняемого файла: {SCRIPT_NAME}.
Или открой файл includes\functions.php и смотри что выводит функция page_header.
Благодарю! Особенно за includes\functions.php - теперь буду знать, где задается список переменных, которые можно юзать в шаблонах. :)
Правда что-то пока то что нужно не получается, но Я еще с этим повоюю...
Аватара пользователя
Di_Mok
Former team member
Сообщения: 814
Стаж: 16 лет 6 месяцев
Откуда: Родной Гондурас ;)
Благодарил (а): 147 раз
Поблагодарили: 118 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Di_Mok »

ONIKS, а что ты творишь, если не секрет?
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение MIT »

ONIKS писал(а):которые можно юзать в шаблонах
Юзать можно куда как более широкий спектр переменных, в этой функции выводятся только общие.
ONIKS
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 1 месяц
Благодарил (а): 2 раза

Re: Переменая, хранящая урл текущей страницы

Сообщение ONIKS »

Где можно найти остальные?
Есть ли где-то более-менее формализованный их список?
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение MIT »

Как такового списка нет, можешь составить, если хочешь.
Все данные выводятся в шаблон функцией assign_vars класса template, т.е. можешь по всем файлам искать строку

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

$template->assign_vars(array(
ONIKS
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 1 месяц
Благодарил (а): 2 раза

Re: Переменая, хранящая урл текущей страницы

Сообщение ONIKS »

Спасибо!
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Sheer »

ONIKS писал(а): *Или Я не знаю как...*
Именно так. Не знаешь...
Вот вышеприведенный измененный пример

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

<?php
/**
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();

$user_id = ($user->data['user_id']);
$user_name = ($user->data['username']);

$session_id = ($user->data['session_id']);
$session_page = ($user->data['session_page']);
page_header('Test');
$template->assign_vars(array(
            'USER'    => $user_name,
            'PAGE'    => $session_page,
        )
    );
$template->set_filenames
        (array
            (
            'body' => 'session_page.html'
            )
        );
page_footer();
?>
И шаблон к нему (для subsilver2), обозвать session_page.html

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

<!-- INCLUDE overall_header.html -->

<table class="tablebg" width="100%" cellspacing="1">
	<tr>
		<th colspan="2" nowrap="nowrap">Test</th>
	</tr>
<tr class="row1">
	<td><strong>User</strong></td>
	<td>{USER}</td>
</tr>
<tr class="row1">
	<td><strong>Current Page </strong></td>
	<td>{PAGE}</td>
</tr>
</table>
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение MIT »

Sheer писал(а):измененный пример
Пример чего? Нипонял.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Sheer »

MIT писал(а):Пример чего?
Вот етаво Переменая, хранящая урл текущей страницы

Добавлено спустя 2 минуты 5 секунд:
Тьфу, блин измененный пример вышеприведенного примера :D
Аватара пользователя
Айдар
Former team member
Сообщения: 1687
Стаж: 15 лет 9 месяцев
Откуда: KZN
Благодарил (а): 93 раза
Поблагодарили: 189 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Айдар »

А есть возможность создать аналогичное условие для разных урлов одной папки? М.б. что-то вроде

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

<!-- IF SCRIPT_NAME == 'gallery/.' -->
Дело в том, что мод галерея кушает очень много ресурса браузера своим скриптом highslide.js, который включается в overall_header.html. Пробовал переставить включение скрипта непосредственно в файлы галереи, но он корректно работает только только между <head></head>.

Добавлено спустя 38 минут 13 секунд:
И еще сейчас попробовал прописать таким образом:

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

<!-- IF SCRIPT_NAME == 'index' and SCRIPT_NAME == 'album' -->
Оказывается, вообще не срабатывает.
In Web We Trust
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение MIT »

И еще сейчас попробовал прописать таким образом:

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

<!-- IF SCRIPT_NAME == 'index' and SCRIPT_NAME == 'album' -->
Оказывается, вообще не срабатывает.
Как одна и та же переменная одновременно может быть равна двум разным значениям?
Аватара пользователя
Айдар
Former team member
Сообщения: 1687
Стаж: 15 лет 9 месяцев
Откуда: KZN
Благодарил (а): 93 раза
Поблагодарили: 189 раз

Re: Переменая, хранящая урл текущей страницы

Сообщение Айдар »

MIT, вместо "and" исползовать "ELSE_IF", получается?
Все равно он, кажется, не понимает скрипта 'album'. :(
In Web We Trust

Вернуться в «Стили для phpBB 3.0.x»