【问题标题】:How do I get the URL of an image inside a module directory?如何获取模块目录中图像的 URL?
【发布时间】:2011-01-08 19:55:30
【问题描述】:

在包含自定义模块的目录中,我有一个包含图像的目录。

如何获取这些图片的 URL?

【问题讨论】:

    标签: drupal drupal-7


    【解决方案1】:
    drupal_get_path('module', $module_name);
    

    【讨论】:

      【解决方案2】:

      如上所述,最简单的方法是使用站点根目录的相对路径:

      '/' . drupal_get_path('module', $module_name) . '/img1.jpg'
      

      在开头不使用斜杠会在多个级别别名上破坏它,例如http://www.your_site.dev/category/2012/11/02/

      【讨论】:

      • 谢谢! drupal_get_path() 没有前面的斜线把我搞砸了。
      【解决方案3】:
      // path
      drupal_get_path('module', $module_name) . '/images';
      

      file_create_url(drupal_get_path('module', $module_name)) 。 '/图像';

      【讨论】:

      【解决方案4】:

      要获取图片的正确 URL,您需要在图片路径的开头附加 base_path()。正确的网址是:

      $url = base_path() . drupal_get_path("module", "MY_MODULE") . "/image.png";

      【讨论】:

        【解决方案5】:

        适用于 Drupal 7 和 8 的更完整示例。所有其他答案仅显示如何返回模块的路径,而不是如何实际生成 URL。

        <?php
        $module_path = drupal_get_path('module', 'mymodule');
        $image_path = "$module_path/images/img1.jpg";
        $image_url = file_create_url($image_path);
        

        【讨论】:

          猜你喜欢
          • 2023-04-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-02-02
          • 2017-05-01
          • 2020-10-24
          • 1970-01-01
          相关资源
          最近更新 更多