modX.sendForward
Последнее обновление not available | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$306 per month—let's make that $500!
Learn moremodX::sendForward¶
Перенаправляет запрос на другой ресурс без изменения URL. Если указанный идентификатор не существует, отправляет на страницу ошибки 404.
Синтаксис¶
API Doc: modX::sendForward()
void sendForward (integer $id, [string|array $options = null])
-
$id
это идентификатор ресурса (вы не можете перенаправить на URL адрес - если вам нужно передать какое-то значение, используйтеmodX::setPlaceholder
и вызовите его на целевом ресурсе). -
$options
предполагается, что это правильный код ответа HTTP, когда он является строкой, например "HTTP/1.1 301 Moved Permanently". Если это массив, вы можете использовать следующие параметры:-
response_code
: код ответа -
error_type
: тип ошибки, смотрите пример ниже, но, например, 404 -
error_header
: Значение поля "Header" страницы ошибки -
error_pagetitle
: Имя заголовка страницы ошибки -
error_message
: Сообщение об ошибке -
merge
: способ объединения ресурса, находящегося в данный момент в$modx->resource
с целевым ресурсом.content
,pub_date
,unpub_date
,richtext
,_content
и_processed
значения исключаются вместе со значением системного параметра forward_merge_excludes. Я не уверен, что это должно использоваться из ядра, и, вероятно, есть лучшие способы объединить данные (например,setPlaceholder
), а затем объединить.
-
-
$sendErrorPage
Следует ли пропустить выполнение sendErrorPage если ресурс не существует.
Пример¶
Отправьте пользователя на ресурс с идентификатором 234, фактически не меняя URL.
$modx->sendForward(234);
Отправьте пользователя на страницу ошибки 404, для фактического идентификатора страницы мы используем значение системной настройки error_page. Если такого значения нет, будет использовано значение переменной site_start
$options = array(
'response_code' => '404 Страница не найдена',
'error_type' => '404',
'error_header' => '404 Не найдена',
'error_pagetitle' => 'Ошибка 404: Страница не найдена',
'error_message' => '<h1>Страница не найдена</h1><p>Запрошенная вами страница не найдена.</p>'
);
$this->sendForward($this->getOption('error_page', $options, $this->getOption('site_start')), $options, false);
Смотрите также¶
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$306 per month—let's make that $500!
Learn more