之前写了2篇关于织梦的文章:织梦DedeCMS管理员密码破解方法解密和织梦建站SEO之标题间隔符号如何修改更合理。很多网站建设和网站SEO时候我们要对织梦网站根据自己需要进行大量模板或者程序修改,但是很多时候,一些小的技巧和小的问题让我们无法达到目的,今天就搜集下织梦网站常见问题,并给出可行的解决方案。希望大家有用。
1.DEDECMS后台传附件图片出现Upload filetype not allow解决办法
用dedecms上传图片,提示Upload filetype not allow,网上搜了有很多方法,
找到这个测试可用:
修改 /include/uploadsafe.inc.php 第45行
$imtypes = array 改成 $imgtypes = array
再更新缓存就ok了!
2.删除当前位置里的超链接,只保留文字(织梦DEDECMS)
如:
主 页 > 企业简介 > 组织结构
修改方法一:
文件\include\arc.archives.class.php
文件\include\arc.listview.class.php
文件\include\arc.partview.class.php
把三个文件里面的这句
Fields['position'] = $this->TypeLink->GetPositionLink(true);
都改成
Fields['position'] = $this->TypeLink->GetPositionLink(false);
修改方法二:
{dede:field name='position' function="strip_tags(@me)"/}
或者{dede:field name='position' function="html2txt(@me)"/}
dedecms浏览次数统计需要的设置 如果想显示点击次数,请增加view参数,即把下面JS调用放到文档模板
适当位置
<script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field name='id'/}
&mid={dede:field name='mid'/}" language="javascript"></script>
普通计数器为
<script src="{dede:field name='phpurl'/}/count.php?aid={dede:field name='id'/}&mid=
{dede:field name='mid'/}" language="javascript"></script>
DedeCMS列表页输出附件下载地址 说明:
在DedeCMS列表中直接输出文章所含附件的下载链接。
用法:
[field:body function="getDownloadUrl(@me)" /]
操作:
需要改动2个文件:
第一个:/include/extend.func.php
第二个:/include/fckeditor/editor/dialog/dede_addon.php
在第一个文件中添加函数:
/**
* 说明:输出文章内容中的附件地址,参数为文章内容
**/
function getDownloadUrl($string, $name = '下载附件', $target="_blank"){
if (empty($string)) return '';
$rs = preg_match('/regfile="(.*?)"/i',$string,$array);
if (!empty($array[1])){
$url = $array[1];
// 模板标签中使用的函数不能传入多个参数,所以HTML一块输出
$html = '<a href="' .$url. '" target="' .$target. '">(' . $name . ')</a>';
return $html;
}
//'功能制作中……';
}
修改第二个文件中的Ok函数中的rvalue为:
function Ok()
{
var rurl,widthdd,heightdd,rvalue,rurlname,addonname;
rurlname = form1.rurl.value;
addonname = form1.rname.value;
if(addonname=='') addonname = rurlname;
rurl = encodeURI(form1.rurl.value);
rvalue = '<table width="450">';
rvalue += '<tr><td height="30" width="20">';
rvalue += '<a href="' + rurl+'" target="_blank"><img src="<?php echo $cfg_phpurl; ?
>/img/addon.gif" border="0" align="center"></a>';
rvalue += '</td><td>';
// 为a签到添加regfile属性供刚添加的getFileUrl函数使用
rvalue += '<a regfile="' + rurl +'" href="'+ rurl +'" target="_blank"><u>'+ addonname +
'</u></a>';
rvalue += '</td></tr></table>';
oEditor.FCK.InsertHtml(rvalue);
return true;
}
<完>
3.完全删除DEDECMS自定义字段详解
在修改网站的时候由于需要增加自定义字段,后来不需要的时候,发现自定义字段无法删除。
于是找到了数据库的dede_addonarticle这个表,看到了自定义字段,删除后,在后台的模型中看到自定
义字段还存在,很多朋友都是做到这一步,就不知道如何做了。而且发布文章的时候还有错误,提示自定
义字段找不到,而无法发布文章。
原来在dede_channeltype这里面也就是模型配置里面还存在这个自定义字段,进入数据库
dede_channeltype表下,然后点击浏览内容,你会发现fieldset字段里面的内容还存在这个自定义字段。
以下为引用的内容:
<field:body itemname='文章内容' type='htmltext' isnull='true' default='' rename=''
page='split'/>
<field:daima itemname="代码" autofield="1" notsend="1" type="htmltext" isnull="true"
islist="0" default="" function="" maxlength="" page="">
</field:daima>
只要我们删除<field:你的字段></field>这样就可以了。问题解决了。
4.dedecms在软件列表页调出下载链接
DEDE后台
核心-》频道模型-》内容管理:
编辑软件 模型
基本设置,找到 列表附加字段 ,加入 softlinks
然后到 系统-》软件频道设置:
链接显示方式:直接显示地址列表
附件下载方式:链接到软件真实软件地址
然后在软件列表模板加入
[field:softlinks/]
5.Dedecms当前位置{dede:field name='position'/}修改,如何去掉>
在google里搜了半天,搜到了,baidu搜不到,BS。
原文如下:
--------------------------------------------------------------
一、修改{dede:field name='position'/}的文字间隔符,官方默认的是>
在include/typelink.class.php第101行左右将>修改为你想要的符号即可
二、去掉{dede:field name='position' /}最后的分隔符>
{dede:field name='position' runphp='yes'}
$a=mb_strlen(@me);//计算字符串的长度
@me=cn_substr(@me,$a-2,-1);//截取字符
{/dede:field}
三、{dede:field name='position'/} 中去掉 > 并去掉最后一个文本的链接的解决方案
{dede:field name='position' runphp='yes'}
$tc=" > ";
$tf=split($tc,@me);
$tn=count($tf);
for($iij=0;$iij<($tn-1);$iij++){
if($iij==($tn-2)){$tf[$iij]=strip_tags($tf[$iij]);}
$tl=$tl.$tf[$iij];
}
@me=$tl;
echo @me;
{/dede:field}
如果还需要分隔符的话,就把$tl=$tl.$tf[$iij]; 换成
$tl=$tl."空格分隔符空格".$tf[$iij];
-------------------------------------------------------------------------------------------
----
备注:第二种办法是去掉了最后一个>,但链接还是显示的(大部分在栏目页时都不显示当前栏目链接)
,栏目页就这样调用了,满足了!
内容页就用笨办法,在后面加上“正文”两字。
6.dedecms 当前位置:{dede:field name='position'/}另类写法
您当前所在的位置:<a href="/">本站首页</a> >{dede:channel type='top' currentstyle="
<a href='~typelink~'>~typename~</a>
"}
{/dede:channel} >
{dede:channel currentstyle="
<a href='#'>~typename~</a>
"}
{/dede:channel}
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。