我在Blocks内容中添加了一些html代码并启用了完整HTML过滤器.
我已经为我的图像使用了相对路径,例如"sites/all/themes/zen/zen/image.png"
我想这不正确,因为我需要根据我在主页或"node/id"页面中更改路径.
我想我不能在块内使用PHP,因此我不能使用$ base_url ...如何只用html添加图像路径?
谢谢
之前的答案提供了解决方案的一部分,但这里有一个更全面的独家新闻:
如果您的站点位于example.com(即它是"根"站点),那么在您的相对路径中添加前斜杠将解决该问题,正如其他人建议的那样:
<img src="/sites/all/themes/zen/zen/image.png">
Run Code Online (Sandbox Code Playgroud)
但是,如果您的网站存在example.com/my-drupal-site,那么您需要像这样写:
<img src="/my-drupal-site/sites/all/themes/zen/zen/image.png">
Run Code Online (Sandbox Code Playgroud)
如果您可以使用PHP来确定适当的路径,那确实更好.如果您正在从主题调用图像,则可以使用Drupal函数drupal_get_path来获取如下所示的路径:
$img_path = drupal_get_path('theme', 'zen') . '/zen/image.png';
Run Code Online (Sandbox Code Playgroud)
然后你可能真的是Drupaly关于它并使用该theme_image函数为图像生成HTML:
$img = theme('image', $img_path, 'My Image - Alt Text', 'My Image - Title Text');
Run Code Online (Sandbox Code Playgroud)
凡$img现在拥有了在HTML <img>标签及其src,alt和title属性.有关更多信息,请参阅drupal_get_path和theme_image的API文档.
正如jeffreymb所指出的,最简单的方法是使用WYSIWYG编辑器和一个名为IMCE的内置文件处理模块的组合来为您掩盖所有这些细节. 如果您无法访问"PHP代码"输入格式,这是最佳解决方案.
那么,步骤:
有关该设置过程的更多详细信息,请参阅此文章,并确保阅读WYSIWYG模块在其配置页面上显示的文档.
一旦安装了IMCE并与WYSIWYG集成,当您单击WYSIWYG工具栏中的"图像"按钮时,应显示正常的对话框,但是带有一个新的小图标以打开IMCE文件浏览器.此文件浏览器允许您浏览files文件夹中的图像或上载新文件.它还支持一定程度的图像处理,并在您选择图像后自动生成必要的HTML.
| 归档时间: |
|
| 查看次数: |
11418 次 |
| 最近记录: |