本文整理汇总了PHP中Magento\Framework\App\Response\Http::setRedirect方法的典型用法代码示例。如果您正苦于以下问题:PHP Http::setRedirect方法的具体用法?PHP Http::setRedirect怎么用?PHP Http::setRedirect使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Framework\App\Response\Http
的用法示例。
在下文中一共展示了Http::setRedirect方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: afterGetLoadedProductCollection
/**
* @param \Magento\Eav\Model\Entity\Collection\AbstractCollection $resultCollection
* @param \Magento\Catalog\Block\Product\ListProduct $subject
* @return \Magento\Eav\Model\Entity\Collection\AbstractCollection $resultCollection
*/
public function afterGetLoadedProductCollection(\Magento\Catalog\Block\Product\ListProduct $subject, $resultCollection)
{
if ($resultCollection->count() == 1) {
/** @var \Magento\Catalog\Model\Product $product */
$product = $resultCollection->getFirstItem();
$this->response->setRedirect($product->getProductUrl());
}
return $resultCollection;
}
示例2: handleSessionException
/**
* Handler for session errors
*
* @param \Exception $exception
* @return bool
*/
private function handleSessionException(\Exception $exception)
{
if ($exception instanceof \Magento\Framework\Exception\SessionException) {
$this->_response->setRedirect($this->_request->getDistroBaseUrl());
$this->_response->sendHeaders();
return true;
}
return false;
}
示例3: handleSessionException
/**
* Handler for session errors
*
* @param Bootstrap $bootstrap
* @param \Exception $exception
* @return bool
*/
private function handleSessionException(Bootstrap $bootstrap, \Exception $exception)
{
if ($exception instanceof \Magento\Framework\Session\Exception) {
$path = $this->getBaseUrlPath($bootstrap->getParams());
$this->_response->setRedirect($path);
$this->_response->sendHeaders();
return true;
}
return false;
}
示例4: doFallbackCorrection
/**
* Run fall-back correction
*
* @return bool
*/
public function doFallbackCorrection()
{
$queryText = $this->queryHelper->getQueryText();
$fallbackText = $this->queryHelper->fallback($queryText);
if ($fallbackText && $fallbackText != $queryText && $fallbackText != $this->queryHelper->getFallbackText()) {
$url = $this->queryHelper->getFallbackUrl($queryText, $fallbackText);
$this->response->setRedirect($url);
return true;
}
return false;
}
示例5: authenticate
/**
* Authenticate controller action by login customer
*
* @param bool|null $loginUrl
* @return bool
*/
public function authenticate($loginUrl = null)
{
if ($this->isLoggedIn()) {
return true;
}
$this->setBeforeAuthUrl($this->_createUrl()->getUrl('*/*/*', ['_current' => true]));
if (isset($loginUrl)) {
$this->response->setRedirect($loginUrl);
} else {
$arguments = $this->_customerUrl->getLoginUrlParams();
if ($this->_session->getCookieShouldBeReceived() && $this->_createUrl()->getUseSession()) {
$arguments += ['_query' => [$this->sidResolver->getSessionIdQueryParam($this->_session) => $this->_session->getSessionId()]];
}
$this->response->setRedirect($this->_createUrl()->getUrl(\Magento\Customer\Model\Url::ROUTE_ACCOUNT_LOGIN, $arguments));
}
return false;
}
示例6: setRedirect
/**
* {@inheritdoc}
*/
public function setRedirect($url, $code = 302)
{
$pluginInfo = $this->pluginList->getNext($this->subjectType, 'setRedirect');
if (!$pluginInfo) {
return parent::setRedirect($url, $code);
} else {
return $this->___callPlugins('setRedirect', func_get_args(), $pluginInfo);
}
}