Próbuję wypracować sposób drukowania treści węzła na stronie.
Zwykle używam czegoś takiego, print $node->field_manufacturer[0]['view'];ale nie jestem pewien, jak wydrukować ciało węzła.
Jak mogę to osiągnąć?
Próbuję wypracować sposób drukowania treści węzła na stronie.
Zwykle używam czegoś takiego, print $node->field_manufacturer[0]['view'];ale nie jestem pewien, jak wydrukować ciało węzła.
Jak mogę to osiągnąć?
Odpowiedzi:
Możesz wyświetlić całą strukturę i zawartość węzła, pisząc:
<pre><?php print_r($node); ?></pre>
A następnie wybór tego, co uważa za właściwe.
Aby wydrukować treść węzła, należy użyć $node->content['body']['#value'].
Po prostu spróbuj tego dla Drupal 7
<?php print render($content['body'])?>
renderbyłby zwykle używany w .tpl.phpszablonach do formatowania elementów przy użyciu informacji o układzie w tablicy renderowania, patrz np. themery.com/dgd7/advanced-theming/render
Jeśli $nodejest to obiekt węzła uzyskany na przykład za pomocą node_load(), w Drupal 7 jest to struktura $node->body.

Językiem ustawionym dla węzła, którego użyłem na zrzucie ekranu, jest angielski, a formatem wejściowym jest pełny HTML. O ile widzę, zawartość ciała jest zawsze zawarta w indeksie „und”, niezależnie od tego, jaki język został ustawiony dla węzła.
W Drupal 6 $node->bodyjest ciąg.
Jeśli zaimplementowałeś hook_nodeapi('view')(Drupal 6) lub hook_node_view()(Drupal 7), zawartość ciała zostanie znaleziona odpowiednio za pomocą $node->content['body']['#value']i $node->content['body'][0]['#markup'].

Zwykle działa:
<?php print $node->body['value']; ?>
Być może trochę za późno, ale wypróbuj poniższe, jeśli używasz Drupala 6.
<?php print $node->content['body']['#value'] ?>