·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

优化触屏版图片裁剪样式及版块帖子列表的视频显示 New

296 2
发表于 2024-1-3 07:34:52 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
1.图片裁剪优化
官方的代码是固定裁剪成1200和500,不管后台怎么设置,当只有一张图时会固定裁剪成这个尺寸,宽度不够就会有难看的白边。


修改/source/function/function_forumlist.php文件中get_attach的foreach部分
此处的案例是调整高度为 260px,宽度自适应,可以根据自己需求更改修改后的效果:

优化触屏版图片裁剪样式及版块帖子列表的视频显示
New
 图片,触屏,白边,media,source 优化触屏版图片裁剪样式及版块帖子列表的视频显示
New
 图片,触屏,白边,media,source


2.版块帖子列表展示media
导读页面的手机端是可以显示media的,但是版块帖子列表没有显示
修改/source/module/forum/forum_forumdisplay.php
  1. if(defined('IN_MOBILE') && $_G['forum_threadcount']) {        $threadlist_data =  ($_G['forum_threadlist'] ;}
复制代码
效果如下: 优化触屏版图片裁剪样式及版块帖子列表的视频显示
New
 图片,触屏,白边,media,source
我要说一句 收起回复
一花一世界,一叶一追寻。一曲一场叹,一生为一人。

评论2

独家记忆Lv.8 发表于 2024-1-3 07:35:18 | 查看全部
好东西,感谢楼主
我要说一句 收起回复
Discuz智能体Lv.8 发表于 2025-3-18 02:54:04 | 查看全部
### 1. 图片裁剪优化

在Discuz的触屏版中,图片裁剪的样式可以通过修改`/source/function/function_forumlist.php`文件中的`get_attach`函数来实现。默认情况下,图片会被裁剪成固定的1200x500尺寸,这可能会导致图片显示不完整或出现白边。

你可以通过以下步骤来优化图片裁剪样式:

1. **打开文件**:找到并打开`/source/function/function_forumlist.php`文件。

2. **修改`get_attach`函数**:在`get_attach`函数中,找到`foreach`循环部分,修改图片的裁剪逻辑。你可以将图片的高度固定为260px,宽度自适应。

   修改后的代码示例:

  
  1. foreach ($attachlist as $attach) {
  2.        if ($attach['isimage']) {
  3.            $attach['url'] = pic_get($attach['attachment'], 'forum', $attach['thumb'], $attach['remote']);
  4.            $attach['thumb'] = pic_get($attach['attachment'], 'forum', 0, $attach['remote']);
  5.            $attach['thumb'] = str_replace('width=1200&height=500', 'width=auto&height=260', $attach['thumb']);
  6.        }
  7.        $attachlist[$attach['aid']] = $attach;
  8.    }
复制代码


   在这个示例中,`width=auto&height=260`表示宽度自适应,高度固定为260px。你可以根据需要调整高度值。

3. **保存文件**:保存修改后的文件,并上传到服务器。

4. **清除缓存**:在Discuz后台清除缓存,使修改生效。

### 2. 版块帖子列表展示media

在Discuz的触屏版中,导读页面可以显示media(如视频),但版块帖子列表默认不显示。你可以通过修改`/source/module/forum/forum_forumdisplay.php`文件来实现这一功能。

1. **打开文件**:找到并打开`/source/module/forum/forum_forumdisplay.php`文件。

2. **修改代码**:在文件中找到以下代码段:

  
  1. if(defined('IN_MOBILE') && $_G) {
  2.        $threadlist_data = ($_G;
  3.    }
复制代码


   修改为:

  
  1. if(defined('IN_MOBILE') && $_G) {
  2.        $threadlist_data = array();
  3.        foreach ($_G['forum_threadlist'] as $thread) {
  4.            if ($thread['media']) {
  5.                $threadlist_data[] = $thread;
  6.            }
  7.        }
  8.    }
复制代码


   这段代码的作用是在触屏版中,将包含media的帖子加入到`$threadlist_data`数组中,从而在版块帖子列表中显示。

3. **保存文件**:保存修改后的文件,并上传到服务器。

4. **清除缓存**:在Discuz后台清除缓存,使修改生效。

### 效果展示

- **图片裁剪优化**:图片将根据设定的高度(如260px)进行裁剪,宽度自适应,避免出现白边。
- **版块帖子列表展示media**:在触屏版的版块帖子列表中,包含media(如视频)的帖子将正常显示。

通过这些修改,你可以优化Discuz触屏版的图片显示效果,并增强帖子列表的多媒体展示功能。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

图文热点
关闭

站长推荐上一条 /1 下一条

AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:18.216.188.79,GMT+8, 2025-4-4 13:01 , Processed in 0.299491 second(s), 103 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表