2010-01-20 4 views
2

Использование видов и видов пользовательского поля ... Я хочу, чтобы ссылка изменилась в зависимости от того, был ли загружен файл [upload_fid-path] или если был указан URL [field_url_url].Drupal Views условная ссылка

Если файл был загружен, что имеет прецедент над URL-адресом ... Если файл не прикреплен, чем ссылка на URL-адрес ... Если URL-адреса отсутствуют, то ссылка на узел.

Любая помощь будет оценена, спасибо!

ответ

1

Добавить поле файла во взглядах.
Добавить Customfield: PHP код, введите там код:

<?php 
    print '<pre>'.print_r($data).'</pre>'; 
?> 

вы увидите внутренние данные, наполненный как:

stdClass Object 
(
    [nid] => 46 
    [node_type] => consignment 
    [node_vid] => 53 
    [node_data_field_cnsgm_image_field_cnsgm_image_fid] => Array 
     (
      [0] => Array 
       (
        [fid] => 47 
        [list] => 1 
        [data] => a:3:{s:11:"description";s:10:"Test descr";s:3:"alt";s:0:"";s:5:"title";s:0:"";} 
       ) 

      [1] => Array 
       (
        [fid] => 57 
        [list] => 1 
        [data] => a:3:{s:11:"description";s:0:"";s:3:"alt";s:0:"";s:5:"title";s:0:"";} 
       ) 

     ) 

) 

node_data_field_cnsgm_image_field_cnsgm_image_fid для текущего примера является представлением поля файла, шлагты являются ссылку на таблицу {files}, там вы можете получить путь к файловому пути файла.
Итак, вам нужно проверить это поле, чтобы показать, что вы хотите ...

стр. Поле будет разницей. Будьте осторожны, имена столбцов данных $ будут изменены, если вы добавите новые поля в представлениях, поэтому в последний раз вам нужно добавить свое пользовательское поле ...

+0

Благодаря тонну для ответа Никит, я буду играть с этим сейчас. –