2011-08-17 3 views
0

특정 유형의 각 노드에 대해 Drupal 6에서 연락처 양식을 구성하는 가장 좋은 방법은 무엇입니까? 필드로 전자 메일 주소가있는 "프로필"유형의 CCK 노드가 있습니다. 나는 사용자가 기입하고 반송 주소로 자신의 전자 메일 주소로 보낼 수있는 연락처 양식으로 각 노드에 대한보기를 원합니다 (추가 연락처가 오프 사이트에서 이루어 지도록).Drupal CCK 노드의 사용자 지정 문의 양식

기본적으로 저는 초기 이메일 연락처가 내 사이트를 통해 이루어지기를 원합니다. 수신자가 답장을 보내면 발신자가 연락처 양식을 작성했을 때 입력 한 주소로 이동합니다.

왜 내가 드루팔 (Drupal에 구운 개인 연락처 양식을 사용하지 않는지 물어볼 것입니다. 문제는 제 기관이 로컬 Kerberos 로그인을 사용하기 위해 Drupal 인스턴스를 배포하는 방식입니다. Drupal에서 생성 한 사용자 계정에는 이메일 주소가 없습니다. 그들은 단지 사용자 이름을 가진 기본 스켈레톤 계정을 얻습니다. 나는 사용자가 자신의 사용자 계정 정보를 편집하는 또 다른 경계를 지나치도록 강요하고 싶지는 않습니다. 왜냐하면 그들은 대부분 그렇게하지 않을 것이기 때문입니다.

답변

0

노드 자체와 관련하여 특별히 필요한 것은 없습니다.이 양식에 대한 필드 (from, to, subject, message) 및 사용자 정의 제출자 핸들러가있는 양식입니다. 이 모든 것을 forms API을 사용하여 맞춤 모듈에 구현하여 양식을 만들고 맞춤 제출서를 작성할 수 있습니다. 그리고이 제출에서 당신은 drupal_mail()을 통해 이메일을 보낼 필요가 있습니다 - 이것 좀보세요, 그것은 또한 예제를 제공합니다. That 주제가 양식을 작성하는 데 도움을 줄 수 있습니다. 당신이 특정 NODE_TYPE를 확인하고 기존 사용할 수 있으며, 이전에 만든 형태의 추가 작업 "보기"에 hook_nodeapi를 통해 : 당신이 노드에서이 양식을 배치해야하는 경우

그런 다음, 다음을 수행 할 수 있습니다 필드 값 (전자 메일로 cck 필드 언급)을 사용하여 양식을 미리 채 웁니다. 따라서 사용자가 노드를 볼 때마다이 양식이 표시됩니다.

당신의 작업을 논리적으로 계속 진행한다면, 나는 menu system을보고 전자 메일 양식을 표시 할 노드에 대한 로컬 작업 (탭)을 만드는 것이 좋습니다.

일반적으로 그게 전부입니다. 물론이 방법을 구현하는 다른 방법이 있지만 이해하기 쉽다고 생각합니다.

감사합니다. Slava

+0

감사합니다. Drupal을 처음 접했을 때 맞춤 플러그인을 작성하지 않고도이 작업을 수행 할 수 있기를 기대했지만이 방법이 도움이 될 것이라고 생각합니다. 나는 모듈을 만드는 과정을 연구하기 시작했으며 여기에서 설명하는 내용 중 많은 부분이 더 이해되기 시작했다. 감사. – John