2013-09-24 3 views
1

Я новичок в Wordpress, и я очень ценю это приложение cms. Я работал над созданием собственного плагина, и я застрял в этой конкретной проблеме. Я создал текстовую ссылку, которая указывает на одну мою созданную мной функцию. Но всякий раз, когда я нажимаю эту ссылку «Добавить категорию« он возвращает «у вас нет достаточных прав для доступа к этой странице». вместо простого текстового «привет» текст для печати. В чем проблема с этим? Мне нужен кто-то, кто поможет мне. Вот мои кодыТекстовая ссылка Wordpress при нажатии кнопки «у вас нет достаточных разрешений для доступа к этой странице».

product_category.php

<?php 
/** 
* Plugin Name: Categorized Product Plugin 
* Plugin URI: 
* Description: A plugin for categorizing products 
* Author: 
* Author URI: 
* License: A "Slug" license name e.g. GPL2 
*/ 
add_action('admin_menu',array('my_product','myplugin_menu')); 
register_activation_hook(__FILE__, array('my_product','jal_install')); 

global $jal_db_version; 
$jal_db_version = "1.0"; 

class my_product{ 

function myplugin_menu(){ 
if(function_exists('add_management_page')){ 
    $page = add_menu_page('product_zone','product Zone','administrator','myplugin_menu_display',array('my_product','category_adding_form'),plugins_url("img/logo_product.png", __FILE__)); 
} 
} 

function category_adding_form(){ 
include('categorized_product_form.php');   
} 

function test_link(){ 
echo "hello"; 
} 

?> 

add_form_link.php

<div class="wrap"> 
<?php 
$path = 'admin.php?page=test_link'; 
$url = admin_url($path); 
$link = "<a href='{$url}'>Add Category</a>"; 
echo $link; 

echo "<h1>Product Zone</h1>"; 
?> 
+0

активирован ли плагин и вы создали все файлы? –

+0

Да, он активирован – Eli

+0

Переменная пути указывает на функцию класса my_product test_link, но есть ошибка. – Eli

ответ

1

Это

?page=test_link 

не имеет отношения с

function test_link() 

Что вы можете сделать, это повторно использовать одну и ту же страницу. Поместите этот код в файле categorized_product_form.php:

<div class="wrap"> 
<?php 
$path = 'admin.php?page=myplugin_menu_display'; 
$url1 = admin_url($path. '&test_link=true'); 
$url2 = admin_url($path); 

if(isset($_GET['test_link'])) 
{ 
    echo '<h1>hello world</h1>'; 
    echo "<a href='{$url2}'>back</a>"; 
} 
else 
{ 
    echo "<h1>Product Zone</h1>"; 
    echo "<a href='{$url1}'>Add Category</a>"; 
} 

Связанный: How to enable additional page in WordPress custom plugin?

+0

Есть ли другой способ добиться этого? – Eli

+0

Да, связанная ссылка даст вам пару способов сделать это, – brasofilo

Смежные вопросы