계산 된 필드 드루팔 호스팅
고객 (확인되지 않음) - 2009년 6월 13일 (토) 11시 37분
이 짧은 글에서는 제스 스나이더는 CCK 계산 된 필드 모듈을 사용하여 그녀의 사이트와 무엇을하고 있는지 당신과 함께 공유하기 위하여려고하고있다. 이 방법을 사용하면 노드가보기에 인수를 통과 한 후보기에서 콘텐츠를 표시하도록 설계되어있는 콘텐츠 형식을 만들 수 있습니다.
샘플 시나리오
당신이 교육 사이트를 가정합니다. 이 사이트에 당신은 강사에 대한 콘텐츠 유형과 과정에 대한 콘텐츠 형식을 가지고있다. 당신이 강사 노드를 만들 때 강사는 강사의 바이오 아래에 나열된 가르치는 과정을 원한다. 방금 목록을 표시 할 과정을 기억하고 싶지 않아요.
이 일어날 수 있도록하기 위해, 당신은 볼이있는 강사 콘텐츠 형식이 필요합니다. 보기는 강사의 노드 ID를 기반으로 과정의 목록을 작성합니다. 당신은 또한 당신이 과정에 강사를 연결할 수있는 코스 콘텐츠 형식이 필요합니다. 강사와 코스 사이에 일대일 대응이 있다고 가정합니다.
이 과정은 여러 가지 방법으로 수행 할 수 있습니다. 하나를 들어, 노드 사이의 부모 - 자식 관계를 만들 수 있습니다 노드 상대성 모듈 (node_relativity)를 사용할 수 있습니다. 그러나이 모듈은 노드의 제목에 표시됩니다 것을 제한한다. 아래의 방법을 사용하여보기에 표시되는 내용을 제어 할 수 있습니다 (하나 개의 필드 또는 여러 필드)
전제 조건
이 방법을 사용하려면 CCK (노드 참조 옵션을 사용) 및 뷰를 설치뿐만 아니라 계산 된 필드 모듈이 필요합니다. 또한 CCK 필드 및 뷰와 콘텐츠 형식을 만드는 방법을 알아야합니다. 경우에 당신은 다음 링크에서 리소스를 확인, CCK 또는 뷰 도움이 필요합니다 :
단계
다음은 수행해야 할 단계를 요약 한 것입니다. 계산 된 필드 구성에 관한 세부 사항은 단계 아래에 제공됩니다.
- 강사 콘텐츠 형식을 만듭니다. 이 때, 단지 디폴트 설정을 사용합니다.
- 코스 콘텐츠 형식을 만듭니다.
- 노드 참조 필드를 추가합니다.
- 노드 참조 필드를 구성 할 때 참조 할 수있는 강사 콘텐츠 유형을 선택합니다.
- 당신은 강사와 코스 사이에 일대일 관계를 가정하면, 값 설정 = 1의 수를 둡니다.
Computed_field 정보
당신이 당신의 콘텐츠 형식에 computed_field를 추가 할 때 설정 화면으로 이동합니다. 계산 코드 표시 형식 : 글로벌 설정에서 당신은 두 가지 형태를 볼 상자.
계산 된 코드
양식이 문을 제공합니다 :
코드 사용할 수있는 변수는 다음과 같습니다 $ 노드, $ 필드 및 $의 node_field. 필드의 값을 설정하기 위해 [ '값'] [0]를 설정 node_field $. 여기서 숫자의 합계의 값으로 계산 된 필드의 값을 설정하는 간단한 예 field_a 및 field_b 필드들이있다 : $ node_field [0] '의 값'] = $ 노드 -> field_a [0] '의 값'] + $ 노드 -> field_b [0] '의 값'];
상기 (아래)의 지시에 제공되는 코드는 이러한 지침과 일치한다.
당신이 코딩을 처음 사용하는 경우의이 문장의 각 부분을 살펴 보자.
- $ node_field [0] '의 값을'] -이 변수이다. 변수는보기로 전송됩니다 값이 할당됩니다.
- [0] - 제로로 배열의 제 1 값을 설정할
- [ '값'] - 필드의 값
당신이 NID를 사용하지 않으려면, 당신은 또한 콘텐츠를 다른 필드의 값을 할당 할 수 있습니다. 경우, 예를 들어, 당신은이 상태 필드를 가지고있는 콘텐츠 형식을 가지고있다. 같은 상태가 다른 모든 노드를 표시하는보기를 표시하려는, 당신은 상태 필드의 값으로는 $ node_field [0] [ '값'] 변수를 지정할 수 있습니다. 귀하의 견해는 다음 상태 값 인수와 함께 모든 노드를 표시하도록 설계 될 것이다.
표시 형식
양식이 문을 제공합니다 :
이 코드는 필드의 값으로 인쇄됩니다 $ 디스플레이 변수에 문자열을 할당해야합니다. 필드의 저장된 값은 $의 node_field_item [ '값']이다. 참고 :이 코드는 효과가 없습니다 당신이 "계산 된 값"포맷 옵션을 사용하는 경우.
위의 지침에서 제공하는 코드는 뷰 모듈과 함께 제공되었다. 제시카는 views.module 파일에서 사용할 수있는 기능 보았다.
$ 표시 views_embed_view = ( 'nameofview', '디폴트'$의 node_field_item [ '값']);
당신이 코딩을 처음 사용하는 경우의이 문장의 각 부분을 살펴 보자.
- $ 표시 -이 그 값 computed_field 모듈 deplayed 도착 변수이다.
- views_embed_view () - 뷰 views.module에서 작동
- nameofview -이 뷰의 $ 이름입니다
- 기본 -이 뷰의 $의 display_id입니다
- $의 node_field_item [ '값'] -이 추가 파라미터이다. 이 계산 된 코드 변수입니다 것을 알 수 있습니다. 일이 우선이 변수는,이 경우, 뷰의 요구가 인수하는 값이 할당됩니다이다. 그리고, 변수의 값은 도면에 전송된다.
개요
당신이 상상할 수 있듯이, 당신은 computed_field 모듈을 많이 할 수 있습니다. 제시카는 "www.thebookstudio.com 책과 저자 사이의 연결을 만들 수있는 편리한 방법을 발견했다.