1

私はワードプレスの初心者で、この cms アプリケーションに本当に感謝しています。私は独自のプラグインの作成に取り組んできましたが、この特定の問題に行き詰まりました。作成した関数の 1 つを指すテキスト リンクを作成しました。しかし、このリンク「カテゴリを追加」をクリックするたびに、「このページにアクセスするための十分な権限がありません」というメッセージが返されます。印刷される単純なテキスト「こんにちは」テキストの代わりに。これの何が問題なのですか?私は誰かが私を助ける必要があります。これが私のコードです

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>";
 ?>
4

1 に答える 1

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>";
}

関連: WordPress カスタム プラグインで追加ページを有効にする方法は?

于 2013-09-24T04:41:09.567 に答える