如何在织梦DedeCms中获取缩略图的高度和宽度?

在织梦DedeCms中,可以通过系统内置的函数获取缩略图高度和宽度。具体方法如下:,,“php,{dede:field name='titleimg' function='GetAtt(@me)'/},`,,name 属性指定要获取的字段名,这里为 titleimgfunction 属性指定要使用的函数,这里为 GetAtt,表示获取属性值。@me 表示当前标签对象。,,如果要获取缩略图的宽度和高度,可以使用以下代码:,,`php,{dede:field name='titleimg' function='GetAtt(@me, 'width')'/},{dede:field name='titleimg' function='GetAtt(@me, 'height')'/},“,,这样就可以分别获取到缩略图的宽度和高度了。

在织梦DedeCms中,获取缩略图的高度和宽度是一个常见的需求,尤其是在需要实现瀑布流布局或其他依赖于图片尺寸的布局时,以下是两种常用的方法来获取DedeCms中缩略图的高度和宽度:

如何在织梦DedeCms中获取缩略图的高度和宽度?

方法一:使用getimagesize函数

这种方法相对简单,但可能会消耗较多的系统资源,具体步骤如下:

1、在include/helpers/extend.helper.php文件的末尾添加以下代码:

if (!function_exists('getheight')) {
    function getheight($litpic) {
        $litpicc = $GLOBALS['cfg_basehost'] . $litpic;
        $arr = getimagesize($litpicc);
        $resault = $arr[1]; // 此为高度
        //$resault = $arr[0]; //此为宽度
        return $resault;
    }
}

2、在模板中直接使用[field:litpic function="getheight(@me)"/]来输出图片高度。

<img src="[field:litpic/]" height="[field:litpic function="getheight(@me)"/]">

需要注意的是,如果$GLOBALS['cfg_basehost']中包含www,则可能无法正常获取图片尺寸,这种方法较为耗费系统资源,特别是在处理大量图片时。

方法二:在插入数据库前获取并存储缩略图尺寸

这种方法更为推荐,因为它通过数据库调用来大大节省系统资源,具体步骤如下:

如何在织梦DedeCms中获取缩略图的高度和宽度?

1、在/dede/article_add.php文件中,插入数据库前添加以下代码:

//获取缩略图宽度及高度
$litpicc = $GLOBALS['cfg_basehost'] . $litpic;
$arr = getimagesize($litpicc);
$arr[0]就是宽度,$arr[1]就是高度
//将这两个值插入数据库中即可(之前请先添加相应字段)

2、确保在数据库中已经添加了相应的字段来存储这些尺寸信息。

3、之后,你可以直接从数据库中读取这些尺寸信息,而无需再次调用getimagesize函数。

FAQs

问题1:为什么在使用getimagesize函数时,带有www的URL可能无法正常获取图片尺寸?

答:这可能是因为在某些服务器配置或URL重写规则下,带有www的URL被重定向到了其他地址,导致实际访问的图片路径与预期不符,具体原因可能因服务器配置而异,建议检查服务器的URL重写规则或配置。

问题2:如何在DedeCms中添加自定义字段来存储缩略图的尺寸信息?

如何在织梦DedeCms中获取缩略图的高度和宽度?

答:在DedeCms中添加自定义字段的步骤如下:

1、登录DedeCms后台,进入“系统” > “SQL命令行工具”。

2、选择要添加字段的数据表,通常是文章表(如dede_archives)。

3、执行SQL语句来添加字段,ALTER TABLE dede_archives ADD COLUMN litpic_width INT(11) NOT NULL DEFAULT '0'; ALTER TABLE dede_archives ADD COLUMN litpic_height INT(11) NOT NULL DEFAULT '0';,这将在文章表中添加两个新字段litpic_widthlitpic_height来分别存储缩略图的宽度和高度。

4、保存更改后,你就可以在插入文章时将缩略图的尺寸信息存储到这些新字段中了。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1232023.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-10-22 12:35
下一篇 2024-10-22 12:37

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入