如何从php访问段落模块中的图像文件?

时间:2018-08-10 00:51:17

标签: drupal drupal-modules drupal-8 paragraphs

我似乎无法访问段落模块中的图像字段。

我可以访问其他字段值,但不能访问图像字段。

          $paragraph = Paragraph::load($team_type['target_id']);
          $new_obj->title = $paragraph->field_title->value;      
          $new_obj->age = $paragraph->field_age->value;
          $new_obj->info = $paragraph->field_about_info->value;
          $new_obj->link = $paragraph->field_link_to_page->value;

          $new_obj->logo = $paragraph->field_logo_image->value;

field_logo_image 中没有任何内容。我做了一个google搜索,但仍然找不到解决方法。

我确实检查了图像字段的唯一名称,这是正确的。

我的问题是,如何从自定义模块访问Drupal 8段落模块中的图像字段?

2 个答案:

答案 0 :(得分:0)

这可能不完全是您要找的东西,但是我能够通过此操作获取图像样式的url。

      $paragraph = Paragraph::load($paragraph_image[0]['target_id']);
      $ogPara = $paragraph->get('field_image')->entity->uri->value;
      $style = ImageStyle::load('list_thumbnail_square_100x100');
      $url = $style->buildUrl($ogPara);

答案 1 :(得分:0)

我知道您指定了“ from php”,但从段落模板访问这些值也可能对某人有所帮助。即如果段落具有名为“ field_image”的图像字段,并且您希望以“ image_style_name”样式打印图像,则可以从段落模板执行以下操作:

<img
        alt="{{ content.field_image['0']['#item'].alt }}"
        title="{{ content.field_image['0']['#item'].alt }}"
        src="{{ content.field_image['0']['#item'].entity.uri.value|change_image_style('image_style_name') }}" >