玩转WordPress之配置篇——9条实用配置技巧

春节快乐,各位 :smile: 好久没发文章了,这里把前些日子写的一篇日志发出来~~

WP的特点就是你可以完全按你自己的想法来建立属于你自己的博客,这里说一下几个比较实用的配置项。


新手注意事项:
不要用记事本编辑wp-config.php文件,也不要给这个文件末尾加上?>标签。
以下所有涉及到要添加代码的,除非特别说明,否则,都是修改wp-config.php文件,需要添加的代码应该加在wp-config.php文件的

1
/* That's all, stop editing! Happy blogging. */

这一条注释之上。


1.版本与语言

目前英文版和中文版都能在官方下载到,不过如果你首先装的英文版,后来又想用中文版了也没关系,下载中文版的,然后把wp-content/languages目录下面的语言文件放到你博客的wp-content/languages 目录下面,再在wp-config.php中定义语言为中文即可,如:

1
define('WPLANG', 'zh_CN');

什么?你想要前台使用中文,后面使用英文?可以,有个名叫 admin-in-english 的小插件,装上就能满足你的要求。
如果要从单用户版转为多用户版,见我以前写过的文章。

2.用多大内存,你说了算

定义一般情况下允许wp使用的最大内存,如:

1
define('WP_MEMORY_LIMIT', '30M');

对于单用户博客,wp默认值是32M,对于多用户站点,默认是64M,你可以根据你的实际情况调整,如果你愿意的话。
这个参数值最终将作用在php配置的memory_limit项上。

定义处理图片时允许使用的最大内存:

1
define( 'WP_MAX_MEMORY_LIMIT', '128M' );

因为wp默认是256M的,这在某些内存较小的vps上面的话,可能会导致内存超出可分配值的错误。因此,你可以根据自己的情况调整之。
需要说明的是,这个限制仅用于限制imagecreatefromstring函数处理图片时的内存使用。因为GD在内存中处理图片时是没有压缩图片数据的。具体在function wp_load_image中有说明。

3.博客出问题了?调试一下吧

加上如下代码,WP将会老老实实的话所有错误信息显示出来:

1
2
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', true );

4.自动保存相关

1
2
3
4
5
6
//每30秒自动保存一次:
define( 'AUTOSAVE_INTERVAL', 30 );
//每周清理一次回收站(定义为0禁用回收站):
define( 'EMPTY_TRASH_DAYS', 7 );
//禁用日志修订
define('WP_POST_REVISIONS', false);

5.用的Unix/Linux/BSD主机?用UNIX Socket连接mysql数据库吧

如:

1
define('DB_HOST', 'localhost:/var/lib/mysql/mysql.sock');

6.更新插件或主题时出现“要执行请求的操作,WordPress 需要访问您网页服务器的权限。 请输入您的 FTP 登录XXXX的解决方法”

这种情况一般是主机的目录所有者与php的执行者(一般是apache或lighthttpd,nginx等)不同导致的,一般采用suphp以cgi方式运行php的站点不会出现此情况。
在wp-config.php中加入如下代码即可:

1
2
3
define('FS_METHOD', 'direct');
define('FS_CHMOD_DIR', 0777);
define('FS_CHMOD_FILE', 0777);

另外在wp-content目录下面新建一目录upgrade并且权限设置为777,插件目录plugins和主题目录themes也要给777权限(注意只是这两个目录本身,而不是目录下面的文件及目录!)

7.想要cookie-free domain的图片URL ?这个也很简单

你可以在同一服务器上面新建一子站点,如static.ihacklog.com ,假设把附件保存在wp-files目录下面,wp-files的绝对路径假设为
/home/ihacklog.com/www/static (这个路径要根据你自己的主机确定)
在后台,“设置”--〉“媒体选项
文件上传处,默认上传路径填写绝对路径 /home/ihacklog.com/www/static
注意,假如你是windows主机的话,这个路径要用这样的形式,如:D:\\htdocs\\ihacklog.com\\static
文件的完整 URL 地址填写:http://ihacklog-wordperss.b0.upaiyun.com/wp-files
这样以后,再更新数据库中的URL信息:

1
UPDATE wp_posts SET post_content= replace(post_content,'http://your-domain.com/wp-content/uploads/','http://ihacklog-wordperss.b0.upaiyun.com/wp-files/');

然后把你wp-content/uploads/目录下面的所有东东都移动到/home/ihacklog.com/www/static/wp-files/ 目录下面即可。

8.想把WP放在某个子目录下面?

这个对于用cp等主机面板的用户比较实用。因为主站目录是public_html(实际上是指向www目录的一个符号链接)的话,子站的目录也是在这个目录下面。直接把WP装在这下面的话,整个站点目录就显得比较乱了。把wp安装在子目录下面比较好一些。如,把wp安装在wp目录下面:
(这里假设你已经直接把wp安装在站点根目录下面了)
先去后台,“常规” --〉“常规”
WordPress 地址(URL)填写: http://your-domain.com/wp
站点地址(URL)不变,还是:http://your-domain.com
这样保存以后,在站点根目录下面新建一名为wp的目录,再把所有除.htaccess和 index.php的文件和目录全部移动到wp目录下面。
修改index.php文件require语句为:

1
require('./wp/wp-blog-header.php');

9.嫌默认的wp-login.php这个登录URL太麻烦?你可以修改它

将以下代码放到当前主题的functions.php文件中:

1
2
3
4
    add_action( 'init', 'wp_login_url_rewrite' );
    function wp_login_url_rewrite() {
        add_rewrite_rule( 'login/?$', 'wp-login.php', 'top' );
    }

然后,访问一下“设置” --〉“固定链接”(在这里什么事也不用干,打开一下这个页面即可),让wp自动更新一下rewrite规则好让规则即时生效。
好了,现在你可以在你博客域名的后面直接加上 /login来访问登录页面了。

更多
7 Responses Post a comment
  1. WordPress九条实用配置技巧 « Ben's Blog

    [...] 然后,访问一下“设置” --〉“固定链接”(在这里什么事也不用干,打开一下这个页面即可),让wp自动更新一下rewrite规则好让规则即时生效。 好了,现在你可以在你博客域名的后面直接加上 /login来访问登录页面了。 原文地址:玩转WordPress之配置篇——9条实用配置技巧 [...]

  2. 龙城瓶子

    怎么样能把wp-login.php这个文件改名又不影响使用呢

  3. 荒野无灯

    新年好!感谢反馈建议。你说的远程图片插件的bug我会仔细看看的。关于远程附近插件,我测试过可以真正删除文件的,第二点的话,应该不算bug,因为图片已经在FTP服务器上了,对于wp来说,要编辑的话,得先下载下来,完了在传上去。

  4. brushes8

    博主 插件 Hacklog Remote Image Autosave 在实际使用过程中发现了一些问题,
    1. 会重复下载图片 :arrow: 时不时的会有重复图片下载(这个好像看人品、有的时候刚好不会出现重复图片!),同时 只要更新文章的时候再次选择下载图片就铁定会再次把已经在远程下载到本地后的图片再下载一边!!! :cry:
    2. 文章图片会串····也就是说 你下载远程图片的时候有时候会再一次下载一边上一篇文章的全部图片!!(这样的情况很多次了)
    3. 现在wordpress中的媒体库里提供了一个 未附加 选项,就是图片没有插入文章中就会在这里出现!那些重复下载的图片并没有插入文章且也未在这里出现。导致无法删除那些重复图片!
    关于 Hacklog Remote Attachment 中的漏洞!
    1.我在媒体库使用删除图片功能或者在 文章使用删除图片的功能其都只能在数据库中删除,也就是说我用ftp查看 图片上传目录下其实图片还是在的。(图片与wordpress程序都在同一个虚拟主机中所以应该不存在权限问题!)
    2.同时 在插入图片的时候无法使用wordpress自带的“编辑图像”功能中的“拉伸图像”。因为这个是等比图片缩放的所以很实用我经常用到!
    望博主有时间的话 改进一下 谢谢了先!同时也祝博主新年快乐了!! :wink:

Leave a Reply

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS