База знаний
Поиск по категориям базы знаний
Все .htaccess 1C Bytehand CommerceML IIS nginx show_block SMS Sphinx Артикул Доступность Кастомизация Кастомизация админки Корзина Купить в один клик Магазин Меню Модуль МойСклад Мультиязычность Наличие товара Объявления Пагинация Пароль Перенос сайта Поиск Поиск по объявлениям Пользователи Права на файлы Сжатие CSS-файлов Скидка Создание товара Сортировка Статьи Счетчик Тема Установка Файловый архив Фильтр Шаблон Шаблон письма Шаблонный тегПроблема
Возник вопрос с модернизацией "Страница пользователя". По умолчанию там отображается все содержимое заказа, а нам требуется выводить только "Дата, Номер". "Номер" должен быть ссылкой. При клике необходимо переадресовывать на страницу с отображением полного заказа.
Как выполнять обработку полученных параметров (например, ID заказа) и на основании этих данных формировать страницу с его содержимом.
Решение
Если адрес страницы пользователя site.ru/userpage/ То передавать id заказа можно в переменной $this->diafan->show
так: site.ru/userpage/show13/. Чтобы в модуле можно было использовать эту переменную, нужно в контроллере (файл modules/userpage/userpage.php) указать:
public $rewrite_variable_names = array('show');
И там же в функции init()
вызывать функцию модели, формирующие данные для страницы заказа:
if ($this->diafan->_route->show)
{
$this->model->id();
}
else
{
$this->model->show();
}
В функции id()
(файл modules/userpage/userpage.model.php) закрашивайте данные о заказе, записывать их в переменную $this->result
. В шаблоне эта перменная доступна как $result
. Имя шаблона нужно указать в переменной $this->result["view"]
.
Например
$this->result["view"] = 'id';
подключит шаблон modules/userpage/views/userpage.view.id.php.
Пример можно посмотреть в модуле "Новости".