DEDECMS仿站建站基础:如何在文章页获取相关文章(LIKEART标签)

DEDECMS仿站建站基础:如何在文章页获取相关文章(LIKEART标签),第1张

var url = windowlocationhref;

var arr = new Array();

arr = urlsplit("");

var arr_url = arr[1];

dede57伪静态设置七步法:

第一步、后台-系统参数-核心设置-是否使用伪静态:选择“是”;

注:你的网站空间是否支持伪静态,你可以与空间的IDC商联系一下,如果是自己的服务器,那就更好办了,自己动手,丰衣足食。一般来说,空间都是支持伪静态的。Apache服务器伪静态相对简单,直接在htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置httpdini文件。

第二步、如果你的网站已经存在生成的静态栏目或文章HTML,那么只需在后台-系统-SQL命令行工具中执行如下语句:

将所有文档设置为“仅动态浏览”:

update dede_archives set ismake=-1

将所有栏目设置为“使用动态页”:

update dede_arctype set isdefault=-1

第三步、列表页、文章页伪静态修改

打开/include/helpers/channelunithelperphp。

(1)查找:

//动态文章

if($cfg_rewrite == 'Y')

{

return $GLOBALS["cfg_plus_dir"]"/view-"$aid'-1html';

}

替换为

//动态文章

if($cfg_rewrite == 'Y')

{

return "/DedeCMS/DedeCMS57-"$aid'-1html';

}

意思是:将默认的/plus/view-1-1html文章链接格式改为/DedeCMS/DedeCMS57-1-1html。

(2) 查找:

//动态

$reurl = $GLOBALS['cfg_phpurl']"/listphptid="$typeid;

替换为

//动态

$reurl = "/category/list-"$typeid"html";

意思是:将默认的频道或是列表页URL/plus//listphptid=1变更为/dedecms/list-1html形式。

第四步、列表分页伪静态修改

打开/include/arclistviewclassphp

查找:

$plist = str_replace('phptid=', '-', $plist);

替换为

$plist = str_replace('plus/listphptid=', ‘DedeCMS/DedeCMS57-', $plist);

将默认的plus/listphptid=替换成RMB/list-;

意思是:将默认的列表分页链接格式plus/listphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml。

第五步、文章分页伪静态

打开/include/arcarchivesclassphp,找到获取动态的分页列表GetPagebreakDM()函数末尾处:

查找:

$PageList = str_replace("plus/viewphptid=","DedeCMS/DedeCMS57-",$PageList);

替换为

$plist = str_replace('plus/viewphptid=', ’DedeCMS/DedeCMS57-', $plist);

将默认的plus/viewphptid=替换成RMB/huilv-;

意思是:将默认的文章分页链接格式plus/viewphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml

第六步、TAG标签伪静态

DedeCms默认的TAG标签URL,形如/tagsphp/dedecms模板 /,是不是觉得有个问号不怎么爽,我们改成/tags/dedecms模板 /,是不是好看多了。

下面我们来改一下,打开/include/taglib/taglibphp:

查找:

$row['link'] = $cfg_cmsurl"/tagsphp/"urlencode($row['keyword'])"/";

替换为

$row['link'] = $cfg_cmsurl"/tags/"urlencode($row['keyword'])"/";

这样就修改好了,上传你到你的网站,切记:要记得将原网站备份哦!!

第七步、httpdini伪静态规则:

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

RewriteRule ^()/RMB/list-([0-9]+)\html $1/plus/list\php\tid=$2 [I]

RewriteRule ^()/RMB/list-([0-9]+)-([0-9]+)-([0-9]+)\html $1/plus/list\php\tid=$2&TotalResult=$3&PageNo=$4 [I]

RewriteRule ^()/RMB/huilv-([0-9]+)-([0-9]+)\html $1/plus/view\php\arcID=$2&pageno=$3 [I]

RewriteRule ^()/()_()_([0-9]+)\html $1/huilv/from=$2&to=$3&num=$4 [I]

RewriteRule ^()/tags\html $1/tags\php [I]

RewriteRule ^()/tags/()(:(\)) $1/tags\php\\/$2 [I]

RewriteRule ^()/tags/()\/(:(\)) $1/tags\php\\/$2\/ [I]

RewriteRule ^()/tags/()\/([0-9])(:(\)) $1/tags\php\\/$2\/$3 [I]

RewriteRule ^()/tags/()\/([0-9])\/(:(\)) $1/tags\php\\/$2\/$3\/ [I]

将上面代码保存为:httpdini 上传到网站的根目录。

如无特特殊需求建议采用官方默认的生成静态的页面方式浏览。

耗谌菀持瓼IELD标签”,文章页用的最多的是field标签,但还有一些用的比较少的标签,往往有的时候却是需要它们,到这里引入我们今天的主题,如何获取相关文章,有的站长在考虑seo优化方面的时候就需要在文章下面加入相关文章链接,那么这个在DEDE里面要如何实现呢?别急,下面小编和大家一起学习一个新的标签,我们通过这个标签即可获取相关文章,这个标签叫likeart,likeart标签和我们前面讲的arclist也是有点类似的,因为它们都是获取文章列表,我们来看一下它是怎么个用法,只需要给它设置两个属性即可,一个是titlelen,是文章标签长度的意思,还有一个是row,是获取多少条的意思,这些都根据自己的需要来设置。下面小编来写一个完整的,大家可以参考下:1 {dede:likeart2 3 titlelen='24' row='10'}4 5 [field:title/]6 7 {/dede:likeart}在上述代码中,中间部分如果大家看了小编前面的教程想必都不会陌生的,是两个底层模板,底层模板小编讲的太多了,这里就不重复了,一个是文章URL,一个是文章标题。我们把代码保存到文章页模板(article_articlehtm)中适当位置,然后上传到您的php虚拟主机去测试,别忘了重新在后台生成下HTML哦,不然是看不到效果的,如果成功可以调取10篇相关文章,大家可以看下小编的测试效果图:DEDECMS仿站建站基础

dedecms页面如何获取会员状态的实例代码

前几天做了一个企业网站,导航栏增加了会员信息,如:

已登陆:显示:欢迎 未登陆 显示: 请登录

代码如下:

代码如下:

{dede:php}

require_once(DEDEMEMBER"/configphp");

$uid = $cfg_ml->M_LoginID;

if(!$uid){

echo '

登录 |加入

';

}else{

echo '

'$uid' |/index_dophpfmdo=login&dopost=exit">登出

';

}

{/dede:php}

之前选择的自定义图集

一、添加一个获取地址的方法

打开 /include/extendfunc 文件(注:这个文件就是系统预留的自定义函数接口文件,主要用于二次开发用的。如果你是老版本,默认没有这个文件,自己创建一个PHP文件即可),在最下面的>上一行加入以下函数代码:(如果结尾没有>那就直接在最下面添加)

function GetOneImgUrl($img,$ftype=1){ if($img <> ''){ $dtp = new DedeTagParse(); $dtp->LoadSource($img); if(is_array($dtp->CTags)){ foreach($dtp->CTags as $ctag){ if($ctag->GetName()=='img'){ $width = $ctag->GetAtt('width'); $height = $ctag->GetAtt('height'); $imgurl = trim($ctag->GetInnerText()); $img = ''; if($imgurl != ''){ if($ftype==1){ $img = $imgurl; } else{ $img = '<img src="'$imgurl'" width="'$width'" height="'$height'" />'; } } } } } $dtp->Clear(); return $img; } }

可以直接用下面的方法调用

[field:自定义字段名 function="GetOneImgUrl(@me,显示类型)"/]

最终使用方法。

{dede:arclist typeid='12' addfields='datu' channelid='17' limit='0,7'}

<li><a href="[field:arcurl/]" target="_blank"><img border="0" src="[field:datu function='GetOneImgUrl(@me,1)'/]"></a></li>

{/dede:arclist}

最终调用到这个地址。

你的DEDE程序模板不全,建议下载同版本的DEDE程序,然后找到这个模板文件,COPY到现有的系统中即可解决。

那你看你的程序放对地方了没有,按道理是你的根目录下就有install这个文件夹,not found是没找到这个文件,或者是你的install里面有没有indexphp文件,你查看下就知道了!

dedecms与PHP54不兼容的问题,这个问题自从54出来就没有得到解决,我也遇到这问题了。如果你是本地测试,那把PHP。INI的配置修改一下增加SQL扩展库,如果你是空间只支持54,那没办法,你只能换空商服务商了,因为他们不可能会修改PHP。

要换一个版本的xampp,并且不要安装在以前安装过的盘里。

这是dedeCms的模板地址:

默认的是 /templets/defaults/

后台可以修改:

系统 -> 系统基本参数 -> 站点设置 -> 模板默认风格 -> 填写模板相应文件夹的名称

你的模板放到

templets 文件夹下即可。

例如你的模板文件夹名称为 new

则此处 填写 new

那么 {dede:globalcfg_templeturl} 就等于 /templets/new/

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » DEDECMS仿站建站基础:如何在文章页获取相关文章(LIKEART标签)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情