原文来自:https://www.zixuephp.com

DEDECMS垮站调用内容达成

使用跨站调用内容之前,得先配置好跨数据库调用,具体可以见之前我写的文章”DedeCMS SQL标签的高级应用“,配置好数据库,现在就是模板中调用了.

  1. <ulclass="list">
  2. {dede:sqlsql='SELECTarc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,
  3. tp.moresite,tp.siteurl,tp.sitepath
  4. FROM`dede_archives`arcleftjoin`dede_arctype`tponarc.typeid=tp.idwhereFIND_IN_SET("c",arc.flag)>0ANDarc.typeidin(13,14,89,90,91,92,93,15,95,98,99,100,101,16,102,103,104,105,106,17,107,110,18,114,115)ORDERBYarc.idDESCLIMIT0,4'appname='ask'}
  5. <li><span>[field:pubdatefunction="MyDate('Y-m-d',@me)"/]</span><ahref="
  6. [field:arrayrunphp='yes']
  7. $row=@me;
  8. @me=GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],
  9. $row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],0,'http://ask.gog.com.cn',$row['sitepath']);
  10. [/field:array]
  11. ">[field:titlefunction="cn_substr(@me,46)"/]</a></li>
  12. {/dede:sql}
  13. </ul>

具体说一下上面的两处:这个是去数据库中查询内容,如果你不知道DEDECMS的数据库是怎么存储内容的,可能这个你就不好写,但是你可以参照我这个进行修改.

  1. SELECTarc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,
  2. tp.moresite,tp.siteurl,tp.sitepath
  3. FROM`dede_archives`arcleftjoin`dede_arctype`tponarc.typeid=tp.idwhereFIND_IN_SET("c",arc.flag)>0ANDarc.typeidin(13,14,89,90,91,92,93,15,95,98,99,100,101,16,102,103,104,105,106,17,107,110,18,114,115)ORDERBYarc.idDESCLIMIT0,4

另外一处就是下面的这个,这里也是应用了DEDECMS的runphp功能,然后再调用了 DEDECMS的文档小助手的GetFileUrl方法生成文章URL,DEDECMS文档小助手有哪些方法.

  1. [field:arrayrunphp='yes']
  2. $row=@me;
  3. @me=GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],
  4. $row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],0,'http://ask.gog.com.cn',$row['sitepath']);
  5. [/field:array]