it-swarm.dev

노드 필드의 값을 얻는 방법?

Node.tpl.php에서 나는 원시 값을 얻으려고 노력하고 있지만 문제는 렌더링을 사용할 때입니다.

<?php print render($content['field_price']);?>

field_image 값을 반환 할뿐만 아니라 전체 이미지를 형식화하고 출력합니다.

필드의 원시 가치 만 얻는 방법이 필요합니다. 어떻게하면 되나요?

9
Yalamber

테마가 아닌 실제 가치를 얻으려면 ...

http://api.drupal.org/api/drupal/modules!field!field.module/function/field_get_items/7 을 사용할 수 있습니다

 $my_field_items = field_get_items('node', $node, 'field_my_field');

또는 엔티티 API 모듈 및 entity_metadata_wrapper를 사용하십시오.

 $node_wrapper = entity_metadata_wrapper('node', $node);
 $field_val = $node_wrapper->field_test->value();

http://www.computerminds.co.uk/articles/rendering-drupal-7-fields-right-way 에서도 전리품을 가져 가십시오.

7
gagarine

노드 템플릿에서 원시 값의 경우 $node 객체에 액세스 할 수 있습니다.

<?php print $node->field_price; ?>

구조를보아야 할 경우 <?php print_r($node); ?>을 수행 할 수 있습니다.

또한 이것이 특정 컨텐츠 유형에 대한 것이라면 node.tpl.php 자체 대신 node.tpl.php 변형을 사용해야합니다. 그렇지 않으면 다른 컨텐츠 유형에 존재하지 않는 필드를 표시하려고 시도합니다.

4
Laxman13

devel 모듈 활성화 및 node- {content-type} .tpl.php 사용

<?php print dsm($node); ?>

코드 위에.

모든 $ node 필드를 읽을 수있는 형식으로 볼 수 있습니다

3