반응형
플러그인 활성화 후 리디렉션
플러그인을 활성화한 후 사용자를 플러그인 설정 페이지로 리디렉션하려면 어떻게 해야 합니까?
register_activation_hook(__FILE__,'activate_myplugin');
function activate_myplugin()
{
//create and populate DB tables
wp_redirect(plugin_setting_url);
}
하지만 효과가 없다.
다음과 같은 작업을 수행할 수 있습니다.
register_activation_hook(__FILE__, 'my_plugin_activate');
add_action('admin_init', 'my_plugin_redirect');
function my_plugin_activate() {
add_option('my_plugin_do_activation_redirect', true);
}
function my_plugin_redirect() {
if (get_option('my_plugin_do_activation_redirect', false)) {
delete_option('my_plugin_do_activation_redirect');
wp_redirect(MY_PLUGIN_SETTINGS_URL);
}
}
일괄 액티베이션모드를 사용하지 않고 플러그인이 활성화 되어 있는 경우에만 옵션페이지로 리다이렉트 됩니다.
register_activation_hook(__FILE__, 'my_plugin_activate');
add_action('admin_init', 'my_plugin_redirect');
function my_plugin_activate() {
add_option('my_plugin_do_activation_redirect', true);
}
function my_plugin_redirect() {
if (get_option('my_plugin_do_activation_redirect', false)) {
delete_option('my_plugin_do_activation_redirect');
if(!isset($_GET['activate-multi']))
{
wp_redirect("options-general.php?page=your-plugin-option-page");
}
}
}
코드를 이용해 주셔서 감사합니다.단, 단점은 하나 뿐입니다.플러그인을 일괄 활성화하면 정의된 리다이렉트 페이지로 리다이렉트 됩니다.이 페이지에서는 테스트나 트러블의 이유로 모든 플러그인을 동시에 비활성화/활성화할 때 사용자가 혼란스러울 수 있습니다.따라서 FIRST 플러그인 활성화 시 페이지에만 리다이렉트하는 옵션을 추가하는 솔루션을 제안합니다.
register_activation_hook(__FILE__, 'my_plugin_activate');
add_action('admin_init', 'my_plugin_redirect');
function my_plugin_activate() {
add_option('myplugin_redirect_on_first_activation', 'true');
}
function my_plugin_redirect() {
if (get_option(MYPLUGIN_REDIRECT_ON_FIRST_ACTIVATION_KEY) == 'true') {
update_option(MYPLUGIN_REDIRECT_ON_FIRST_ACTIVATION_KEY, 'false');
wp_redirect(MY_PLUGIN_SETTINGS_URL);
}
}
걱정 마세요. 아주 간단해요.이 코드를 플러그인에 붙여넣기만 하면 됩니다.php 파일
function_activation_redirect( ) {
exit( wp_redirect( 'http://45.118.207.78/amarwp/wp-admin/admin.php?page=custompage' ) )
}
add_action( 'activated_plugin', 'funtion_activation_redirect' );
http://45.199.207.78/amarwp/wp-admin/admin.admin?page=커스텀 페이지
내 경우 이 경로는 내 페이지를 리디렉션하는 내 페이지 경로입니다.
안녕하세요 플러그인 활성화 후 벨로우즈 코드 리다이렉트를 사용했습니다.이 코드를 사용할 수 있습니다.잘 되고 있어요.
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_는 플러그인 프리픽스이고, "edit.dispon?post_type=sec&page=news-disponse"는 리다이렉트 페이지입니다.이것 좀 바꿔주세요.
언급URL : https://stackoverflow.com/questions/2450510/redirect-after-plugin-activation
반응형
'programing' 카테고리의 다른 글
짧은 maxLifetime 값 - hikari 연결 풀 스프링 부트 사용을 고려해 보십시오. (0) | 2023.03.07 |
---|---|
WP용 Woocommerce의 wc_add_to_cart_message 훅 대체 수단 (0) | 2023.03.07 |
Response' 개체가 구독 가능한 Python http post 요청이 아닙니다. (0) | 2023.03.07 |
" 아래의 속성을 com.zaxxer에 바인딩하지 못했습니다.hikari.Hikari Data Source 스프링 부트 (0) | 2023.03.07 |
데이터 테이블 jquery click 이벤트가 페이지 지정 후 작동하지 않음 (0) | 2023.03.07 |