PHP回显函数无法在使用jQuery .load动态加载的php页面中运行

时间:2015-01-26 07:57:45

标签: javascript php jquery ajax wordpress

这是我的wordpress安装的index.php和desktop.php。如果浏览器窗口宽度大于800px,我将desktop.php加载到#tLoad。到现在为止还挺好。但是我想用php echo加载它。而在desktop.php我想使用等,但它也没有用。我得到一个错误,上面写着"致命错误:调用未定义的函数。"等等。我知道我可能不得不使用某种类型的AJAX调用,但我无法解决这个问题。

如何让php函数在脚本和desktop.php中运行?

<?php 
     /* Template Name: Start */
?>        
<?php get_header(); ?>

<script type="text/javascript">
    $(document).ready(function() {
        function o() {
            if (ww > 800) {
                if ($.browser.device == false) {
                    e.load(n);
                } else {
                    e.load(r);
                }
            } else if (ww < 800) {
                e.load(r);
            }
        }
        isHome = true;
        var e = $("#tLoad"),

        // This is the first php echo that's not working (I have to put in the direct url to make it work):          
        n = "<?php echo get_template_directory_uri(); ?>/desktop.php",
        r = "<?php echo get_template_directory_uri(); ?>/mobile_v.php";

        $(window).resize(function() {
            ww = win.width();
            o()
        });

        o()
    });
</script>

<div id="tLoad"></div>

<?php get_footer(); ?>

desktop.php:

<?php the_content(); ?>

1 个答案:

答案 0 :(得分:0)

  

我收到一条错误,上面写着&#34;致命错误:调用未定义的函数..&#34;

get_template_directory_uri()位于wp-includes/theme.php。在调用函数之前,您必须确保包含theme.php。使用

include_once "wp-includes/theme.php";
在拨打get_template_directory_uri()

之前