WordPress 短代码(shortcode) 简略介绍

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

一.shortcode 简介

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

二.shortcode 形式

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

[myshortcode]Some Content[/myshortcode] // 封闭标签
[myshortcode]  // 自闭标签
[myshortcode title="example"] // 带有一个参数的自闭标签
[myshortcode]<p><a href="#"><span>内容</span></a></p>[/myshortcode] // 标签内可以填写文本或 HTML
[myshortcode]Content [myshortcodesecond] more content[/myshortcodesecond] // 也可以嵌套使用标签

三.shortcode 例子

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

function myshortcode_function($atts, $content = null){ // $atts 代表了 shortcode 的各个参数,$content 为标签内的内容

	extract(shortcode_atts(array( // 使用 extract 函数解析标签内的参数
	"title" => '标题' // 给参数赋默认值,下面直接调用 $ 加上参数名输出参数值
	), $atts));
	// 返回内容
	return '<div class="myshortcode">
				<h3>'. $title .'</h3>
				<p>
					'. $content .'
				</p>
			</div>';
}

add_shortcode("msc", "myshortcode_function"); // 注册该 shortcode,以后使用 [msc] 标签调用该 shortcode

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

[msc title="欢迎"]这是独立博客 Kayo's Melody ,欢迎来到本博客[/msc]

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

以上就是 shortcode 的简略说明,日后 Kayo 也会另写文章对 shortcode 作更深入的介绍。

本文由 Kayo Lee 发表,本文链接:http://kayosite.com/wordpress-shortcode-intro.html

评论列表

  • 评论者头像
    回复

    貌似我这个自动有的

    • 评论者头像
      回复

      @向日葵媒体设计 嗯,有些主题也自带有短代码的功能了,这里主要是为需要添加短代码功能的童鞋介绍一下。

  • 评论者头像
    回复

    好多写点吧,现在还不是太懂这个

  • 评论者头像
    回复

    学习下了

  • 评论者头像
    回复

    果然是深入研究了啊 祝主题大卖啊

  • 评论者头像
    回复

    挺好用的~

  • 评论者头像
    回复

    短代码确实很实用!想问下您,相关文章您用的是哪款插件?谢谢!

  • 评论者头像
    回复

    请教一个关于段代码的问题,我使用了一款插件,段代码形式[recent_commnet],我想把这个短代码不解译的插入文章或者页面中该怎么实现呢?我使用了和都不能实现,插入后都会解译?

  • 评论者头像
    回复

    你好,想请教你一个问题,就是我想实现在WP编辑上面添加一个TAB图标,实现的功能就是点击这个图标就会插入一段代码(shortcode),在这几段代码里面编辑内容在前台就可以显示为横向的几个TAB,想请问要怎么样操作才会实现这个功能呢?

  • 评论者头像
    回复

    博主:能不能帮我把这个写成短代码:

    biz-itemid这里的数字是要替换的,其他都可以不变。

    先多谢了。
    邮箱联系哦

  • 评论者头像
    回复

    学习了。。。
    为何我做的短码,放在文章中间,单总是在文章最开始运行呢?

    • 评论者头像
      回复

      Pin my tail and call me a doenky, that really helped.

回复

你正在以游客身份访问网站,请输入你的昵称和 E-mail
:wink: :roll: :oops: :mrgreen: :idea: :cry: :?: :-| :-o :-P :-? :) :( 8-O