激活后插件重定向

时间:2012-05-28 作者:Wayne Hatter

我已经创建了一个插件,我想在用户激活后重定向到该插件的选项页面。当我在本地测试它时,它工作得很好。但是,在wordpress的实时安装上,它的行为方式不同。

下面是我的代码:

        register_activation_hook(__FILE__, \'srpt_plugin_activate\');
add_action(\'admin_init\', \'srpt_plugin_redirect\');

function my_plugin_activate() {
    add_option(\'srpt_activation_redirect\', true);
}

function srpt_plugin_redirect() {
    $srpt_url = admin_url( \'admin.php?page=plugin-options-page/plugin-options-page.php\', \'http\' );
    if (get_option(\'srpt_activation_redirect\', false)) {
        delete_option(\'srpt_activation_redirect\');
        wp_redirect($srpt_url);
    }
这是对原始uri的替换:

plugin-options-page.php
如果我以后没有机会感谢你,谢谢你抽出时间。韦恩·哈特。

2 个回复
SO网友:Liam Bailey

将此添加为激活挂钩:

    register_activation_hook(__FILE__, \'srpt_plugin_activate\');
但功能是my_plugin_activatesrpt_plugin_activate. 这是基于没有功能的事实srpt_plugin_activate, 看看代码my_plugin_activate 填充其在流中的位置。这是问题中的输入错误还是实时代码中的输入错误?

另外,请重新输入245个字符的意外输出。是否在重定向之前故意不创建输出?因此,您必须得到一条错误消息,可能是PHP警告或通知级别,这将为您提供245个字符的意外输出。我不知道为什么你的选项页面url会以结尾。php my插件总是使用add_submenu_page 我定义了一个字符串用作页面名称,然后页面的url是例如:/wp admin/admin。php?page=i\\u提供的\\u字符串。下面是我向一个插件添加选项页的示例:

add_submenu_page(\'wswpsubscriber\', __(\'Main Management Area\',\'WsWpSubscriber\'), __(\'Options\',\'WsPsSubscriber\'),\'manage_options\',\'wswps_setup\',array(&$this,\'subscribe_main_menu\'));

function subscribe_main_menu

然后控制位于/wp admin/admin的页面的输出。php?页面=wswps\\U设置

SO网友:csehasib

你好,我在插件激活后使用了bellows代码重定向。您可以使用此代码。它工作得很好。

register_activation_hook(__FILE__, \'nht_plugin_activate\');
add_action(\'admin_init\', \'nht_plugin_redirect\');

function nht_plugin_activate() {
add_option(\'nht_plugin_do_activation_redirect\', true);
}

function nht_plugin_redirect() {
if (get_option(\'nht_plugin_do_activation_redirect\', false)) {
    delete_option(\'nht_plugin_do_activation_redirect\');
    if(!isset($_GET[\'activate-multi\']))
    {
        wp_redirect("edit.php?post_type=headline&page=news-headline");
    }
 }
}
“nht\\u”是我的插件前缀(&U);“edit.php?post\\u type=headline&page=news headline”是重定向页面。请把这个换成那个。您可以在上查看更多教程http://www.e2soft.com

结束

相关推荐

wp_login_form redirect

是否有方法将使用wp\\u login\\u表单登录的用户重定向到注册时自动创建的自定义页面似乎URL需要是绝对的,很明显URL的结尾会随着每个用户的不同而变化。请参阅用于在注册时创建页面的函数function create_user_page($user_id) { if ( $user = get_userdata($user_id) ) { // Create a new user-specific page $page = array