薇晓朵很少讲 WordPress 教程,今后将会逐步增加 WordPress 教程,我想这对于 WordPress 主题的使用是很有帮助的。特别 WordPress 数据库来讲,很多人知其然不知其所以然。 WordPress 使用数据库存储,恢复和显示数据。数据库是 CMS 最重要的部分。对于 WordPress 来讲能如此成功,我想数据库结构是一个很重要的部分。对于追求简约的今天,WordPress 采用了一个简单方便,易于理解和管理的数据库结构。
WordPress 提供开发者和用户几种方法访问存储在数据库中的数据,尽管大多数人没有必要直接访问数据库,但是为了更好的使用 WordPress,熟悉 WordPress 数据库是非常重要的。因为通过 WordPress 数据库,可以直接解决一些问题,如修改密码、关闭插件、选择主题等等。
一、 wp-config.php 中的数据库部分
在我们新安装 WordPress 的时候,提供了两种方法链接数据库,一就是根据提示进行设置,一就是配置 wp-config.php 。不过如何,都是对 wp-config.php 进行设置:
<pre>// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', ''); /** MySQL database username */ define('DB_USER', ''); /** MySQL database password */ define('DB_PASSWORD', ''); /** MySQL hostname */ define('DB_HOST', 'localhost'); /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8'); /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', ''); /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each a unique * prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_';</pre>
DB_NAME 是数据库名,DB_USER 是数据库用户名,DB_PASSWORD 数据库密码,DB_HOST 数据库主机名,DB_CHARSET 是字符编码,一般使用 utf8 就可以很好的工作,如果是特殊编码,可在这里修改。对于 DB_COLLATE 是控制单字节和双字节的,对于双字节就不要管它。接下来 $table_prefix 是表前缀。这允许你在一个数据库内安装多个 WordPress 。一些安全专家建议把这个修改成随机产生的字符,长度不要太短,这样黑客就不容易攻入你的数据库。
二、 WordPress 数据库结构
安装好了后,你可以使用 phpadmin 登录你的数据库,实际上不同的主机会有不同的登录方法。登录后你会发现有 12 张表。
这是默认的,实际上随着你安装相关插件,这个表可能会增多,因为一下插件会创建表来保存数据的。
三、日志表:wp_posts
wp_posts 是用来保存你在 wodpress 后台发布的文章日志的。这个表里面有写类说明一下:
这些自我解释的都不错,我们点击 「浏览」,看看文章类型,默认有文章、页面、版本、附件、导航菜单。如果你自定义了文章类型,在这里也会显示出来的。如:
post_mime_type 这一个类型大家可能不知道是什么,看到的是空的。实际上一旦你插入了图片之类的,你就会发现出现一些 jpg/gif 的图片链接地址之类的。
四、选项表: wp_options
选项表主要包括 WordPress 的设置,包括下面的一些字段:
- option_ID
- blog_ID
- option_name
- option_value
- auto_load
这个表里面包括许多相当重要的信息,如站名、网址、管理员电子邮件、激活的插件和主题。
五、数据库中的分类和术语
WordPress 使用了三种表去控制分类和自定义分类,这些是:
- wp_terms
- wp_term_taxonomy
- wp_term_relationship
对于新手来讲看上去很复杂,但是实际上是相对的简单。 第一张表 wp_terms 包含所有术语. 例如, Blogroll 一个术语并在未分类里。默认安装 Blogroll 是一个链接类别并在默认的分类里。所有标签,分类,链接分类,导航菜单,自定义类别都是储存在这张表的术语.
下一个 wp_term_taxonomy 表用于描述其归属,例如 术语 id 1 未分类) 属于分类栏目, 而术语 id 2 (Blogroll) 是链接栏目.
在 wp_term_relationship 属于关系表,也就是说一篇日志,那个部分归哪里管之类的。
六、数据库优化
在设置了一个数据库后,对其优化也是重要的一部分,MySQL 提供了一条语句可以优化表,非常简单:
<pre>OPTIMIZE TABLE 'wp_posts'</pre>
如果不想手动输入的话,也可以使用 phpmyadmin 优化:
另外还可以使用 WordPress 插件如 WP Optimize 或 r WP DBManager. 在使用插件时,插件会移除文章版本和垃圾评论。这是根据 WordPress 专家们所说的行数影响查询效率。
七、结论
WordPress 是简单的,易于理解的,保持干净和安全对于提高站点绩效是很重要的。因此不要忽略优化,并经常备份。