Php 加载Wordpress帖子时不带get_header()和get_footer()

Php 加载Wordpress帖子时不带get_header()和get_footer(),php,jquery,ajax,wordpress,magnific-popup,Php,Jquery,Ajax,Wordpress,Magnific Popup,我正在开发一个wordpress站点,其中的帖子通过ajax(with)加载到弹出窗口中。帖子使用的模板是single.php 这很好,除了页眉和页脚也加载到弹出窗口(html标记、导航、脚本等)中。当然,我可以从模板中删除get_header()和get_footer(),但是通过永久链接无法正确加载单个帖子页面 我尝试了条件标记,但当模板加载了Ajax时,它看不到加载到主页上的内容 我认为使用不同的模板是一种选择,尽管我见过使用相同模板的网站(比如最前面的动物园主题)。但我不知道它在那里是怎

我正在开发一个wordpress站点,其中的帖子通过ajax(with)加载到弹出窗口中。帖子使用的模板是
single.php

这很好,除了页眉和页脚也加载到弹出窗口(html标记、导航、脚本等)中。当然,我可以从模板中删除
get_header()
get_footer()
,但是通过永久链接无法正确加载单个帖子页面

我尝试了条件标记,但当模板加载了Ajax时,它看不到加载到主页上的内容

我认为使用不同的模板是一种选择,尽管我见过使用相同模板的网站(比如最前面的动物园主题)。但我不知道它在那里是怎么工作的


所以我被困在这里了。有人吗?

干净的解决方案是使用WordPress AJAX函数

现在,主题通常被分成多个部分,以便在不同的地方重用块。例如,主题Twenty16th在
single.php
中用于包含显示文件实际内容的模板文件。你可以很容易地使用它来获取文章的内容,而不需要页眉、页脚等

首先,设置PHP部分,您可以将其添加到主题的functions.PHP中,或者直接添加到插件中,具体取决于您正在开发的内容


我终于发现插件中包含了这个选项:“要在加载内容后修改内容,或者选择并显示加载文件中的特定元素,有一个
parseAjax
回调”


但我会接受上面的答案,因为我认为这是一种优雅的方式,而不是加载整个页面,只显示所需的部分。

弹出窗口的描述不够,是iframe还是新的dom元素?我认为,如果你只是为了获取内容而加载整个页面的速度非常慢,你能不能不运行自己的自定义ajax来获取帖子内容?不知道如何描述弹出窗口;它是一个应用程序,内容是用ajax加载的。整个页面确实正在加载,这正是问题所在:如何只加载循环?谢谢,现在我了解了如何只提取内容而不是整个页面,而不使用其他模板或条件标记。虽然我并不真正理解这里的代码,但我将尝试实现它
var data = {
    'action': 'my_action',
    'postid': 1234
};

// since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
// on the frontend you have to set it yourself
var ajaxurl = '<?=admin_url( 'admin-ajax.php' )?>';
jQuery.post(ajaxurl, data, function(response) {
    // alert('Got this from the server: ' + response);
    // response will now contain your post, without header, footer, sidebars etc.
});