分享好友 最新动态首页 最新动态分类 切换频道
dede {cmspath}怎么配置
2024-12-26 10:04
请大家花点耐心看完这个吧,这些问题很多人都有碰到.何必要不停的发贴子问呢?

另外,看完这个请去你自己的后台看完模板标记参考!!特别是arclist这个标记的参数说明!!

多思考一下问题,多试验一下标记,,学到就是自己的,学不到,谁也帮不到你!!

补充一点..很多标记都可以参考系统默认的模板和模板区的一些好模板,多看标记体会每个标记的用法,



下文如果有您的贴子..感谢您对DEDE的匏礁冻?.


3.1lit最新版当一级栏目为最终列表栏目时,使列表显示其下级栏目的文章的修改

include/inc_arclist_view.php
80行
$addSql .= " And (typeid='".$this->TypeID."' or typeid2='".$this->TypeID."') ";

更改为
//增加的,用来解决上级列表调用不出下级列表的问题
    $ssid = TypeGetSunID($this->TypeID,$this->dsql);
    $ssid2 = str_replace('typeid','typeid2',$ssid);
    //结束增加的
    $addSql .= " And (typeid='".$this->TypeID."' or ".$ssid." or typeid2='".$this->TypeID."' or ".$ssid2.") ";//本句也已修改
上面这部分用来解决分页问题

include/inc/inc_fun_SpGetArcList.php
70行开始
if($ridnum>1){
    $tpsql = "";
    for($i=0;$i<$ridnum;$i++){
        if($tpsql=="") $tpsql .= " And (".TypeGetSunID($reids[$i],$dsql,'arc');
        else $tpsql .= " Or ".TypeGetSunID($reids[$i],$dsql,'arc');
    }
    $tpsql .= ") ";
    $orwhere .= $tpsql;
    unset($tpsql);
    }
    else{
    $orwhere .= " And ".TypeGetSunID($typeid,$dsql,'arc');
    }


更改为
if($ridnum>1){
    $tpsql = "";
    for($i=0;$i<$ridnum;$i++){
        if($tpsql=="") {
        //开始修改文章第二栏目调用问题
        $ssid = TypeGetSunID($reids[$i],$dsql,'arc');
        $ssid2 = str_replace('typeid','typeid2',$ssid);
        $tpsql .= " And (".$ssid." or ".$ssid2;}
        else {
        $tpsql .= " Or ".TypeGetSunID($reids[$i],$dsql,'arc');
        $tpsql .= str_replace('typeid','typeid2',$tpsql);}
    }
    $tpsql .= ") ";
    $orwhere .= $tpsql;
    unset($tpsql);
    }
    else{
    $ssid = TypeGetSunID($typeid,$dsql,'arc');
    $ssid2 = str_replace('typeid','typeid2',$ssid);
    $orwhere .= " And (".$ssid." or ".$ssid2.") ";//结束修改文章第二栏目调用问题
    }

此部分用来解决调用下级栏目文章列表问题

替换的代码我写的很粗糙,可以暂时先用着,等官方的解决方案出来后再替换

在 include/inc_arclist_view.php还要改一处

//获得一个单列的文档列表


    //类别ID的条件
    $orwhere .= " And (#@__archives.typeid='".$this->TypeID."' or #@__archives.typeid2='".$this->TypeID."') ";

改为

    //类别ID的条件
      $ssid = TypeGetSunID($this->TypeID,$this->dsql);

    $orwhere .= " And (#@__archives.typeid='".$this->TypeID."' or ".$ssid." or #@__archives.typeid2='".$this->TypeID."') ";

否则有页面没有列表内容,因为80行是Select count(*).....




关于那个栏目路径有个{cmspath}
首先说一下{cmspath}的意思,,打开后台"系统配置参数"可以看到第二项,DedeCms安装目录
这个就是{cmspath}所解析出来的路径,

如果beta2升级到lit,需要手工修改栏目属性,把{cmspath}去除.或者你运行setup升级完之后用lit的所有文件
替换掉之前的B2的所有文件,这样{cmspath}就可以正常解析成你的网站路径

如果你不用{cmspath}这个参数,.可以照下面的修改

执行SQL: update dede_arctype set typedir=replace(typeidr,'{cmspath}','');
以去掉数据库的里 {cmspath}
然后修改文件 catalog_add.php 找到 $true_typedir = str_replace("{cmspath}",$cfg_cmspath,$typedir);

改成
$true_typedir = str_replace("",$cfg_cmspath,$typedir);
就行

[field:description /]这个标签如何限制字数?
[field:description function='cn_substr(@me,80)'/]
dede 里的所有标记都支持这样使用函数的

关于3.1版友情链接添加后在首页没有显示的问题
引起这个的主要原因是BLT在编写的时候把表 dede_flink的ischeck的值弄反了造成的.
在3.01里..ischeck=1表示首页链接..2表示内页链接,但3.1正好相反,
给一个最简直的改法就是打开inc_fun_SpGetFriendLink.php
找到第13行..
Copy code
$wsql = " where ischeck=1 ";

将1改为2就行了.


11.11更新过后,取消了inc_fun_SpGetFriendLink.php这个文件的调用.
所以只须要打开inc_arcpart_view.php

在410行附近
Copy code
    $wsql = " where ischeck=1 ";
    if($type=="p_w_picpath") $wsql .= " And logo<>'' ";
    else if($type=="text") $wsql .= " And logo='' ";
    else $wsql .= "";


同样将where ischeck=1改为2就可以

3.1LIT版广告名称修改后无效的解决办法
http://bbs.dedecms.com/read.php?tid=7135
看4楼的回贴.


dede新版如何去掉列表的文章摘要
删除[field:info/]


关于后台登陆验证码样式的修改

http://bbs.dedecms.com/read.php?tid=6244


当文章描述中出现的英文长度大于table的宽度时,会搞的很难看


[field:textlink /]

改为

<a href='[field:arcurl /]'>[field:title function='cn_substr(@me,30)' /]</a>




新建频道模型教程


http://bbs.dedecms.com/read.php?tid=5972

dedecms实现列表页双样式

<table width='100%>
{dede:list type='full'}
<tr>
<td class='[field:ID function='MagicVar("arch2","arch2")'/]'><b>[field:typelink /] [field:textlink /]</b>点击:[field:click /]([field:stime /])</td>
</tr>
{/dede:list}
</table>



我想实现一个功能,就是在文章列表中(模板list_article)如果文章有缩略图就显示缩略图,没有的话则直接显示文章列表而不显示“没有缩略图”的图片。


dedecms的扩展是用function形式的,因为加入if这种结构太占用资源,如果你有必要,你可以这样

[field:picname function="GetMyPic('@me')"/]

在 inc_functions.php 里定义一个函数
function GetMyPic($img)
{
if($img=="") return "";
else return "<img src='$img' width='120' height='100' border='0'>";
}

这样来处理

这种做法可能会有点不便,但好处是既达到扩展目的,又不会占用太大资源,又不影响模板结构,实现真正的模板与代码分离



点击图片进入下一页


打开include/inc_archives_view.php

大概在444行左右,找到
$this->Fields[$this->SplitPageField]=$this->Fields[$this->SplitPageField];

注释掉,改为

$this->Fields[$this->SplitPageField]=$this->ClickPicNext($this->Fields[$this->SplitPageField]);


然后,最后加上函数,注意在最后一个括号里面!


//把图片替换成链接
//----------------------------
function ClickPicNext(&$body)
{
if($this->NowPage!=$this->TotalPage){
  $lPage=$this->NowPage+1;
  $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=["|'| ]{0,}((.*)>)/isU","<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."${0}"."</a>",$body);
  //$body="<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>".$body."</a> ";
}else{
  if($this->GetNext()){
    $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=["|'| ]{0,}((.*)>)/isU","<a href='".$this->GetNext()."'>"."${0}"."</a>",$body);
    //$body="<a href='".$this->GetNext()."'>".$body."</a> ";  
  }

}
  return $body;
}




自动地把文章中的图片替换为下一页的链接,如果是最后一页,则为下一篇!
注意:先要按下面的改法,把上一篇下一篇分开才行!



[dede3.1][改法]上一篇下一篇分开调用,且限定文章所在栏目内而不是现在的全站。


http://bbs.dedecms.com/read.php?tid=5051



在文章列表中,有的标题被截断了,用什么样的代码可以让鼠标在上面的时候可以显示完整的文件名?

{dede:arclist row=16 orderby=pubdate col=1 typeid=3}
<li>· <a href="[field:arcurl /]" title ="[field:title/]">[field:title function="cn_substr('@me',30)" /]</a></li>
{/dede:arclist}


怎么样在文章名前面显示所属的文章栏目?

{dede:arclist row=10 orderby=pubdate}
·[field:typelink/] [field:textlink/]<br/>
{/dede:arclist}




生成的文章文件名能不能增加MD5加密

自己改一下,这种属于典型的无聊需求吧
include/inc_channel_unit_functions.php
.


[field:writer /]怎么没有用

lit版inc_arcpart_view.php没有读取附加表
修改includeincinc_fun_SpGetArcList.php第120行,在后面加 arc.writer,
当然你也可以加入你还想引入的附加表内容如:
arc.writer,arc.source,arc.shorttitle,



新安装的DEDECMS3.0.1,第一次登陆就说我密码错误!

你要查一下是否有 dede_admin 这个表,如果有,看看有没有数据
如果用户名和密码没有不允许的符号的话
一般是服务器可能能无法完成安装的SQL导入才可能会提示用户名不存在
手工加个用户就OK了.
也可以在数据库中删除表dede_admin,然后重新安装即可




关于listpage分页在生成会有表格的修改


搜索

//获取静态的分页列表

在下面的几行可以看到分页的一些东东





关于栏目多风格和系统底层模版的问题


用arclist

{dede:arclist
typeid='' row='' col='' titlelen=''
infolen='' imgwidth='' imgheight='' listtype='' orderby='' keyword=''}

自定义样式模板(InnerText)   //这里定义你显示的样式..不要修改底层模板了..免得你自己麻烦.

{/dede:arclist}


另外栏目的模板可以不使用系统默认的{style}/list_article.htm
你可以手工指定栏目的封面模板或是列表模板嘛..列如:{style}/list_class1.htm
{style}/list_class2.htm
等.这样就可以多风格了嘛.



用dedecms做小说站的思路

1、新建两个模型
book模型和章节模型
2、重新写档案发布程序,关键把两个模型关联起来,而现在提供内容模型的cmsware 和dede都是办不到的,而dede自建频道提供的档案发布程序项可以很好的利用。重新些这四个文件(两个界面和两个提交后处理的程序)即可。
3、如果要做成起点中文网哪种模式,那就要在member目录下写关于投稿的程序,以及在plus里面写业务模式如计费、计点等功能的程序。
其实, dede只是一个内容发布的框架,提供的后台工具只针对管理员而已,用户完全可以自我定制各种模型,不过要对dede熟悉一点而已。
能写程序的不妨一试。


为什么我的自定义标记总是被当做文本来输出
标记里要加上 ismake='yes' 属性


对图片SEO的一些思考


<a href='[field:arcurl /]'><img src='[field:picname /]' alt='[field:title /]' border='0' width='imgwidth' height='imgheight'></a>

参考arclist标记的说明,,



dede编辑器的问题..从WORD复制进去的错误


复制后安 工具栏 上那个右下角有黄色T的粘贴按钮~移上去有提示的,无格式粘贴





标签的定义放在什么地方的

凡是include里的文件,有什么 ***view.php 都是控制视图的



关于自动分页的问题

自动分页的大小为只能在2-5之前
3 就是每个分页为3K的意思。
这个跟动易的不一样,动易的是字节,所以你可以写2000 或则 3000 DEDE的是K 所以,你只能写 2或则3,我的错误在,我写成2000K!汗一个
这在DEDE里的意思是,一个分页允许到2M !自然不成功




关于分页标题


内容部分如下格式即可

分页标题1#e#

第1页内容

#p#分页标题2#e#

第2页内容

#p#分页标题3#e#

第3页内容

#p#分页标题4#e#

第4页内容









附加选项: 下载远程图片和资源 怎么关闭啊

dede/article_add.php 和 article_edit.php中找到(如果是其他的模型找到对应的添加和修改文件

<td width="90"> 附加选项:</td>
    <td> <input name="remote" type="checkbox" class="np" id="remote" value="1" checked>
    下载远程图片和资源

把value改成0 删除checked




3.1B2///channelArtlist和arclist的BUG暂时解决方案

修正所有栏目列表都一样和channelArtlist下arclist标签无法自定义

打开include/inc_arcpart_view.php
在207行找到

else $typeid = 0;

然后把他删掉

再打开include/inc/inc_fun_SpGetChannelList.php
在第66行找到

$ctag->GetAtt('innertext')

改为

$ctag->GetInnerText()


即可。



如果有问题的,也可以加群:18176791
最新文章
kafka 可视化工具_RocketMQ 可视化环境搭建和基础代码使用
早期阿里曾经基于 ActiveMQ 研发消息系统, 随着业务消息的规模增大,瓶颈逐渐显现,后来也考虑过Kafka,但因为在低延迟和高可靠性方面没有选择,最后才自主研发了 RocketMQ, 各方面的性能都比目前已
AI客服“已读乱回 ” 被吐槽难转人工
近日,市民杨先生在某电商平台买了一些进口猫粮,收到货后发现部分猫粮已经变质。他第一时间联系了客服,却发现不管他向对方发过去什么内容,AI客服总是自动回复“请简单描述您的问题”“我将尽最大努力帮您解决”,没有任何进一步的解决方
Java 集合之给ArrayList排序
Java 集合之给ArrayList排序 ArrayList的排序可以借助Collections工具类的sort(List list)以及重载的sort(List list, Comparator? super T c)方法;其中要想使用sort(List lis)方法进行排序集合元素必须实现comparable接口中的compar
Docker可视化管理工具Shipyard安装与配置
1. 数据存储(rethinkdb)2.服务发现(etcd)为了启用Swarm leader选择,我们必须使用来自Swarm容器的外部键值存储。此处,我们使用Etcd作为服务发现工具。可以选用的服务发现工具还有Consul、Zookeeper等。3. Docker代理服务(shipyard/do
360借条逾期能否协商还款本金呢
360借条逾期能协商还本金不?小编导语在当今社会,借贷已经成为人们生活中不可或缺的一部分。尤其是随着互联网金融的发展,像360借条这样的借贷平台越来越受到用户的青睐。借款后,许多用户可能会因为各种原因导致逾期还款。在这种情况下,
2024汕头潮南体育生文化课最新收费标准>top5最新收费标准排名一览
2024汕头潮南体育生文化课最新收费标准top5最新收费标准排名一览  2. 汕头潮南高三复读辅导班  3. 汕头潮南立行高考复读冲刺班  4. 汕头潮南立行高中复读集训班
7777888888管家婆网一,创新推广策略_桌面款54.579
在这个数字化时代,创新推广策略对于企业而言至关重要。7777888888管家婆网一,作为一家领先的桌面软件供应商,通过其创新的推广策略,成功地将桌面款54.579推向市场,获得了广泛的关注和认可。本文将探讨7777888888管家婆网一如何通过一系
301重定向,对谷歌SEO有何影响?
在数字化营销的世界里,每一个细节都至关重要,特别是当我们谈论到搜索引擎优化(SEO)时。作为一名在SEO领域摸爬滚打多年的实践者,我深知301重定向在谷歌SEO中的分量。它不仅是网站迁移、页面更新时的得力助手,更是保留和传递链接权重、
MBA同级声|长江的课,怎么上更有收获?
I前言这个周末,2024级新同学们将在北京、上海、深圳三地的校区,正式开始为期2年的MBA课程。长江MBA有哪些课,不同的课该怎么上,有哪些常见误区?听听2022级上海班的张林学长怎么说。豪马国际 合伙人长江MBA2022级上海班在长江,如何“课
AI 能否替代程序员?且听我来一唠!
关于 AI 替代程序员这事儿,咱得仔细唠唠。随着 AI 技术的飞速发展,越来越多人担心程序员会被 AI 取代。程序员会不会失业呢?答案是:没那么简单! 首先,AI 确实已经可以干很多程序员的活儿了࿰
相关文章
推荐文章
发表评论
0评