Разработка плагинов Wordpress: отправка параметров строки запроса - PullRequest
0 голосов
/ 12 октября 2010

Я разрабатываю свой первый плагин для Wordpress, и у меня есть одна строка, которая удаляет запись.Я должен использовать параметры строки запроса, чтобы передать действие и идентификатор объекта.Мой код:

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

Это создает ссылку «удалить» и заполняет два параметра.Проблема в том, что Wordpress дает мне сообщение «У вас недостаточно прав для доступа к этой странице».для передачи переменной в строке запроса.

Кто-нибудь знает, как правильно передать переменные в плагин?

Ответы [ 2 ]

1 голос
/ 12 октября 2010

Это создает ссылку «удалить» и заполняет два параметра. Проблема в том, что Wordpress дает мне сообщение «У вас недостаточно прав для доступа к этой странице». для передачи переменной в строке запроса.

Я не думаю, что это проблема. Я предпочел бы поспорить, что, создав URL таким образом, вы отбрасываете другие параметры запроса (которые не сохранены в 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 вместе в правильную строку запроса.

0 голосов
/ 21 июня 2011

Pekka, проблема здесь в том, что вы получаете огромные URL, если кто-то продолжает удалять.Я делаю что-то подобное с параметром "удалить":

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

как вы "очистите" запрос?

...