【问题标题】:Wordpress Plugin Development: send query string parametersWordpress 插件开发:发送查询字符串参数
【发布时间】:2010-10-11 22:38:42
【问题描述】:

我正在开发我的第一个 Wordpress 插件,我有一行删除了一个条目。我必须使用查询字符串参数来传递操作和对象 ID。我的代码是:

$pageText .= '<td><a href="'.$_SERVER['REQUEST_URI'].'?useraction=delete&domainid='.$file.'">Delete</a></td></tr>';

这将创建一个“删除”链接并填充两个参数。问题是,Wordpress 给了我“您没有足够的权限访问此页面”。用于在查询字符串中传入一个变量。

有谁知道如何在插件中正确传递变量?

【问题讨论】:

    标签: wordpress plugins query-string


    【解决方案1】:

    这将创建一个“删除”链接并填充两个参数。问题是,Wordpress 给了我“您没有足够的权限访问此页面”。用于在查询字符串中传入一个变量。

    我认为这不是问题所在。我宁愿打赌,通过这种方式构建 URL,您将删除需要再次添加的其他请求参数(not 保留在 REQUEST_URI 中)。要重新构建完整的查询字符串,最简洁的方法是使用http_build_query()

    $link = $_SERVER['REQUEST_URI']."?".
            http_build_query(
               Array('useraction' => 'delete', 'domainid' => $file) 
               + $_GET);
    
    $pageText .= '<td><a href="'$link">Delete</a></td></tr>';
    

    http_build_query(有点难读)将一个数组与您的 URL 参数和现有的 $_GET 数组合并为一个适当的查询字符串。

    【讨论】:

      【解决方案2】:

      佩卡, 这里的问题是,如果有人继续删除,您将获得巨大的 URL。我正在使用“删除”参数做类似的事情:

      http://mydomain.org/wp-admin/admin.php?page=my_plugin&remove=2160735755&page=my_plugin&remove=2160735973&page=my_plugin
      

      你如何“清理”查询?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-17
        • 1970-01-01
        相关资源
        最近更新 更多