2010-06-25 6 views
6

제 클라이언트에는 잘 작동하는 ubercart 기반 상점이 있습니다. 내부 물건 때문에 수동으로 각 인보이스에 필드를 추가해야합니다. 모든 인보이스에 표시되는 주문에 맞춤 입력란을 추가 할 수 있는지 여부를 알고 싶습니다.Ubercart Invoice에 사용자 정의 필드 추가

+0

이 필드에 사용자 또는 관리자가 입력해야합니까? – Kevin

+0

관리자 만 가능합니다. –

답변

4

낡은 질문이지만 다른 사람들에게 도움이 될 수 있습니다. 다음 코드를 사용할 수 있습니다.

customer.itpl.php 또는 customer.itpl.php 파일의 첫 번째 체크 아웃은 ubercart/uc_order/templates입니다.

그럼 당신은 모든 제품을 에코 foreach는 루프를 편집하고 자신의 필드를이 방법을 추가 할 수 있습니다

<?php 
    foreach ($order->products as $product) { 
     $nid = ($product->nid); 
     $noderef = node_load($nid); 
     echo $product->title .' : '.$noderef->your_own_field[0]['value']; 
     echo "<br />"; 
?> 

내 Ubercart 설치는 제품의 필드 http://www.mysite.com/admin/content/node-type/product/fields에서 편집 할 수 있습니다.

this issue에 대한 자세한 정보를 찾을 수 있습니다.

0

개인적으로이 변경 작업을 수행하지 않아서 경험이 없지만 다음을 시도해 보겠습니다. (기존 모듈을 수정하여 모서리를 자르고 일부 작업을 피할 수 있지만 이것은 내가 생각할 수있는 가장 깨끗한 방법입니다)

  1. 필드와 주문 번호를 저장하는 모듈을 생성하십시오.
  2. from_alter를 사용하면 사용자가 필드를 편집 할 수있는 방법을 제공하도록 송장 편집 화면을 수정할 수 있습니다.
  3. 송장 템플릿을 사용하여 주문 번호를 기반으로 입력란을 가져옵니다. invoice "system" documentation.

간단한 변화가 아니지만이 패턴을 사용하면 작동하지 않는 업데이트에 대해 걱정할 필요없이 찾고있는 수정 사항을 얻을 수 있습니다.

+0

고마워요.이 일을 끝내는 방법 일 수도 있습니다. 다음 주에 시도해 보겠습니다. –

+0

이 답변이 도움이 되었습니까? 다음과 같은 것에 대해 완전히 잊어 버렸습니다. 그리고 확실히 현상금을 사용할 수 있습니다 :) – mirzu

관련 문제