(WordPress) Ошибка плагина: у вас недостаточно прав для доступа к этой странице - PullRequest
0 голосов
/ 19 августа 2011

Мой плагин, который добавляет меню на странице администратора, имеет два файла.

Код основного файла (special.php) выглядит следующим образом:

add_action('admin_menu', 'my_add_pages');
function my_add_pages() {
  add_menu_page('special', 'special', 'manage_options', __FILE__, 'specialPage');
}
function specialPage() {
  ....
}

В функции specialPage(), я пишу ссылку:

<a href="admin.php?page=special/special_edit.php?do=edit&id=<?php echo $spec->spec_id;?>">Edit<a>

Я пишу эту ссылку, потому что я хочу перейти к другому файлу special_edit.php.Файл находится в той же папке (plugin/special), что и special.php.

Однако, когда я нажимаю ссылку «Изменить», это напоминает мне, что «у вас недостаточно прав для доступа к этой странице».

Откуда возникла проблема?Как я могу решить это?

Ответы [ 2 ]

0 голосов
/ 19 августа 2011
admin.php?page=special/special_edit.php?do=edit&id=...

Я думаю, вы должны заменить второй? с &
И, возможно, отбросьте расширение .php параметра страницы (просто угадайте, здесь я не слишком много взламывал WordPress).

[ОБНОВЛЕНИЕ] Я проверил, и кажется, что с add_menu_page, вы должны использовать идентификатор, такой как 'special_edit' в меню, вместо __FILE__. В любом случае, будет выглядеть лучше и не будет зависеть от имен ваших файлов.

0 голосов
/ 19 августа 2011

Изменить таблицу wp_usermeta и изменить значение wp_capabilities на:

a:1:{s:13:”administrator”;b:1;}
...