【发布时间】:2014-12-15 04:01:47
【问题描述】:
我有一个 JavaScript 文件,它使用 AJAX 来获取一个 PHP 文件,其中包含 WordPress 函数和简单的 HTML。我的 JavaScript 文件与内部的 jQuery 功能一起正常工作以获取我的文件,但由于该文件具有 WordPress 功能在里面,它给出了 WordPress 错误,因为显然没有包含 WordPress 功能——这是在前端使用的。
AJAX 调用
$.ajax({
url: wnm_custom.template_url + "/admin/includes/header1.php",
success: function(html) {
$("body").append(html);
}
});
我是否必须通过 WordPress 加载 AJAX,如果是这样肯定会很简单,因为该功能正在工作,而 WordPress 功能却没有?
我的 header1.php 文件中的所有 WordPress 函数都是未定义的。
编辑
$.ajax({
url: wnm_custom.template_url.ajaxurl,
type: "POST",
cache: false,
data: {action: "get_top_main"},
success: function(response) {
alert(response);
}
});
function get_top_main() {
include(get_template_directory_uri() . '/admin/includes/header1.php');
}
add_action('wp_ajax_get_top_main', 'get_top_main_up');
add_action('wp_ajax_nopriv_get_top_main', 'get_top_main_up');
这是我现在提出的,但由于某种原因,响应是完整的页面语法......(可能是因为 URL 指向 .ajaxurl),它似乎没有调用该函数。
【问题讨论】:
-
你想达到什么目的? (我的意思是,要求)。您只是想回显 header1.php 中的任何内容,或者您想获取 wordpress 网站的标题部分?
-
我正在尝试从 header1.php 中获取所有内容,这基本上只是一个标题 - 基本上是在 header1.php 中回显所有内容,但它有 WordPress 功能,在拉动它们时会出现错误。跨度>
-
你必须写一个只返回标题部分的wordpress插件
-
我想你误解了,一切都很好,除了 WP 功能不起作用,因为没有指向 wp-load.php 的链接 - 而不是只包括文件(这是错误的显然),肯定有一个简单的方法——我肯定不用写插件吗?
-
您为什么不使用推荐的
admin-ajax.php? codex.wordpress.org/AJAX_in_Plugins