노드 본문을 어떻게 인쇄합니까? [닫은]


11

페이지에 노드 본문을 인쇄하는 방법을 해결하기 위해 고심하고 있습니다.

나는 보통 이와 같은 것을 사용 print $node->field_manufacturer[0]['view'];하지만 노드의 본문을 인쇄하는 방법을 잘 모르겠습니다.

어떻게하면 되나요?

답변:


3

다음을 작성하여 노드의 전체 구조와 내용을 볼 수 있습니다.

<pre><?php print_r($node); ?></pre>

그리고 적절하다고 생각되는 것을 선택하십시오.

노드 본문을 인쇄하려면을 사용해야합니다 $node->content['body']['#value'].


나는 그것을 시도했다. 모든 정보가 나타납니다. 특히 내가 만든 사용자 정의 필드. 그러나 본문 (항상 거기에있는 필드)을 인쇄하는 방법을 정확히 모르겠습니다.
Sam Warren

1
ID는 내 자신의 질문에 대답하지만 제한이 나를 막았습니다 : # 이것은 나를 위해 일했습니다 : print $ node-> content [ 'body'] [ '# value'];
Sam Warren

16

Drupal 7의 경우 더 나은 스타일은 field_get_items를 사용하는 것입니다. 예 :

<?php
  $body = field_get_items('node',$node, 'body');
  print $body[0]['value'];
?>

14

Drupal 7에서 이것을 시도하십시오.

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

안녕하십니까. 코드 전용 답변은 최선의 답변이 아닙니다. 이 스 니펫이 OP 문제에 정확히 어떻게 응답해야하는지 설명해 주시겠습니까?
Mołot

render일반적으로 .tpl.php템플릿 내에서 렌더링 배열의 레이아웃 정보를 사용하여 요소를 형식화하는 데 사용됩니다 ( 예 : themery.com/dgd7/advanced-theming/render
Maine

10

경우 $node에, 예를 들면 얻어지는 노드 목적 node_load()드루팔 7은 이것의 구조이다 $node->body.

스크린 샷

스크린 샷에 사용 된 노드에 설정된 언어는 영어이며 입력 형식은 전체 HTML입니다. 내가 알 수있는 한, 본문의 내용은 노드에 대해 설정된 언어에 관계없이 항상 "und"색인에 포함됩니다.

Drupal 6에서 $node->body문자열입니다.

hook_nodeapi('view')(Drupal 6) 또는 hook_node_view()(Drupal 7) 을 구현 한 경우 본문의 내용이 각각 $node->content['body']['#value'], 및로 표시 $node->content['body'][0]['#markup']됩니다.

스크린 샷


3

드루팔 7 :

 <?php print $node->body['und'][0]['value'] ?>

LANGUAGE_NONE 및 und 대신
GwenM

0

일반적으로 다음이 작동합니다.

<?php print $node->body['value']; ?>

그냥 해봤 어 오류는 나타나지 않지만 ">"를 제외한 어떤 내용도 나타나지 않습니다.이 문제의 원인은 무엇입니까?
Sam Warren

0

Drupal 6을 사용하는 경우 약간 늦었지만 다음을 시도하십시오.

     <?php print $node->content['body']['#value'] ?>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.