Home >Backend Development >PHP Tutorial >Implementation of short codes in WordPress development and related function usage tips, wordpress usage tips_PHP tutorial
In fact, implementing short codes is very simple, we only need to use a function in WordPress After getting the short code and adding a small function of your own, the short code can be implemented easily and happily.
Short code implementation principle
Just like adding hooks and filter functions to some actions of WP,
The shortcode is just an encapsulated filter for the article output content,
It is not as shocking or as profound as some theme functions say.
Here’s a simple example:
function myName() {//短代码要处理的函数 return "My name's XiangZi !"; } //挂载短代码 //xz为短代码名称 //即你在编辑文章时输入[xz]就会执行 myName 函数 add_shortcode('xz', 'myName');
Then if we enter [xz] in the article, we will get
My name's XiangZi !
Short code to pass parameters
More advanced uses, I will talk about in later articles,
Today I will just talk about the parameter passing mechanism of short code
A more advanced example
function myName($array,$content) { var_dump($array); var_dump($content); } add_shortcode('xz', 'myName');
When editing an article we enter:
[xz a="1" b="2" c="3"]这里是三个参数哦[/xz]
In the function we will get:
//$array 是一个数组, //大体结构如下 $array = array('a'=>'1','b'=>'2','c'=>'3'); //$content 是一个字符串 $content = '这里是三个参数哦';
shortcode_atts
I wouldn’t have used this function if I wasn’t working on a shortcode plug-in,
The shortcode_atts function is mainly used to set the initial value of the intercepted variables in the shortcode.
This is a very practical function. In fact, this function really works on arrays,
Because the parameters we intercept from the short code are all in array form.
Detailed explanation of shortcode_atts function
Don’t be confused by the function name. In WordPress, it is mainly used to set the default values of shortcode parameters,
If we extract the code and use it elsewhere, this function can help us set the default value of a given array.
shortcode_atts function usage
This function is very simple to use.
shortcode_atts(array( "url" => 'http://PangBu.Com' ), $url)
The above code means,
Set the default value of the $url array member whose key value is url to 'http://PangBu.Com',
It doesn't seem to be of much use in other places, but for some super lazy people who sometimes always forget or are too lazy to set the value of the array, this function is very useful.
shortcode_atts function declaration
/** * Combine user attributes with known attributes and fill in defaults when needed. * * The pairs should be considered to be all of the attributes which are * supported by the caller and given as a list. The returned attributes will * only contain the attributes in the $pairs list. * * If the $atts list has unsupported attributes, then they will be ignored and * removed from the final returned list. * * @since 2.5 * * @param array $pairs Entire list of supported attributes and their defaults. * @param array $atts User defined attributes in shortcode tag. * @return array Combined and filtered attribute list. */ function shortcode_atts($pairs, $atts) { $atts = (array)$atts; $out = array(); foreach($pairs as $name => $default) { if ( array_key_exists($name, $atts) ) $out[$name] = $atts[$name]; else $out[$name] = $default; } return $out; }