位置: 编程技术 - 正文

WordPress中的shortcode短代码功能使用详解(wordpress shortcode)

编辑:rootadmin

推荐整理分享WordPress中的shortcode短代码功能使用详解(wordpress shortcode),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:wordpress shortcode,wordpress中的常用命令,wordpress typecho,wordpress中的常用命令,wordpress typecho,wordpress中的Astra主题好用吗,wordpress中的常用命令,wordpress中的常用命令,内容如对您有帮助,希望把文章链接给更多的朋友!

WordPress 从 2.5 的版本开始,增加了一个 shortcode (短代码) API ,类似于 BBS 上的 BBCode , shortcode 也可以很方便的为文章或页面增加功能,并且 shortcode 的比起 BBCode 更加灵活和强大。下面 Kayo 为大家介绍一下 shortcode 。

一.shortcode 简介shortcode 可以让开发者通过以函数的形式创建宏内容来生成内容,或许这个概念看上去有点模糊,但实际上它是一个很简单而实用的功能,只要会编写基本的 PHP 函数,即可使用 shortcode ,下文会以实际的例子来说明 shortcode 的使用方法。

二.shortcode 形式shortcode 支持封闭标签和自闭(自动封闭)标签,并且支持在标签内使用参数,至于 shortcode 具体是何种形式,这就决定于开发者怎样编写这个 shortcode 了。

三.shortcode 例子在使用 shortcode 前,首先必须在主题的 functions.php 文件中定义 shortcode ,例如:

把上面的代码添加到 functions.php 中,一个简单的 shortcode 便创建好了,我们可以通过 [msc][/msc]标签调用该 shortcode ,如:

在文章或页面内容中输入上面的调用,可以在相应的位置输出一段欢迎语句,在 style.css 中定义相应的 CSS ,即可为短代码赋予样式。

Kayo 简略的介绍了 WordPress 的短代码(shortcode) 功能,主要是介绍了 shortcode 的主要概念和使用方法。在本文中, Kayo 将会更加详细的介绍一下 shortcode 中较为重要的 API ,希望有助于各位开发较为复杂的 shortcode 。

四.函数 add_shortcode

该函数用于注册一个 shortcode ,它有两个参数:短代码名与 shortcode 处理函数名,引用上文的例子:

msc 即为短代码名,以后在写文章或页面时可以直接使用 [msc][/msc] 标签调用该短代码,而 "myshortcode_function" 即为例子中的短代码处理函数的名称。下面重点分析短代码处理函数。

五.短代码处理函数

WordPress中的shortcode短代码功能使用详解(wordpress shortcode)

shortcode 处理函数是一个 shortcode 的核心, shortcode 处理函数类似于 Flickr(WordPress 过滤器),它们都接受特定参数,并返回一定的结果。 shortcode 处理器接受两个参数, $attr 和 $content , $attr 代表 shortcode 的各个属性参数,从本质上来说是一个关联数组,而 $content 代表 shortcode 标签中的内容。

如上面的例子,若在文章内作出调用,输出一段欢迎语句:

[msc title="欢迎"]这是独立博客 Kayo's Melody ,欢迎来到本博客[/msc]当文章显示时, WordPress 会注册所有的 shortcode ,如上面的 [msc] ,若 shortcode 中有属性参数和内容, WordPress 会把它们分离出来并解析,然后传递给该 shortcode 的短代码处理函数,处理后以处理函数输出的结果代替短代码原本的内容显示在文章内。

这时属性参数会并解析会关联数组并传递给 $attr ,如上面的例子中 $attr 的值为如下的一个关联数组:

在输出结果时,可以直接使用 $参数名 的形式进行输出,如例子中的情况即以 $title 输出该属性值。

六.shortcode_atts

shortcode_atts 是一个很实用的函数,它可以为你需要的属性参数设置默认值,并且删除一些不需要的参数。

shortcode_atts() 包含两个参数 $defaults_array 与 $atts , $attr 即为属性参数集合, $defaults_array 是代表需要设置的属性默认值,举个例子:

这时 $result 的结果为

'title' 由于在 $defaults_array 有不同的值,因此以这个新的值为准更新了 'title' ,同时也增加了 'description' 这个值。值得注意的是, shortcode_atts() 会过滤 $defaults_array 中没有的属性,假如 $attr 中还有一个 'ohter' 的属性,那么 $result 的结果仍然是上面的结果,因为 $defaults_array 中并没有 'other' 这个属性。当然,这里说的值只是属性的默认值,真正输出的值还是 shortcode 调用时填写的值。

七.进一步解析属性与设置属性默认值

extract() 函数用于进一步解析属性并设置属性默认值,其中一个功能是把各属性参数值赋予给一个形如 "$参数名" 的变量保存起来(如例子中的 $title ),方便调用,使用该函数配合 shortcode_atts() 就可以很安全的输出结果。这点的具体使用可以参见本文第一点“一.函数 add_shortcode”的例子。

另外,属性名中的大写字母在传递给处理函数前会先转化为小写字母,因此建议在编写属性名时直接使用小写字母。

CI框架实现cookie登陆的方法详解 本文实例讲述了CI框架实现cookie登陆的方法。分享给大家供大家参考,具体如下:第一步:login.php//登陆方法publicfunctionlogin(){//如果用户名和密码为空,

CI框架文件上传类及图像处理类用法分析 本文实例讲述了CI框架文件上传类及图像处理类用法。分享给大家供大家参考,具体如下://列表页banner图片publicfunctionedit_list_page_banner($category_id=""){$cate

CI框架AR操作(数组形式)实现插入多条sql数据的方法 本文实例讲述了CI框架AR操作实现插入多条sql数据的方法。分享给大家供大家参考,具体如下:如果你不使用AR的话,你可以这样做:INSERTINTOTABLE(FIELDS)VAL

标签: wordpress shortcode

本文链接地址:https://www.jiuchutong.com/biancheng/294708.html 转载请保留说明!

上一篇:CodeIgniter生成静态页的方法(code editing)

下一篇:CI框架实现cookie登陆的方法详解(consul框架)

  • 免抵退税办法不得抵扣的进项税额
  • 平均税额怎么算
  • 收到扶贫款怎么做会计分录
  • 库存商品盘点的作用表现为
  • 什么叫残保金减免
  • 销售收入是不是营业收入
  • 商品和服务税收分类编码
  • 核定征收的小规模企业所得税B表收入总额含税吗
  • 小微企业附加税减半征收
  • 联营企业和合营企业长期股权投资的方式
  • 别人帮开票钱要打给别人账户吗
  • 长期股权投资出售比例计算
  • 低值易耗品是成本吗
  • 入账发票是什么意思
  • 华为最新款手机2023款
  • 在win10中怎么从edge旧ie浏览器
  • 差额征税的计算方式
  • win10系统如何在游戏中禁用输入法
  • 授课培训公司免责协议
  • 公司购买理财产品账务处理
  • 货币资金资产处置损益表如何填
  • php循环结构有哪几种语句
  • 锁定任务栏不管用
  • adb命令linux命令的区别
  • 未开票的销售收入分录
  • php bcmath off
  • 同一控制下的控股合并与非同一控制下的控股合并
  • 企业自行搬迁需要交税吗
  • window10怎么取消快捷方式
  • 进出口怎么交税
  • 机器学习-10 聚类算法
  • 巴黎拉丁区有个著名的人文景点叫做先贤祠
  • 收到企业所得税退税会计分录怎么做
  • thinkphp框架入门
  • php分层架构
  • 【机器学习】KNN算法及K值的选取
  • fasternet高效上采样模块
  • spring获取bean的完全限定类名
  • Pytorch深度学习实战3-5:详解计算图与自动微分机(附实例)
  • php使用curl
  • 帝国cms上传视频半天没反应
  • 业务招待费包括哪些内容和费用
  • SQL(MSSQLSERVER)服务启动错误代码3414的解决方法
  • 职工食堂的费用怎么入账
  • 积分兑换业务有风险吗
  • 增值税专用发票是干什么用的
  • 外贸出口增值税附表二填哪项
  • 税务发票金额可以增加吗?
  • 会计上需要结转的科目
  • 短期流动负债计算公式
  • 可供出售权益工具公允价值的增加计入当期损益吗
  • 预存电费和后付费哪个好
  • 购买展示样品是指什么
  • 年报上的从业人数是什么意思
  • 房租费计提如何入账
  • 隔空传送怎样使用苹果
  • 笔记本带u
  • 大白菜一键装机教程
  • centos重新安装命令
  • redhat下载教程
  • 详解linux中systemd命令的运行级别与其常见应用
  • win8.1技巧
  • OpenGL Tips: 在Visual C++中调用FreeGLUT
  • 易信安卓手机版
  • 基于专业性的家校双向互动,需要家长的学校教育参与
  • js 阻止触发某个事件
  • 淘宝国际平台叫什么
  • jqgrid动态增加列
  • nodejs基础教程
  • linux随机数生成1到100
  • JQuery中Ajax()的data参数类型实例分析
  • 如何用python画花瓣
  • 浏览器环境下的事件循环
  • jquery中的基本选择器有哪些
  • 重庆电子税务局网页版登录
  • 电子税务局登录方式
  • 外地户口在绍兴读小学
  • 办公室租金可以开专票抵扣进项税吗
  • 票种核定流程审批时间
  • 江西自考招考办
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设