【问题标题】:how can I call a specific function in wordpress from a plugin admin page in wordpress?如何从 wordpress 的插件管理页面调用 wordpress 中的特定功能?
【发布时间】:2014-05-30 18:41:24
【问题描述】:

我创建了我的 wordpress 管理页面,但我需要提交一个表单并保存结果,我检查了互联网上的信息,许多人在同一个 php 页面上做,但我想使用不同的,为此,我首先想在 myplugin.php 中创建一个函数并将我的表单提交到该编辑,可以这样做吗??

http://myurl/wp-admin/admin.php?page=Info

所以,现在我来自这个页面,我的主要插件文件是 plugin.php,我想在里面创建一个名为 something 的函数并从我的提交表单中调用它,我该怎么做?或者,有没有其他方式可以这样提交表单??

谢谢

【问题讨论】:

    标签: wordpress forms plugins


    【解决方案1】:

    此挂钩允许您为自己的自定义 GET 和 POST 请求创建自定义处理程序。 admin_post_ 挂钩遵循“admin_post_$youraction”格式,其中 $youraction 是您的 GET 或 POST 请求的 'action' 参数。

    如果您需要为“add_foobar”操作请求创建请求或表单处理程序,您可以创建如下钩子:

    add_action( 'admin_post_add_foobar', 'prefix_admin_add_foobar' );
    
    function prefix_admin_add_foobar() {
        // Handle request then generate response using echo or leaving PHP and using HTML
    }
    

    使用上面的例子,任何时候一个 GET 或 POST 请求被发送到 WordPress,并且请求的 'action' 参数被设置为 'add_foobar',这个钩子将被自动执行。例如,以下 HTML 内容将在用户单击任一提交时执行上述挂钩。

    <a href="http://www.example.com/wp-admin/admin-post.php?action=add_foobar&data=foobarid">Submit</a>
    <form action="http://www.example.com/wp-admin/admin-post.php" method="post">
      <input type="hidden" name="action" value="add_foobar">
      <input type="hidden" name="data" value="foobarid">
      <input type="submit" value="Submit">
    </form>
    

    注意:数据值 (foobarid) 将在您的钩子函数中从 $_GET, $_POST$_REQUEST 数组中可用。

    嗯,

    显然,我需要使用一个动作,参考在这里

    http://codex.wordpress.org/Plugin_API/Action_Reference/admin_post_(action)

    【讨论】:

    • 如何实际生成响应?如果您只是回显内容,它将显示没有实际仪表板的内容。
    猜你喜欢
    • 2020-02-11
    • 2019-03-07
    • 2012-03-05
    • 2015-02-07
    • 2017-09-19
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-23
    相关资源
    最近更新 更多