MODx Gallery无法正确显示图像

时间:2011-06-05 20:57:36

标签: php html gallery modx-revolution

我最近使用MODx Revolution建立了一个网站。我正在尝试使用相同名称的插件创建一个库。我希望它能够在您上传时单击显示原始图像的链接。以下是我的图库页面的代码:

<div class="ContentHead">[[*longtitle]]</div>
<p>This page contains galleries of various images I have taken or made. Each has a description, so feel free to browse. Clicking thumbnails will reload the page, and may take some time to load a larger version of the image - but it will get there!</p>

<p>[[!Gallery? &toPlaceholder=`gallery`]] [[!GalleryItem? &imageWidth=`900` &imageHeight=`900`]] [[!GalleryAlbums? &prominentOnly=`0` &limit=`0` &rowTpl=`galAlbumRowTplCustom` &toPlaceholder=`galleries`]]</p>

<div align="center">| [[+galleries]]</div>
<hr />
<p><a name="largeImage"></a></p>
<p> </p>

<p>[[!+galitem.image:notempty=`</p><div class="image"><img class="[[+galitem.imgCls]]" src="[[+galitem.image]]" alt="[[+galitem.name]]" /><br/>[[+galitem.description]]<br />Albums: [[+galitem.albums]] <br />Tags: [[+galitem.tags]]<br/><a href="[[!+galitem.image]]">View original image</a><hr /></div> <p>`]] 

[[!+gallery:notempty=`</p><div ><h1 style="font-size: 20px; font-weight: bold; font-family: Calibri;">[[+gallery.name]]</h1><h2 style="font-size: 18px; font-weight: normal; font-family: Calibri;">[[+gallery.description]]</h2><p> </p><h2 style="font-size: 18px; font-weight: normal; font-family: Calibri;">[[+gallery]]</h2> </div>`]]

<div style="height:600px"><!--This ensures that when a thumb is clicked, the gallery isn't pushed below the footer.--></div>

导致问题的代码是:

<a href="[[!+galitem.image]]">View original image</a>

生成以下(示例)url:

http://www.reflectric.com/assets/components/gallery/connector.php?action=web/phpthumb&w=900&h=900&zc=0&far=&q=90&src=http%3A%2F%2Fwww.reflectric.com%2Fassets%2Fcomponents%2Fgallery%2Ffiles%2F3%2F28.bmp

如果您在Internet Explorer(在6和9上测试)上关注它(继续,请尝试!),它会很好地显示图像。然而,在我测试过的每一个其他浏览器上,它与在notepad ++或其他文本编辑器中加载图像所获得的相同。

在图像上执行“右键单击另存为”会导致保存php重定向,而不是图像,“右键单击视图图像”与上面的链接相同。

因此,我也要问 a)有没有办法解决这个问题, 或者b)有没有办法直接链接到图像,而不是通过php页面?

感谢您提供任何帮助,

西蒙

3 个答案:

答案 0 :(得分:0)

在模板块中尝试[[+ image_absolute]]。

为什么人们会在StackOverflow上而不是在MODX论坛上发布这个问题,这样做有点难过 - 有更多的人在监控它(我只是通过Twitter来到这里)。

答案 1 :(得分:0)

您的MIME类型配置似乎不正确。 PHP脚本connector.php应告诉浏览器当前提供的URL是图像。

但是,如果你使用Firebug(或Chrome Dev / Safari Dev等)并检查你的回复类型,它会给你:

HTTP/1.1 200 OK
Date: Mon, 18 Jul 2011 09:11:37 GMT
Server: Apache
X-Powered-By: PHP/5.2.17
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Accept-Encoding
Content-Encoding: gzip
Keep-Alive: timeout=10, max=29
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html      <===================== INCORRECT!

内容类型“text / html”不是您想要提供的,但这就是server / php-script提供的内容。

检查您的Apache(如果这是您想要的)配置,或者,如果您使用的是网络托管,请查看.htaccess文件。

AddType image/jpg .jpg

其他网络服务器(nginx,lighttpd,cherokee ......)也存在类似的配置。如果它不起作用,您可以调整连接器脚本(尚未检查其源)以强制MIME类型。在Show image in php script

中进行了讨论

(我发现自你发布这个问题已经有一个多月了,但由于它没有标记为已解决,我希望这会对你或其他人有所帮助)

答案 2 :(得分:0)

这是Gallery 1.2.0的问题,已在1.2.1中解决。

感谢你的所有建议!