博客用的国外的主题,对中文处理不是太好。尤其是首页会把文章的全部内容都输出,使首页变得很长,对于我这种爱贴代码的程序猿来说,这个病,必须治!

解决办法有三种:

  1. more标签
  2. 自己写方法截取文字
  3. the_excerpt()

more标签

以下引用sumile_ting 的话:

这种方法是在每次写文章时在文章中插入一个More标签。

添加More标签的方法:

写文章时,在需要作为摘要的地方点击编辑器中的More标签,或在HTML编辑状态加加入,或者直接按Alt+Shift+T,3种方法任选其一。

这种方法使用起来太麻烦,要求每一篇文章都得手动加,一不小心可能就忘记了。还不如修改主题模板来的方便快捷。

自造方法

自己写方法必须对function.php和content.php做改写,先找到


the_content()方法返回了文章的内容,处理一下就可以限制字数了,具体方法请自查。

但是对于我还是不合适,因为此时文章还没有被插件渲染,文章内的代码会被直接以纯文本的形式展示,很不和谐。 所以这个方案,pass

the_excerpt()

此方法是wordpress显示文章摘要的API,效果与the_content() 一样,只是这个函数对中文支持不好,需要处理一下

以下是步骤:

方法2的the_content()修改为the_excerpt() 在function下加入以下代码

function custom_excerpt_length( $length ) {
    return 200;
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

给readmore加个链接,同样在functions.php中添加:

function new_excerpt_more( $more ) {
    return '阅读全文';
}
add_filter('excerpt_more', 'new_excerpt_more');

完美解决

参考:

http://sumile.blog.hexun.com/63924812_d.html

http://www.gemshe.com/fashion/suneyeglass/wordpress%E7%9A%84%E6%96%87%E7%AB%A0%E5%BD%A2%E5%BC%8Fget_post_format/

http://www.seanstudio.com/archives/2558

http://www.daxiawp.com/change-to-excerpt.html

apache的配置文件一直看得我云里雾里的,今天好好把配置文件研究了一下,还是有点收获的。 看httpd.conf的内容,它主要分成3大部分:

Section 1:Global Environment Section 2:'Main' server configuration Section 3:Virtual Hosts

以后修改配置的时候一定要注意,不要写错了地方

阅读剩余部分

简单的记录一下搭建自己的博客需要做的事情!

确定主题

一个网站的主题很重要,要不然你会无从下手,所以千万不要像我这样开一个这么无聊的blog。为什么说此步骤最难,就是因为点子是最重要的,只要主题(目标)明确,那么建立(实现)它就是易如反掌了。

选域名

域名是什么?其实就是一个网站的艺名而已。人家的网站叫“234.156.78.90”,你的叫“ccav.com”,那么你说那个更容易出名呢?所以,好的域名可能让你的网站迅速火起来。举个小栗子,以前的京东商城的域名是360buy.com,不懂英语的人当然不好记了,现在改名jd.com,既好记又提升了企业形象,何乐而不为呢?(估计这个域名京东花了不少钱)。不建议大家购买com以外的域名,尤其是cn结尾的,至于为什么大家可以自己研究。域名选好了后,就购买空间了。

虚拟主机(网站空间)

光是有了像phpgao.com这样的域名是不够的,因为你需要把你的文章放到互联网上供大家访问,所以你需要一个专用服务器,当然自己搭建服务器也是可以的,但是如果是个规模不大的网站老高建议还是租用吧,我的空间就是淘宝上买的,28半年,香港主机,速度还行。(为什么是香港空间?免备案呗!)

域名与空间的绑定

GOOD!既然你已经有了域名和空间,是时候将它们相互关联了。这一步比较关键!为了让大家更好的理解这一节。老高来举个大栗子,某一天老高要孤身一人拜访位从未谋面的远房亲戚,远程通话后确定目的地,坐飞机2小时(想的好美啊),下飞机后找那个举着牌子的人,我才能顺利见到那位亲戚。也就是说,我从出发到坐飞机,到达后根据牌子辨认身份这一系列的动作如果有一个失误,我的此次出行就是失败的,之后我只能沮丧的回家了。。。反应到现实就是:和我通话的那个人就是域名,他告诉我他在哪个IP等我,等我通过IP到站后,找那个举着牌子的人,这样就完成了一次“见面”。简单的说空间有个IP,你的域名必须解析到那个IP才行,当然不要忘了空间需要和你的域名绑定。

最后的工作

如果域名没有备案的话,那么你的空间应该和我一样不在内地吧。不过不要紧,能访问就行。想要搭建WP这类博客,你的空间还需要一个不是太小的MYSQL空间,也就是传说中的数据库。我的空间是200M+200M型,也就是说我的空间能放小于200M的MP3文件并且在数据库能够存放200M的数据。其实这么点空间建一个站已经很富裕了。(注:国外的空间不是很稳定,一定要定期备份!)

Windows

步骤如下: 1.停止mysql服务(以管理员身份,在cmd命令行下运行)

net stop mysql 

2.使用 mysqld –skip-grant-tables 命令启动mysql数据库

>D:\>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
D:\>mysqld --skip-grant-tables

3.新开一个cmd窗口,进行如下操作

D:\>mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.26-rc-community MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> update mysql.user set password=password('root') where user='root';
Query OK, 1 row affected (0.02 sec)
Rows matched: 2  Changed: 1  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

4.打开任务管理器,停止mysql,mysqld进程,使用net start mysql启动mysqld服务,就可以使用root用户 root密码进入数据库了。

mysql -u root -p root

Linux

linux下解决办法和win下差不多,都是先开启一个没有权限验证的mysql,修改密码后直接重启mysql即可!

# 停用mysql
service mysqld stop


--------------------------------


# 使用无权限验证启动mysql
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

# 如果启动失败可以采用修改mysql配置文件的方法
vim /etc/my.ini

[mysqld] 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock
# ADD 
skip-grant-tables

# 重启mysql
service mysql restart

--------------------------------

# 修改密码操作同上


# 重启mysql

service mysqld restart

常见密码:

以下是常见的mysql密码,修改的时候就不用使用password()再生成了。


SELECT PASSWORD('123456');  -  *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9
SELECT PASSWORD('mysql');  -  *E74858DB86EBA20BC33D0AECAE8A8108C56B17FA
SELECT PASSWORD('admin');  -  *4ACFE3202A5FF5CF467898FC58AAB1D615029441
SELECT PASSWORD('root');  -  *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B
SELECT PASSWORD('toor');  -  *9CFBBC772F3F6C106020035386DA5BBBF1249A11
SELECT PASSWORD('new-password');  -  *4A82FDF1D80BA7470BA2E17FEEFD5A53D5D3B762
SELECT PASSWORD('kangle');  -  *39534390859F20B4F7591340666D1B1FF1DC0F30
SELECT PASSWORD('asdqwe');  -  *7E1FF641317801DCCB60031184404B45E8A84BCC

2015年1月19日更新:

增加linux解决方法

补充常见密码

IIS服务器下伪静态的配置需要参照Apache.htaccess文件。 首先要使IIS支持URL Rewrite,所以必须让服务器加载ISAPI_Rewrite! 什么是ISAPI_Rewrite? ISAPI 翻译为:英特网服务器应用编程接口。

最常用的用途是URL Rewrite,辅助动态网站(主要为PHP脚本的程序)实现伪静态功能。

IIS支持ISAPI后就剩下两个步骤了:

1.建立一个httpd.ini文件,文件内容如下:

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
RewriteRule /sitemap_baidu.xml /sitemap_baidu.xml [L]
RewriteRule /sitemap.html /sitemap.html [L]
RewriteRule /archivers/(.*) /archivers/$1 [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

2.wordpress后台固定链接设置为:

/%post_id%.html

搞定,撒花吧~

有些网站经常要用到跳转,比如商务通啊,支付宝啊,下面是我总结的几种方法,包括HTML,JS,PHP

PHP的header()


Meta标签



页面只停留一秒……

   

JS的location.href

//注:此方法容易被拦截**


测试源码如下

header("Content-type: text/html; charset=utf-8");
echo '
'; echo "ascii ", strlen('hello'); //ascii echo '
'; echo '
'; function strlentest($str) { echo '
'; echo $str, ":"; echo '
'; echo "utf8 ", strlen($str); //utf8 echo '
'; echo "gbk ", strlen(iconv('utf-8', 'GBK', $str)); //gbk echo '
'; echo "gb2312 ", strlen(iconv('utf-8', 'gb2312', $str)); //gb2312 echo '
'; } $str = "中国人"; strlentest($str); $str = "A人1"; strlentest($str); $str = "AAA"; strlentest($str); $str = "111"; strlentest($str);

结论: 自己总结吧