GVKun编程网logo

DEDECMS调用新闻内容*张图片地址办法(dedecms调用页面)

17

想了解DEDECMS调用新闻内容*张图片地址办法的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于dedecms调用页面的相关问题,此外,我们还将为您介绍关于DedeCMS栏目页调用新闻的*张

想了解DEDECMS调用新闻内容*张图片地址办法的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于dedecms调用页面的相关问题,此外,我们还将为您介绍关于DedeCMS 栏目页调用新闻的*张图片、dedecms 调用新闻图片数量的办法、DedeCMS 调用新闻顶级栏目id的办法、DEDECMS在其它页面调用单页新闻内容并过滤HTML代码的办法的新知识。

本文目录一览:

DEDECMS调用新闻内容*张图片地址办法(dedecms调用页面)

DEDECMS调用新闻内容*张图片地址办法(dedecms调用页面)

 

{dede:field.body/}调用的是全部新闻内容

如果我们只想调用内容里面的*张图片,那么可以使用下面的标签

{dede:field.body runphp='yes'}

preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i',@me,$match);  

@me=$match[0];    //*张图片

//@me=$match[1]; //第二张图片

//@me=$match[2];  //第三张图片

本文章网址:http://www.ppssdd.com/code/10213.html。转载请保留出处,谢谢合作!

DedeCMS 栏目页调用新闻的*张图片

DedeCMS 栏目页调用新闻的*张图片

 

1:有的幻灯片有大小图,一般来说那大图比小的要大很多,例如我仿制的163k的新闻幻灯片就是如此,我看很多人都放弃了这个幻灯,因为显示大图的地方调用缩略图的话就会图片失真... 

 

2:用来实现有些博客风格一个功能:在栏目页面每个log的标题下显示一张图片(不是dede的缩略图哦) 

 

方案, 

 

由于标签arclist不支持body,所以arclist调用的地方改为sql标签 独立模型列表和list支持底层源码调用body ,所以可以直接使用 

 

{dede:sql sql='select * from dede_archives left join dede_addonarticle on dede_archives.id=dede_addonarticle.aid where find_in_set("f",dede_archives.flag)>0 order by dede_archives.id desc limit 0,5'} 

<div>[field:body function=firstimg('@me')/]</div> 

{/dede:sql} 

 

注意:实现的方案是自定义一个函数 

 

函数代码 

 

Copy codefunction firstimg($str) 

$str1 = str_replace('"','',$str); 

preg_match('/<img[^>]*>/i',$str1,$str2); 

$str3 = array_shift($str2); 

$str4 = str_replace(' alt= ',' ',$str3); 

return $str4; 

 

将以上代码加入到include下的channelunit.func.php中, 

 

底层源码字段调用的时候 

 

[field:body function=firstimg('@me')/] 

 

标签调用 

 

{field:body function=firstimg('@me')/} 

 

不过这个函数有它的局限性,新闻中的图片一定要出现在新闻的开头才能达到效果,否则会失败 

 

好了,辛苦了几天终于搞定!

本文章网址:http://www.ppssdd.com/code/4451.html。转载请保留出处,谢谢合作!

dedecms 调用新闻图片数量的办法

dedecms 调用新闻图片数量的办法

 

我们在使用DEDECMS制作图片站的时候经常会遇到需要把新闻中图片数量调用到标题中显示的问题,这里提供一个解决方案

function BodyImgNum($aid)  {      global $dsql;     $sql = "select aid,body from dede_addonarticle  where aid='$aid' ";     $arcRow = $dsql->GetOne($sql);     $body = $arcRow['body'];     $img_array = array();      $patte="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>/i";        preg_match_all($patte,$body,$img_array);      $img_array = array_unique($img_array[1]);      $num = count($img_array);     return $num;       }

将上面这段代码放到include/extend.func.php中的末尾?>的 上面。

然后去源码中调用这个标签[field:id function="BodyImgNum(@me)"/]  ,就可以调用出新闻中有多少图片的数字。

本文章网址:http://www.ppssdd.com/code/10283.html。转载请保留出处,谢谢合作!

DedeCMS 调用新闻顶级栏目id的办法

DedeCMS 调用新闻顶级栏目id的办法

 

今天做源码的时候遇到一个问题 ,就是我想调用谋篇新闻的优质栏目id .官方参考手册上说用type标签调用 ,我用这样的{dede:type}[field:topid /]{/dede:type}调用发现没有调用出来,愈伤看了下模板include\type.lib.php 发现是这句的原因

 

$row = $dsql->GetOne("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `dede_arctype` where id='$typeid' ");

 

原来type标签在数据库查询的时候莫查询topid这个字段 ,于是修改成下面这一句就能够调用了。

 

$row = $dsql->GetOne("Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `dede_arctype` where id='$typeid' "); 

 

我想调用优质栏目的id需求不大,一般很少有人用到.,所以官方也没有写上 .希望用得上的朋友能够有解决办法

本文章网址:http://www.ppssdd.com/code/4940.html。转载请保留出处,谢谢合作!

DEDECMS在其它页面调用单页新闻内容并过滤HTML代码的办法

DEDECMS在其它页面调用单页新闻内容并过滤HTML代码的办法

 

DEDECMS织梦的单页新闻是建设网站一种特别高效的方式,特别方便快捷。不过有时候我们需要在首页或者栏目页面调用某些单页的内容,如首页调用关于我们单页的介绍信息等。织梦DedeCMS如何实现在除单页以外的页面,调用单页的新闻内容呢?

  织梦DedeCMS实现其他页面调用单页新闻内容

  织梦其他页面调用单页新闻内容使用SQL标签首先需要做的,就是把SQL语句写出来,调用的SQL语句如下:

{dede:sql sql="SELECT body FROM `dede_sgpage` where aid = 1" } [field:body function="htmlspecialchars(cn_substr(@me,130))"/] {/dede:sql}

  sql="SELECT body这里的body就是新闻内容字段,FROM `dede_sgpage`这里的dede_sgpage是单页文档数据表,where aid = 1 这里的aid = 1 就是你单页文档所在的id,你需要调用哪个单页文档的内容,就把这个换成所在文档的id就可以了。

  以下的语句则是使用织梦的两个函数,对调用的字段数据进行了必要的处理:

  [field:body function="htmlspecialchars(cn_substr(@me,130))"/]

  field:body 这里的body如上,就是新闻的内容,(cn_substr(@me,130) 这里的130就是你准备让内容显示的字数,可以自己调整。

  采用上述办法虽然可以成功调用,但是会出现一个问题,就是会把源代码也调用出来。

这个时候可以使用下面这个代码

{dede:sql sql="SELECT body FROM `dede_sgpage` where aid = 1" } [field:body function="htmlspecialchars(cn_substr(Html2text(@me),600))"/] {/dede:sql}

 Html2text() 函数是去掉html标签代码。cn_substr(str,750) 函数是截取字符串长度,cn_substr表示截取600个字符换算成汉字就是300个汉字。

这里再做个延伸:怎么任意调用数据库中的内容呢?

其实除了上面的例子外,在Dede系统里面,可以自由使用SQL语句来配合织梦标签进行更多的个性化调用。基本参照格式为:

 代码如下:

{dede:sql sql="select 字段 From 表名称 where 条件语句"}  [field:字段名/]  {/dede:sql}

  由上面这种基本格式,我们就可以基本转换出一条调用文档列表的调用标签了,代码为:

 代码如下:

{dede:sql sql="select * From dede_archives limit 10"}  <li>·<a href="/plus/view.php?aid=[field:id/]">[field:title/]</a></li>  {/dede:sql}

  大家看到了上面的文档链接的底层源码地址的是动态的,那么我们要如何样来进行转换,让他链接到静态地址呢,这里我们只需要对[field:id/]进行一下转换,转换后的完整代码为:

代码如下:

{dede:sql sql="SELECT * FROM dede_archives limit 10"}  <li>·<a href="[field:id runphp='yes'] ]" title="[field:title/]" target="_blank">[field:title function=cn_substr(@me,30,0)/]</a></li>  {/dede:sql}

 

本文章网址:http://www.ppssdd.com/code/10284.html。转载请保留出处,谢谢合作!

关于DEDECMS调用新闻内容*张图片地址办法dedecms调用页面的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于DedeCMS 栏目页调用新闻的*张图片、dedecms 调用新闻图片数量的办法、DedeCMS 调用新闻顶级栏目id的办法、DEDECMS在其它页面调用单页新闻内容并过滤HTML代码的办法等相关知识的信息别忘了在本站进行查找喔。

本文标签: