get_option函数的作用

如果你想开发自己的一个wordpress插件,那么也许你有些数据希望保存,这些自定义数据一起都保存在 wordpress数据库的wp_options表,wp_options表就像一个大抽屉,你的wordpress设置,还有你的wordpress插 件的自定义数据,都被塞在这个wp_options表里面里面。如果你喜欢自己直接读取wordpress数据库,那么get_option()函数也就 无所谓用不用,但是如果你希望你的wordpress代码能够与未来兼容,或者不希望自己的single.php等等源代码太大而逻辑负责,或者希望自己 的wordpress plugin能够被更多不会使用php和mysql的用户来使用,那么用wordpress本身自带的get_option()函数还是比较安全与方便一 点。当然,使用了wordpress的get_option函数以及plugin机制,对wordpress的速度会有轻微影响,这个利弊就要你自己权衡 了。

好了,谈了这么多wordpress数据库的wp_options表,就是希望你对于get_option能够更加理解深刻一些。下面介绍一下get_option函数的用法:

get_option函数的格式:

<?php echo get_option($showwhat); ?>

或者

<?php echo get_option(“showwhat”); ?>

这里$showwhat可以是许多东西,找wp_options表吧,据个例子:

<?php echo get_option(“blog_charset“); ?> //得到你的blog的字符集

<?php $admin_email = get_option(‘admin_email’); ?> //得到你的blog的email,有什么用?比如有人发帖就给自己发信。

……

请务必注意,以前wordpress中的get_settings()函数,就是被现在的get_option()函数取代了的。

 
 

get_option()这个函数,实际上我们在整合后台功能的时候经常会用到的一个函数,主要用来从 WordPress 博客数据库 option 表中取得我们想要的字段内容的一个函数,在目前大部分的主题中,只要是主题集成了后台控制页面,也大都用到了这个函数,虽然 WP 给了我们很多方法去临时存储我们对主题的设置,但是用比较稳定的数据库去存储主题设置还是大部分主题作者的首选。

get_option() 函数的解释、用法网上还是有很多中文文献的,包括官方文档该函数也有中文版的解释,因为使用起来简单,思路比较清晰所以这里就不过多解释。
官方API :get_option
直接备忘用法

使用技巧

通常我们取设置的时候,会加一个判断,因为我们不知道主题是不是第一次在系统中安装,

  1. if (!get_option('xiangzi')){//判断是否存在 $default_xiangzi = array (//先设置一个默认值 'title'=>'淄博网站建设', 'name'=>'曹永泉', 'url'=>'8531.org'); update_option('caoyongquan', $default_xiangzi );
    //设置option的默认值 } $xiangzi = get_option('caoyongquan');//获取设置


很凑巧,出于某种原因 WP 官方为我们增设了get_option 函数的第二个参数
所以我们可以这样

  1. $default_xiangzi = array (//先设置一个默认值 'title'=>'淄博网站建设', 'name'=>'曹永泉', 'url'=>'8531.org') $xiangzi = get_option('xiangzi',$default_xiangzi ); 
//这样是不是很简单?    

wordpress教程之get_option()的更多相关文章

  1. wordpress教程之get_posts()

    get_posts 介绍 June 3rd 2012 评论(16) get_posts 函数,简单的来讲是 get_post 的复数新形势,但因为是文章多篇提取,所以使用方法上却略有不同,支持众多参数 ...

  2. wordpress教程之WP_Query()类

    WP_Query的使用方法 在讲WP_Query之前我们要先区分一下两个名词: WP_Query是WordPress自带的的一个用于处理复杂请求的类(这里的请求的内容不仅包括文章,还可能是页面,用户, ...

  3. wordpress教程之the_author_meta()显示用户的信息

    描述 模板标签函数the_author_meta可以显示用户数据.如果该函数在文章主循环(Loop)中,则不必指定作者的ID值,标签所显示的就是当前文章作者的内容.如果在主循环(Loop)外,则需要指 ...

  4. [转]搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速

    搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速 有的同学反映自己的搬瓦工速度慢,丢包率高.这其实和你的网络服务提供商有关.据我所知一部分上海电信的同学就有这种问题.那么碰到了坑爹的网络服务 ...

  5. jQuery EasyUI教程之datagrid应用(三)

    今天继续之前的整理,上篇整理了datagrid的数据显示及其分页功能 获取数据库数据显示在datagrid中:jQuery EasyUI教程之datagrid应用(一) datagrid实现分页功能: ...

  6. jQuery EasyUI教程之datagrid应用(二)

    上次写到了让数据库数据在网页datagrid显示,我们只是单纯的实现了显示,仔细看的话显示的信息并没有达到我们理想的效果,这里我们丰富一下: 上次显示的结果是这样的 点击查看上篇:jQuery Eas ...

  7. jQuery EasyUI教程之datagrid应用(一)

    最近一段时间都在做人事系统的项目,主要用到了EasyUI,数据库操作,然后抽点时间整理一下EasyUI的内容. 这里我们就以一个简洁的电话簿软件为基础,具体地说一下datagrid应用吧 datagr ...

  8. kali linux 系列教程之metasploit 连接postgresql可能遇见的问题

    kali linux 系列教程之metasploit 连接postgresql可能遇见的问题 文/玄魂   目录 kali linux 下metasploit 连接postgresql可能遇见的问题. ...

  9. kali Linux系列教程之BeFF安装与集成Metasploit

    kali Linux系列教程之BeFF安装与集成Metasploit 文/玄魂 kali Linux系列教程之BeFF安装与集成Metasploit 1.1 apt-get安装方式 1.2 启动 1. ...

随机推荐

  1. LDD命令--可执行文件依赖的库出现错误时

    http://littlepig3056.blog.163.com/blog/static/180758353201212751814134/ ldd  查看可执行文件依赖的库,结果会列出依赖的库名及 ...

  2. CloudStack添加新的API注意事项

    1.***Cmd上面的@APICommand里的responseObject关联对于的Response: 2.在tomcatconf/command.properties.in添加新API的权限: 3 ...

  3. 【CCNA学习笔记】1.思科路由器的基本配置

    教学视频来源:http://edu.51cto.com/lesson/id-10930.html. 怎么安装模块.连交叉线什么的视频里面老师说的很清楚了,我只记录一下IOS配置的命令(虽然一副不明觉厉 ...

  4. Effective Java2读书笔记-对于所有对象都通用的方法(一)

    第8条:覆盖equals时请遵守通用约定 ①约定的内容 自反性.对于任何非null的引用值x.x.equals(x)必须返回true. 对称性.对于任何非null的引用值x和y.当且仅当y.equal ...

  5. DB_NAME、DB_UNIQUE_NAME、SERVICE_NAME和INSTANCE_NAME等的区别

    摘自:http://space.itpub.net/7922095/viewspace-715406 搭建DG时,突然想起oracle这些为数众多的name,以下是概念整理,仅代表个人观点 DB_NA ...

  6. cf D. Alternating Current

    http://codeforces.com/contest/344/problem/D #include <cstdio> #include <cstring> #includ ...

  7. 如何成为一个牛逼的C/C++程序员?

    这个题目的噱头太大,要真的写起来, 足够写一本书了. 本人是过来人, 结合自身的体会和大家交流一下,希望新人能少走弯路. 每个人的情况不一样,我下面的描述可能并不适合每一个看到这篇文章的人. 一.C/ ...

  8. Qt之四方分割器QuadSplitter

    在Qt经常会用到分割器QSplitter,可以对多个控件进行水平或者垂直分割,但有一些特殊的需求无法满足,比如:四方分割...QuadSplitter是qt-apps里面的一个应用,挺不错的,拿来和大 ...

  9. 极简AWR报告收集指导

    1.以oracle用户登录oracle数据库,执行如下命令登录数据库: sqlplus / as sysdba 2.运行如下命令: @?/rdbms/admin/awrrpt.sql 3.出现如下信息 ...

  10. 数据结构之顺序表,c#实现

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...