从PHP文件调用外部do_shortcode

时间:2016-07-26 07:36:19

标签: javascript php html wordpress shortcode

我试图用我服务器上的PHP文件中的外部do_shortcode填充DIV。但我得到的只是一个致命的错误信息

基本上会有两个按钮在点击时会根据两个不同的PHP文件用不同的内容填充DIV。

这是我的page_template.php中的html和填充DIV的javascript

<ul>
    <li><a class="ajax-link" href="template1.php">ONE</a></li>
    <li><a class="ajax-link" href="template2.php">TWO</a></li>
</ul>

<div class="page" id="main_content"></div>

<script>
   $("a.ajax-link").on("click", function(e) {
     e.preventDefault();
     $("#main_content").load(this.href);
   });        
</script>

template1.php和template2.php只有do_shortcode php:

<?php echo do_shortcode('[ff id="1"]'); ?>

2 个答案:

答案 0 :(得分:0)

您无法使用ajax输出短代码。因为在执行ajax请求时,admin-ajax.php并不了解shortcodes.php文件。使用ajax请求时,您无法访问整个wp环境。

答案 1 :(得分:0)

您可以创建两个wordpress页面并在该页面中添加短代码 并在不调用页眉和页脚的情况下创建模板(但包括CSS和JSS)

Page 1 - [ff id="1"]
Page 2 - [ff id="2"]

在wordpress后端为这些页面分配模板