是否可以在一个页面中处理两个或多个短码?

时间:2013-09-21 作者:ram

我有一个短代码[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;  
     }

1 个回复
最合适的回答,由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";<你应该没事的。

结束

相关推荐

如何覆盖Shortcodes.php核心文件?

我想覆盖/更新核心短代码。php文件。构建一个数组并向其他函数发送不同的数据,但我的问题是如何在不编辑核心文件的情况下做到这一点?是否有覆盖核心文件和/或函数的最佳做法?