discuz x3.1 用户gif图片怎么不动
Discuz! 上传用户头像这个功能其实是在UCenter中实现的,造成上传Gif头像不能动的的原因在于
新版本UCenter的UCenter\images(或者uc_server\images)目录下的cameraswf有所改动。
所以解决办法涉及到的文件
cameraswf 我采用以前的神马610的UCenter版本中的cameraswf
clientphp 路径uc_client\clientphp (路径不同请自行查找),此文件改动如下(调整cameraswf高度和宽度):
function uc_avatar($uid, $type = 'virtual', $returnhtml = 1) {$uid = intval($uid);
$uc_input = uc_api_input("uid=$uid");
$uc_avatarflash = UC_API'/images/cameraswfinajax=1&appid='UC_APPID'&input='$uc_input'&agent='md5($_SERVER['HTTP_USER_AGENT'])'&ucapi='urlencode(str_replace('http://', '', UC_API))'&avatartype='$type'&uploadSize=2048';
if($returnhtml) {
return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://downloadmacromediacom/pub/shockwave/cabs/flash/swflashcab#version=9,0,0,0" width="447" height="477" id="mycamera" align="middle">
<param name="allowScriptAccess" value="always" />
<param name="scale" value="exactfit" />
<param name="wmode" value="transparent" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name="movie" value="'$uc_avatarflash'" />
<param name="menu" value="false" />
<embed src="'$uc_avatarflash'" quality="high" bgcolor="#ffffff" width="447" height="477" name="mycamera" align="middle" allowScriptAccess="always" allowFullScreen="false" scale="exactfit" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://wwwmacromediacom/go/getflashplayer" />
</object>';
} else {
return array(
'width', '447',
'height', '477',
'scale', 'exactfit',
'src', $uc_avatarflash,
'id', 'mycamera',
'name', 'mycamera',
'quality','high',
'bgcolor','#ffffff',
'wmode','transparent',
'menu', 'false',
'swLiveConnect', 'true',
'allowScriptAccess', 'always'
);
}
}
效果如下
简单说明上面三个:
用户在 cameraswf 中点击“确定”后,cameraswf 会向服务器上传 3 个数据,作为大、中、小尺寸的头像
如admin,01_avatar_bigjpg,01_avatar_middlejpg,01_avatar_smalljpg ,该文件在如下类似的目录
uc_server\data\avatar\000\00\00
要想达到同样效果,修改template\default\home\spacecp_avatarhtm,
查找
<!--{avatar($space[uid],big)}-->改成
<!--{avatar($space[uid],big)}--><!--{avatar($space[uid],middle)}-->
<!--{avatar($space[uid],small)}-->
这个很简单 ,你上传好之后,别先直接点击插入,然后用鼠标在你向插入的地方点一下,然后在点击要插入的那张就可以了,这样就插入到你想要放置的地方,开始使用discuz的时候我也是有这样的疑问,慢慢熟练了你会知道的更多,discuz很不错!
不可以,不过你可以通过修改源代码实现:如帖子数据,修改:source\class\block\forum\block_threadphp在function fields()返回的数组中增加返回数据的数据类型配置,在getdata函数中查询出帖子的所有,并存储在$list['fields']中,键要与fields中你指定的键匹配,确认代码无误后到后台更新(工具---更新缓存选上最后一个,叫什么忘了),然后添加数据调用,即可通过{fields中新增的键名调用相应的}
用这个可以衍生很多种方法,你自己思考咯
以上情况,可能是论坛中没有帖子导致的。
或者是帖子的加载失败(网络慢、URL地址调用错误)导致的。
请右键查看下属性,找到的URL地址,通过浏览器访问看下是否能够打开。
如果不存在的话就是调用地址错误。
望采纳
今天在弄产品汇的时候,发现主题列表的缩略图一直都是120x120,非常模糊,影响观感。到现在才在网上找到关于discuz分类信息调用字段为什么会自动缩略成120x120;在discuzX系统的分类信息中“上传”类型字段系统自动生成120x120缩略图。
这样显示的非常模糊,影响观感,下面给出解决办法:
这段代码是写死了的,在/source/function/function_threadsortphp这个文件里面$sortthread['value'] = getforumimg($imgoptiondata['aid'], 0, 120, 120)
把120修改为你的大小即可。
分类信息调用上传的代码如下:forumphpmod=image&aid=9&size=120x120&
0条评论