Search code examples
phpdrupaldrupal-7view

Drupal views php field collection value


I am using Drupal 7.

In a node, I have a field collection, and in that field collection I have a field called 'amount' which is an integer field.

When I try to display this value within a view column using 'Views PHP' module, in the available variables it appears as

$row->field_amount: Field collection item: amount

However when I print/echo this, the value that appears is not correct. It seems to show the ID of the field collection or so.

On extra note, the view is a taxonomy view. It is deriving the field collection field using a relationship to the node.

How can I get it to show the actual value inserted in views php?


Solution

  • That is a common "bug" of the Views PHP module... you'll only get the nid of the node!

    if this is not a high-traffic/performance site, i recommend you to load the node in the view field and access the value via the node-variable..

    for example:

    <?php
        $node = node_load($row->field_amount);
        echo $node->field_amount['und'][0]['value'];
    ?>
    

    that code is not tested, but i hope, you get the idea...

    if you are not sure, how to access the data, you definitely should install the devel module... with devel, you can nicely print out the variable like:

    <?php
        dpm($node);
    ?>
    

    and find the right value...

    as far as i know, there is no other way with the Vies PHP module... sorry