0

我正在尝试创建我的第一个包含简码的 Wordpress 插件,但我似乎无法让它工作。当我输入我的简码 [first] 时,它只会显示“[first]”,即使它是在帖子/页面中用 HTML 编写的。我错过了什么?

 <?php
 /*
 * Plugin Name: WordPress ShortCode
* Description: Create your WordPress shortcode.
* Version:
* Author:
 * Author URI:
*/

 function wp_first_shortcode(){
  echo "Hello World";
 }

add_shortcode(‘first’, ‘wp_first_shortcode’);
 ?>

没有错误,只是短代码没有正确显示。

4

1 回答 1

1

return不要echo。从add_shortcode() 文档

请注意,短代码调用的函数不应产生任何类型的输出。简码函数应返回用于替换简码的文本。直接产生输出会导致意想不到的结果。这类似于过滤器函数的行为方式,因为它们不应从调用中产生预期的副作用,因为您无法控制调用它们的时间和位置。

所以:

function wp_first_shortcode(){
  return "Hello World";
}

也不要在代码中使用大引号。曾经。更改add_shortcode(‘first’, ‘wp_first_shortcode’);add_shortcode('first', 'wp_first_shortcode');

另请参阅https://developer.wordpress.org/plugins/shortcodes/basic-shortcodes/

于 2019-05-20T21:04:46.047 回答