首先,停止在每一行打开和关闭 PHP 标记,你不需要那个. 当您的 PHP 中间发生一些 HTML 时使用此选项。
此外,可以/应该省略?>
PHP 文件的最后关闭。如果站点后面有空格,它甚至可能会破坏站点...
请参阅WordPress_Coding_Standards。
其次,您需要决定是否要将函数用作或的my_print
回调。可以两者兼得吗?在这种情况下,是的,但实际上,只有在您知道自己在做什么的情况下才这样做。admin_notices
add_menu_page
您的插件正在破坏,因为add_menu_page
无法直接调用。
始终检查无法按预期工作的每个功能的文档:
Function_Reference/add_menu_page
这是您的插件的工作版本:
<?php
/*
Plugin Name: myphotos Plugin
Description: A simple wordpress plugin.
Version: 1.0
Author: Saeed Pirdost
Copyright: 2012, Saeed Pirdost
*/
add_filter( 'admin_notices', 'print_my_notice' );
add_action( 'admin_menu', 'register_custom_menu_page' );
function print_my_notice()
{
echo '<div class="updated">
<p>I am a big notice that appears everywhere</p>
</div>';
}
function register_custom_menu_page()
{
add_menu_page(
__( 'My Menu Page', 'my-plugin-text-domain' ),
__( 'My Menu', 'my-plugin-text-domain' ),
'edit_themes',
'my_new_menu',
'print_my_menu',
'http://upload.wikimedia.org/wikipedia/commons/a/aa/Wink%2816px%29.svg',
7
);
}
function print_my_menu()
{
echo '<div id="icon-post" class="icon32"></div>
<h2>My plugin</h2>
<p><a class="button-secondary" href="#"> '
. __( 'I am a translation', 'my-plugin-text-domain' )
. '</a>
</p>';
}