天兴工作室

主题演示站

emlog调用指定栏目内的文章 标题+链接+缩略图

妈蛋emlog的教程好少,开发文档更像是开玩笑的一样,什么都得自己去折腾......

最近在做一个emlog模板,需要调用指定栏目内的文章,百度+请教,终于折腾出来。代码抄至“舍力博客”,原文地址:http://www.shuyong.net/734.html

代码如下:

<?php //调用分类文章,图文显示
function sheli_tw($sort, $num){$db = MySql::getInstance();
$sql = "SELECT gid,title,date,content,sortid,views,comnum FROM ".DB_PREFIX."blog WHERE sortid=".$sort." AND hide='n' ORDER BY `date` DESC LIMIT 0,$num";
$go = $db->query($sql);while($row = $db->fetch_array($go)){
$img_url = TEMPLATE_URL.'images/sheli.jpg';//无图片时显示
if(pic_thumb($row['content'])){$img_url = pic_thumb($row['content']);//查找正文第一张图片
}elseif(picthumb($row['gid'])){$img_url = picthumb($row['gid']);//查找附件第一张图片
}else{$img_url;}?>
<li><p><a href="<?php echo Url::log($row['gid']);?>"><img src="<?php echo $img_url;?>" /></p><span><?php echo $row['title'];?></a></span></li>
<?php }}function picthumb($blogid) {$db = MySql::getInstance();$sql = "SELECT * FROM ".DB_PREFIX."attachment WHERE blogid=".$blogid." AND (`filepath` LIKE '%jpg' OR `filepath` LIKE '%gif' OR `filepath` LIKE '%png') ORDER BY `aid` ASC LIMIT 0,1";$imgs = $db->query($sql);while($row = $db->fetch_array($imgs)){$pict.= ''.BLOG_URL.substr($row['filepath'],3,strlen($row['filepath'])).'';}return $pict;}function pic_thumb($content){preg_match_all("/\<img.*?src\=\"(.*?)\"[^>]*>/i", $content, $img);$imgsrc = !empty($img[1]) ? $img[1][0] : '';if($imgsrc):return $imgsrc;endif;}?>

以上代码放到“module.php”文件里面。在模板中调用直接用“<?php sheli_tw(1,10);?>”即可,其中1代表调用的栏目ID,10代表调用文章数量。

zblogphp文章列表缩略图调用不出来的某一种情况

今天在给一位客户处理一个问题的时候遇到了这个情况,大概的回忆下。

zblogphp的列表页可以调用文章的缩率图,大概如下图,有很多插件可以办到,就不列举了,大家去zblog应用中心找下。

文章列表缩略图

来说说问题,这位客户说突然发现文章列表的缩略图调用不出来了,给我后台账号密码后去看了下,没发现什么问题,自己测试发布了一篇文章上传了一张图也是正常的。

然后打开客户发表的几篇文章发现也没有什么问题,确实是有图,但是前台就是调用不出来。

额,很奇怪,只好试用了几种调用缩率图的方法和插件,都没什么效果。

后来灵机一动打开客户发表的几篇文章,发现文章内的配图都是直接复制过来的,说白了就是远程图片,根本没有保存在网站内部。

当时就感觉好狗血,

其实这种事情当时就应该能发觉出来的,主要是客户网站出现的这个问题是在作者列表页,管理员页面没问题,其他作者页面有问题,就联想到程序和代码调用方面去了,真心没想到原来是这种傻X问题。

好累。。。

zblogphp调用文章缩略图的方法

zblogphp出来有段时间了,近期在调试zblogphp模板的时候有一些心得,分享出来希望对大家有所参考。

本文分享的是:zblogphp调用文章缩略图的功能。

虽说zblog只是个博客系统,但是像zblog这种系统只用来做博客就有点大材小用了,做cms都毫无压力,做cms最常面对的功能就是那几个,总要做的像cms才行,列表页左缩略图右文章摘要就是标配了。

zblogphp调用文章缩略图现阶段有两个方法:

第一:购买“KandyPicasa”插件,10元一份,好处是设置简单,代码调用也方便;缺点是好像有点拖慢速度,我安装了此插件后觉得网站打开速度变慢了点。

第二:直接用zblogphp的原生代码,代码如下:

<img src="{php}$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/";
$content = $article->Content;
preg_match_all($pattern,$content,$matchContent);
echo $matchContent[1][0];
{/php}" />

这些代码前台编译出来的html代码就是:<img src="图片地址">,可以加在任意想调用的地方。

此方法的优点:由于是zblogphp本身的代码,所以对速度没有影响;缺点就是这个代码只能默认调用文章内的第一张图片,如果你的文章内没有图片的话,那就悲剧的什么都不显示了。所以这个方法只适用于每篇文章都习惯配图的朋友使用。当然这个代码可能会在后期有所更新,一起来期待zblogphp版强大的开发团队们吧。

dedecms5.7 缩略图变形问题的解决办法

在百度上搜索“dedecms缩略图变形”出来的结果都是针对dedecms5.6版本的,dedecms5.7的缩率图变形问题倒是搜索不到什么。今天实在看着那个变形图片心里不爽,花了一点时间搜索总算把这个问题解决了。

dedecms5.7种列表页调用缩率图用的标签是“[field:array runphp='yes']@me = (empty(@me['litpic']) ? "" : "<a href='{@me['arcurl']}' class='preview'><img src='{@me['litpic']}'/></a>"); [/field:array]”这个标签调用出来的缩率图是没有定义图片的大小的。我们只需要用css在图片外边加一个框定义宽度超出高度隐藏,图片是不会变形的。

会变形的是dedecms5.7版本中的调用,dedecms调用图片的标签是“[field:imglink/]”这个标签神烦的一点就是会自己在img后面加上一个“width='120' height='120'“,这样缩略图如果不是正方形的铁定是变形的不忍直视啊,那么我们就是去掉这个恶心的定义宽高度,解决办法如下:

用”<a href='[field:arcurl /]' target="_blank"><img src='[field:picname /]' border='0' width='***'></a>“替换掉“[field:imglink/]”标签,宽度自己修改,高度用css定义超出隐藏,这样缩略图变形的问题就解决了,看看不再变形的缩略图,有强迫症的我睡觉也可以安稳些了。

zblog用css定义缩略图大小不变形的方法

zblog中的ytcms和minitu两个插件搭配起来可以做出很多效果,例如本站首页的这个两个效果,如下图:

zblog,css,缩略图


这里就涉及到了一个问题,怎么设置这个缩略图的大小还要保证图片不变形呢。

minitu插件的后台是可以设置图片大小的,这个当然可以解决问题,但是如果一个网站有几处使用了缩略图,并且缩略图的大小并不一样的时候,就要想别的办法了。

个人喜欢使用的是用css定义(当然还有其他的办法),分享下个人心得。

minitu调用出来的图片代码为

<a href="****" target="_blank" title="****"><img src="****" alt="****" /></a>

如果直接用css定义img的大小又会出现一种问题,博客内的配图有很多是随心所欲的,并不一定都是先用作图软件裁剪好了比例的,如果用css直接定义img的宽度和高度,图片就又会变形,我的思路是这样的:

用一个div把图片代码放在里面,用div标签用多了可能会乱套,所以个人习惯用<i></i>标签把图片代码装起来,定义一下<i>的css,代码是这样的:

<i id="tu"><a href="****" target="_blank" title="****"><img src="****" alt="****" /></a></i>

css这样定义:

1、定义<i>的高度和宽度,超出隐藏。

2、定义img的宽度和<i>的宽度一致,高度不定义,完整css代码是这样的:

#tu {
    display: block;
    height: 106px;
    width: 144px;
    overflow: hidden;
}
#tu img {
    width: 144px;
}

这样就不会让图片变形,看起来舒服些。如果有几处要这样调用的,修改下id的名称,然后修改不同id下<i>的宽度高度和img的宽度就ok了。

希望对大家有所帮助,如果你觉得这样定义不太好的话也欢迎指正额。

<< 1 >>
«    2025年6月    »
1
2345678
9101112131415
16171819202122
23242526272829
30
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.4

天兴工作室主题演示站点,如遇到问题请联系我们的在线qq:207649916咨询