簡體   English   中英

WordPress:如果要從javascript文件中調用它,我的PHP腳本應該放在哪里?

[英]Wordpress: Where to place my php script if I want to call it from a javascript file?

這是文件位置,不是腳本或功能問題。 我制作了一個Wordpress主題,並希望通過jQuery調用彈出式聯系表單,如果該表單經過驗證,我的js文件將調用一個php文件來發送電子郵件。

這是文件/文件夾結構:

wp_theme_root
|
js/popup_form.js
|
mailer.php

我只想知道應該在哪里放置mailer.php表單,因為我嘗試將其與js文件放在同一目錄中,或者放在主題根目錄中或在wordpress目錄中,但都沒有成功。

感謝您的幫助。

如果它是正在構建的主題的一部分,則需要將其放置在主題文件夾或主題內的包含文件夾中。 您可以使用get_bloginfo()方法訪問它: http ://codex.wordpress.org/Function_Reference/get_bloginfo#Template_Directory

但是請記住,直接調用文件時不能調用wordpress函數。 如果您的郵件功能只是發送郵件而不依賴WP,那么您應該可以。 否則,您需要將其掛接到WP中。

我一直使用的一種方法是在functions.php中包含這段代碼

add_action('wp', 'check_ajax'); //run this method for every call
function check_ajax() {
    if (isset($_GET["is_ajax_request"])) { 
        get_template_part('includes/axax_calls'); die();
    }
} 

然后,在包含的主題文件夾中有一個名為ajax_calls的文件。 此方法也將處理堆棧中帶有WP的所有ajax調用。 確保所有ajax請求中都包含“ is_ajax_request”。

嘗試將其放在WordPress目錄的根文件夾中,然后像這樣調用它: /js/popup_form.js 注意前面的/ ,如果您不知道它的意思是從root開始。

希望這對您有用。

最干凈的方法是編寫處理作為插件發送郵件的代碼。 它將具有自己的自包含MVC組件(大多數都為空)。

我只能為此找到的現有示例是JSON-API 它更大但更簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM