我有一个短代码[API-Module version="1"] 还有另一个短代码[API-Module version="2"]
如果我在一个页面中一次处理任何一个页面,它都可以完美地工作。然而,在处理两个短代码时,我的需求都必须在前端(UI)中可见。有没有可能这样做?
要添加短代码的构造函数:
function __construct() {
add_shortcode(\'API-Module\', array(&$this, \'handle_shortcode\'));
}
此部分用于处理短代码:
function handle_shortcode($atts) {
$version_type = $atts[\'version\'];
ob_start();
require_once "/front_end/view/api-list.php";
$output_string=ob_get_contents();
ob_end_clean();
return $output_string;
}
最合适的回答,由SO网友:Johannes Pille 整理而成
从PHP Manual 在…上require_once
:
这个require_once 语句与相同require 除此之外,PHP将检查文件是否已经包含,如果已经包含,则不再包含(要求)它。
第二次运行快捷码处理程序时,将不会执行视图/模板<因此没有输出。
更改
require_once "/front_end/view/api-list.php";
至
require "/front_end/view/api-list.php";
<你应该没事的。