2011-03-07 6 views
1
대신 012 홈페이지에 리디렉션됩니다.

이전 버전 (1.1.6)을 대체 할 Magento 1.4.2 카트를 설정 중입니다. 저는 현재 개발 용 컴퓨터에서 일하고 있습니다. 장바구니에 여러 항목이 있고 제품 ​​중 하나에서 "삭제"버튼을 사용하면 항목이 제거되고 302 응답 코드를 통해 기본 URL로 리디렉션됩니다. 대신 '/ checkout/cart /'(이전 버전의 cart가 작동하는 방식) 대신에 store를 사용하십시오.장바구니에서 항목을 제거 할 때 Magento는/checkout/cart/

나는이 리디렉션을 일으키는 두 대의 카트 사이에 어떤 차이점이 있는지 파악하려고 노력 중입니다. 가 또는 관련없는 않을 수도 있음을 내 설정에 대한 몇 가지주의 사항 :

  • 2 개 웹 사이트/저장/저장 전망이 있습니다
  • 나는 현재 하위 URL을 통해 액세스 할 수 있습니다 함께 일하고 있어요 스토어 뷰와 별도의 index.php 파일. 기본 상점 URL은 https://www.thestore.com/이고 내가 작업하는 상점은 https://www.thestore.com/secondstore/index.php/에 있습니다. 이 방법에 익숙하지 않다면 다음과 같이하십시오. Store views by index.php
  • 이전 카트 (1.1.6 실행)는 약간 다른 서버 설정에서 실행 중이므로 설정에서 아무 것도 가능하다고 가정 할 수 있습니다. 예를 들어 핵심 메이지 코드의 수정이 가능합니다.

내가 보는 위치에 대한 힌트를 찾고 있어요 - 관리자 패널을 통해 젠토 구성은, local.xml 변경, 아파치가 규칙을 다시 ...에 어떤 조언는 방법을 찾기 위해 왜이 새로운 카트 ISN '에서 제품을 삭제할 때/store/checkout/cart /로 리디렉션되지 않습니다.

자세한 내용이 필요하시면 보내 주시면됩니다. 우리는 진정으로 함께 해킹 된 펑키 설치 프로그램을 가지고 있으며, 잘못된 일을하고있는 것처럼 들리면 어떻게 설정할지 제안합니다. 감사!

+0

관리 -> 시스템 -> 설정 -> 판매 -> 체크 아웃 : 쇼핑 카트 섹션. "장바구니에 제품 리디렉션 추가 후" 두 상점보기 모두에 사용 설정되어 있습니까? 컨트롤러를 점검하고 모든 타사 모듈 출력을 비활성화 할 수 있습니다. 대부분 업그레이드 경로로 인해 발생합니다. – B00MER

+0

@ B00MER 언급 한 설정이 사용됩니다. 나도 행운과 함께 타사 모듈 출력을 사용하지 못하게 시도하고 컨트롤러 수정이 필요하지 않습니다. 코드를 살펴보면 CartController.php의 deleteAction에있는이 코드는 삭제 후 카트로 리다이렉트되어야한다는 것을 알 수 있습니다.이 코드는 CartController.php : '$ this -> _ redirectReferer (Mage :: getUrl ('*/*')); ' ' 하지만 그렇지 않습니다. – Andy

답변

0

B00MER가 제안한 설정을 확인한 경우 다음 단계는 요청 처리 흐름을 통해 디버깅을 수행하는 것이 필요하다고 생각합니다. Magento 디버그 환경 설정을 얻는 방법에 대한 몇 가지 지침은 previous answer을 읽으십시오.

그 대답은이 상황에서 책임있는 동일한 방법 인 CartControllerupdatePostAction이 포함되어 있기 때문에 관련이 있습니다.

+0

팁을 주셔서 감사 드리며, 디버깅에 대해 자세히 살펴 보겠습니다. 생성 된 요청에서 FireBug를 보면,'updatePostAction'가 'X'(delete) 버튼을 클릭 할 때 어떻게 사용되는지 알지 못합니다. -/store/checkout/cart/delete에 대한 GET 요청 만 보입니다./id/# /'. 내가 놓친 게 있니? – Andy

7

이 오래된 소식이 될 수 있지만, 나는 2011 년 12 월 에 젠토 1.5.10에서 같은 문제를 가지고 내가 성공적으로

CartController을 편집하여 그것을 해결.PHP :

기능 deleteAction

에서 교체

$이 -> _ redirectReferer (마법사 ::의 getURL ('*/*'));

$이 -> _ 리디렉션 ('체크 아웃/카트');

복사 본을 붙여, 당신이 그것을 입력해야합니다, 우리는 모듈을 만들고 다음 변경해야 코어 파일 재 작성을위한 체크 아웃/카트

+0

컨트롤러 메서드를 코어에서 직접 변경하는 대신 올바르게 변경해야합니다. –

0

주위에 작은 따옴표를 사용하지 마십시오.

public function deleteAction() 
{ 
    if ($this->_validateFormKey()) { 
     $id = (int)$this->getRequest()->getParam('id'); 
     if ($id) { 
      try { 
       $this->_getCart()->removeItem($id) 
        ->save(); 
      } catch (Exception $e) { 
       $this->_getSession()->addError($this->__('Cannot remove the item.')); 
       Mage::logException($e); 
      } 
     } 
    } else { 
     $this->_getSession()->addError($this->__('Cannot remove the item.')); 
    } 

    $this->_redirect('checkout/cart'); 
} 

단계별 설명은 자습서를 참조하십시오.

http://www.pearlbells.co.uk/remove-item-magento-cart-redirects-homepage/

관련 문제