18

[转]dedeCMS首页调用留言板留言代码

第一种方法:

用织梦的feedback标签直接调用。代码如下:

 第二种方法:

利用织梦的loop标签(loop标签指的是万能循环标签)或SQL标签。
要调用这个标签,我们在这之前,应该事先了解到的信息就是,留言本模块的数据表为:#@_guestbook 换成SQL标签,可以调用为以下代码:

 第三种方法: Continue reading

15

解决WordPress分类目录排序最简单有效的修改方法

WordPress程序做网站时,习惯把分类目录做为导航调用,但是发现不可以任意排序。这刚开始接触WordPress程序,一个问题接着一个问题的出现,幸好有万能的百度,没有解决不了的问题。

搜索了一会,发现了一个最简单有效的解决WordPress分类目录排序的修改方法,如下:

  1. 打开文件/wp-includes/category-template.php
  2. 搜索function wp_list_categories
  3. wp_list_categories函数内找到‘orderby’ => ‘name’
  4. 修改为‘orderby’ => ‘id’

解释:改前是按名称排序,修改后意为由左及右按id从小到大排序。

:别的方法也有,又改程序又改数据库的,略为复杂。对于程序的使用修改,个人感觉能不改的就不改;如果一定改,那就是能小改的就不大改,能改模板的就不改程序。

15

DEDE织梦全局变量调用方法

/include/common.inc.php是dede定义全局变量的文件,此文件内定义了大量的全局变量,详细自己去看看。

dedeCMS织梦全局变量调用方法,如下:

第一种方法

  • {dede:global.变量名 /},注意闭合,否则会以文本形式输出。
  • 如:{dede:global.cfg_basehost /}

第二种方法

在{dede:list}、{dede:channel}、{dede:arclist}等形式的标签下层调用全局变量。

第三种方法

在{dede:list}、{dede:channel}、{dede:arclist}等形式的标签下层调用全局变量。

18

WordPress4.1亲测完美隐藏后台地址

小白参考,高手绕行。本人不懂PHP,不懂Wordpress,还在学习阶段,所以遇到很多问题都会去求助于我们伟大的百度。但是在搜索过程中,即使是排名前三的,也有很多不如意。就拿WordPress隐藏后台地址来讲,就花了我大约三个小时的时间去搜索和测试(本人又笨又不懂PHP,见笑了),但是不管怎么说,总算是弄成功了,就算是三十个小时,也值!

某高手博客中给出两段代码,如下代码是我感觉简单而通用的方法:

最害我这小白的是,他写着“将代码放在根目录wp-login.php文件的任意位置”,反正我是没找到它的位置,上面代码我没有测试成功。

但是,我的方法也是借鉴他的代码,亲测。

正确可用的Wordpress隐藏后台地址方法如下:

打开程序根目录/wp-login.php文件,把如下代码

放在第12行

的下一行。

正确的后台登陆地址为:http://你的域名/wp-login.php?my=123

如果使用http://你的域名/wp-login.php或http://你的域名/wp-admin/登陆会跳转到“Location:”后面设置的地址。当然这个地址你可以设置成首页,404页,或者玩一玩,做一个陷阱页(无限弹出,哈哈,够损!),小小地教训他们一下。但是如果你真的要做陷阱页,最好不要忘记在robots.txt文件中禁止蜘蛛爬此页。

说明:

“my”可以换任意大小写字母,“123”可以换任意大小写字母或数字或字母数字混合形式。

我这里废话多一些,没事闲得。如果感觉我这博客中,对你有些许帮助或者想共同学习交流,请收藏本站或留言。

2014年除夕  早

13

dedecms前台投稿及采集规则禁用本字段不起作用的解决办法

某天,要深入的利用一下织梦CMS的会员投稿功能,但发现有些字段需审核时管理员加入内容,这样就需要在会员前台发布文档时屏蔽某字段,可是在织梦后台对应的内容模型处找到并勾选了此功能,发现不起做用,网上一搜,原来是织梦的BUG。

解决“前台投稿及采集规则禁用本字段”不起作用的方法如下:

进入内容模型管理>>对应的内容模型>>字段管理>>在最下面的模型字段配置(文本模式),把autofield=”1″改成autofield=”0″就可以了。如下图:

dedecms001
解决“前台投稿及采集规则禁用本字段”不起作用图1

dedecms002
解决“前台投稿及采集规则禁用本字段”不起作用图2

09

wordpress程序网站换域名后不能正常显示怎么办?

wordpress程序网站换域名后不能正常显示的原因,是因为WP的CSS文件和JS文件等全站都是采用绝对网址链接调用,所以,也就是说,你换了域名后,所有的样式文件和JS文件都链接不到,也就不能正常显示了。

那么,怎么把不正常显示的Wordpress程序网站修改为正常显示呢?

修改方法如下

需要进入数据库,WP的数据库很简单,打开来,就那几个表,找到wp_opinions这个表,点击“浏览”进入表,再找到siteurl项,其实也就是第一项,点击编辑,修改为你的新链接。OK。

不知道有没有其它的方法,也就是说是不是可以从网站程序的后台进行修改,那就不得而知了,不做解释。

上种方法是亲测的,今天拿出来和大家分享下下。

03

修改:织梦采集导出默认为动态文章

织梦程序的二次开发,使之更适合自己,即使我这个不懂PHP的人在这几年使用织梦的过程中,慢慢的也会进行改动一些小的使用功能,越来起喜欢织梦了。

本人暂时还不喜欢静态做出的站,但很多SEO文章都讲静态站还是比动态站更利于搜索收录,以后可能会尝试静态网站。

程序自带免费采集文章功能,是织梦程序的一大亮点,也是很大一部分站长喜欢它的原因之一。像我这样的个人懒站长,不会原创,写出采集规则,就是个采,哈哈。

随着这几年对织梦程序的使用,自己也尝试着修改程序,也总结了一些小技术,本地也记录很多织梦程序的修改方法,也就是我的学习笔记。哈哈,对于我,很珍贵!

织梦采集导出改为动态文章,方法很简单,如下:

找到文件:

织梦安装目录/dede/co_export.php

搜索:

替换:

其实就是把那个原来为0的值改为-1,就OK了。

采集导出时,发布选项选择“普通文档”,附带选项选择“排除重复标题”。

 

02

修改DEDE采集功能之常用过滤规则

在使用织梦采集功能设置采集规则时,经常会用到过滤规则,而且织梦自带的正则在使用过程中,不是很奏效,每次点击过来总是要修改。一气之下,于是乎,把他给改了,改动后,更适合我自己使用。朋友们可以随自己喜好去改,方法如下:

找到文件:
/dede_zheshiwodemulu/templets/co_trimrule.html
晒下我改过的代码,之后再说修改应注意事项,有喜欢的可以直接复制。 Continue reading

30

PHP正则表达式之一

1、入门简介

简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或sed shell程序等。此外,象JavaScript这种客户端的脚本语言也提供了对正则表达式的支持。由此可见,正则表达式已经超出了某种语言或某个系统的局限,成为人们广为接受的概念和功能。
正则表达式可以让用户通过使用一系列的特殊字符构建匹配模式,然后把匹配模式与数据文件、程序输入以及WEB页面的表单输入等目标对象进行比较,根据比较对象中是否包含匹配模式,执行相应的程序。
举例来说,正则表达式的一个最为普遍的应用就是用于验证用户在线输入的邮件地址的格式是否正确。如果通过正则表达式验证用户邮件地址的格式正确,用户所填写的表单信息将会被正常处理;反之,如果用户输入的邮件地址与正则表达的模式不匹配,将会弹出提示信息,要求用户重新输入正确的邮件地址。由此可见正则表达式在WEB应用的逻辑判断中具有举足轻重的作用。

2、基本语法

在对正则表达式的功能和作用有了初步的了解之后,我们就来具体看一下正则表达式的语法格式。
正则表达式的形式一般如下:
/love/
其中位于“/”定界符之间的部分就是将要在目标对象中进行匹配的模式。用户只要把希望查找匹配对象的模式内容放入“/”定界符之间即可。为了能够使用户更加灵活的定制模式内容,正则表达式提供了专门的“元字符”。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。
较为常用的元字符包括: “+”, “*”,以及 “?”。其中,“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次,“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次,而“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。
下面,就让我们来看一下正则表达式元字符的具体应用。
/fo+/
因为上述正则表达式中包含“+”元字符,表示可以与目标对象中的 “fool”, “fo”, 或者 “football”等在字母f后面连续出现一个或多个字母o的字符串相匹配。
/eg*/
因为上述正则表达式中包含“*”元字符,表示可以与目标对象中的 “easy”, “ego”, 或者 “egg”等在字母e后面连续出现零个或多个字母g的字符串相匹配。
/Wil?/
因为上述正则表达式中包含“?”元字符,表示可以与目标对象中的 “Win”, 或者 “Wilson”,等在字母i后面连续出现零个或一个字母l的字符串相匹配。
除了元字符之外,用户还可以精确指定模式在匹配对象中出现的频率。例如,
/jim{2,6}/
上述正则表达式规定字符m可以在匹配对象中连续出现2-6次,因此,上述正则表达式可以同jimmy或jimmmmmy等字符串相匹配。
在对如何使用正则表达式有了初步了解之后,我们来看一下其它几个重要的元字符的使用方式。
\s:用于匹配单个空格符,包括tab键和换行符;
\S:用于匹配除单个空格符之外的所有字符;
\d:用于匹配从0到9的数字;
\w:用于匹配字母,数字或下划线字符;
\W:用于匹配所有与\w不匹配的字符;
. :用于匹配除换行符之外的所有字符。
(说明:我们可以把\s和\S以及\w和\W看作互为逆运算)
下面,我们就通过实例看一下如何在正则表达式中使用上述元字符。
/\s+/
上述正则表达式可以用于匹配目标对象中的一个或多个空格字符。
/\d000/
如果我们手中有一份复杂的财务报表,那么我们可以通过上述正则表达式轻而易举的查找到所有总额达千元的款项。

除了我们以上所介绍的元字符之外,正则表达式中还具有另外一种较为独特的专用字符,即定位符。定位符用于规定匹配模式在目标对象中的出现位置。
较为常用的定位符包括: “^”, “$”, “\b” 以及 “\B”。其中,“^”定位符规定匹配模式必须出现在目标字符串的开头,“$”定位符规定匹配模式必须出现在目标对象的结尾,\b定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一,而“\B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内,即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。同样,我们也可以把“^”和“$”以及“\b”和“\B”看作是互为逆运算的两组定位符。举例来说:
/^hell/
因为上述正则表达式中包含“^”定位符,所以可以与目标对象中以 “hell”, “hello”或 “hellhound”开头的字符串相匹配。
/ar$/
因为上述正则表达式中包含“$”定位符,所以可以与目标对象中以 “car”, “bar”或 “ar” 结尾的字符串相匹配。

/\bbom/
因为上述正则表达式模式以“\b”定位符开头,所以可以与目标对象中以 “bomb”, 或 “bom”开头的字符串相匹配。
/man\b/
因为上述正则表达式模式以“\b”定位符结尾,所以可以与目标对象中以 “human”, “woman”或 “man”结尾的字符串相匹配。
为了能够方便用户更加灵活的设定匹配模式,正则表达式允许使用者在匹配模式中指定某一个范围而不局限于具体的字符。例如:
/[A-Z]/
上述正则表达式将会与从A到Z范围内任何一个大写字母相匹配。
/[a-z]/
上述正则表达式将会与从a到z范围内任何一个小写字母相匹配。
/[0-9]/
上述正则表达式将会与从0到9范围内任何一个数字相匹配。
/([a-z][A-Z][0-9])+/
上述正则表达式将会与任何由字母和数字组成的字符串,如 “aB0” 等相匹配。这里需要提醒用户注意的一点就是可以在正则表达式中使用 “()” 把字符串组合在一起。“()”符号包含的内容必须同时出现在目标对象中。因此,上述正则表达式将无法与诸如 “abc”等的字符串匹配,因为“abc”中的最后一个字符为字母而非数字。
如果我们希望在正则表达式中实现类似编程逻辑中的“或”运算,在多个不同的模式中任选一个进行匹配的话,可以使用管道符 “|”。例如:
/to|too|2/
上述正则表达式将会与目标对象中的 “to”, “too”, 或 “2” 相匹配。
正则表达式中还有一个较为常用的运算符,即否定符 “[^]”。与我们前文所介绍的定位符 “^” 不同,否定符 “[^]”规定目标对象中不能存在模式中所规定的字符串。例如:
/[^A-C]/
上述字符串将会与目标对象中除A,B,和C之外的任何字符相匹配。一般来说,当“^”出现在 “[]”内时就被视做否定运算符;而当“^”位于“[]”之外,或没有“[]”时,则应当被视做定位符。
最后,当用户需要在正则表达式的模式中加入元字符,并查找其匹配对象时,可以使用转义符“\”。例如:
/Th\*/
上述正则表达式将会与目标对象中的“Th*”而非“The”等相匹配。

3、使用实例 Continue reading