We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 981
    • 30 Posts
    Мучаю NG!Redirect
    Суть в том, что мне нужно сделать редирект сложных вызовов со старого сайта,
    аля /catalog/?lang=rus&service=3&c_id=6

    И тут я столкнулся с тем, что не просто в самом NG!Redirect это нереализовано,
    но даже в MODX API я не нашел решения, как получить полный текст запроса.
    Максимум можно получить /catalog. И все sad.
      • 981
      • 30 Posts
      Правильный ответ:
      $_SERVER["REQUEST_URI"];
      



      Таким образом, тело NG!Redirect выглядит следующим образом:

      $e = &$modx->Event;
      switch ($e->name) {
          case "OnPageNotFound":
              $requestedURL = $_SERVER["REQUEST_URI"];
      
        /*    $modx->sendAlert('alert','admin','admin',$_SERVER["REQUEST_URI"],$requestedURL,1); */
      
              if (isset($sites[$requestedURL])) {
                  if( is_numeric($sites[$requestedURL]) ){
                      $url = $modx->makeUrl($sites[$requestedURL],'','','full');
                  }
                  else{
                      $url = $sites[$requestedURL];
                  }
                  $this->sendRedirect($url, 0, 'REDIRECT_HEADER', 'HTTP/1.1 301 Moved Permanently');
                  exit;
              }
              break;
              
          default :
              return; // stop here
      }