Wordpress Ajax返回404错误

时间:2018-08-10 14:57:37

标签: javascript php ajax wordpress

我想开发一个Wordpress插件。因此,我想在我的php代码中单击按钮时调用Ajax函数。

这是我的php代码:

function unilang_translation_page() {

            echo '<div class="wrap"><h1>Translations of strings</h1> </div>'; 

            $unilang_table_strings = new Unilang_Table_Strings;
            $unilang_table_strings->prepare_items(); 
            $unilang_table_strings->display();

            $_SESSION['store_table_strings'] = serialize( $unilang_table_strings );

            echo "<a type='button' class=\"button button-primary\" onClick=\"Utility.saveStringTranslations();\">Submit Changes</a>";
} 

这是我的javascript文件:

var Utility = {

    saveStringTranslations: function() {
        $.ajax({
            type: "POST",
            url: "/unilang/php/unilang-save-string-translations.php",
            success: function(data) {
                alert(data);
            },
            error: function(error) {
                alert(error);
            }
        })
    }
}

当我单击按钮时,浏览器控制台将返回以下内容: enter image description here

我试图更改路径,但是没有用。 如何在URL中设置插件路径?

1 个答案:

答案 0 :(得分:1)

尝试在如下所示的插件PHP文件中声明一个JavaScript变量

<script> var plugin_url = '<?php echo plugins_url( '/unilang/php/unilang-save-string-translations.php', __FILE__ ) ?>'; </script>

并在AJAX URL路径-plugin_url中调用url: plugin_url + "/unilang/php/unilang-save-string-translations.php"变量。

希望这会有所帮助,您可以在此处详细了解-https://codex.wordpress.org/Function_Reference/plugins_url