testers] Extensively test the export & import of the (new) settings! * If that all works fine, getting testers to export before and after upgrade will make testing easier. * * @todo [Yoast] The import for the RSS Footer plugin checks for data already entered via Yoast SEO, * the other import routines should do that too. */ $yform = Yoast_Form::get_instance(); $replace = false; /** * The import method is used to dermine if there should be something imported. * * In case of POST the user is on the Yoast SEO import page and in case of the GET the user sees a notice from * Yoast SEO that we can import stuff for that plugin. */ if ( filter_input( INPUT_POST, 'import' ) || filter_input( INPUT_GET, 'import' ) ) { check_admin_referer( 'wpseo-import' ); $post_wpseo = filter_input( INPUT_POST, 'wpseo', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); $replace = ( ! empty( $post_wpseo['deleteolddata'] ) && $post_wpseo['deleteolddata'] === 'on' ); if ( ! empty( $post_wpseo['importwoo'] ) ) { $import = new WPSEO_Import_WooThemes_SEO( $replace ); } if ( ! empty( $post_wpseo['importaioseo'] ) || filter_input( INPUT_GET, 'importaioseo' ) ) { $import = new WPSEO_Import_AIOSEO( $replace ); } if ( ! empty( $post_wpseo['importheadspace'] ) ) { $import = new WPSEO_Import_External( $replace ); $import->import_headspace(); } if ( ! empty( $post_wpseo['importwpseo'] ) || filter_input( INPUT_GET, 'importwpseo' ) ) { $import = new WPSEO_Import_WPSEO( $replace ); } // Allow custom import actions. do_action( 'wpseo_handle_import' ); } if ( isset( $_FILES['settings_import_file'] ) ) { check_admin_referer( 'wpseo-import-file' ); $import = new WPSEO_Import(); } if ( isset( $import ) ) { /** * Allow customization of import&export message * * @api string $msg The message. */ $msg = apply_filters( 'wpseo_import_message', $import->msg ); // Check if we've deleted old data and adjust message to match it. if ( $replace ) { $msg .= ' ' . __( 'The old data of the imported plugin was deleted successfully.', 'wordpress-seo' ); } if ( $msg != '' ) { $status = ( $import->success ) ? 'updated' : 'error'; echo '

', $msg, '

'; } } $tabs = array( 'wpseo-import' => array( 'label' => __( 'Import', 'wordpress-seo' ), 'screencast_video_url' => 'https://yoa.st/screencast-tools-import-export', ), 'wpseo-export' => array( 'label' => __( 'Export', 'wordpress-seo' ), 'screencast_video_url' => 'https://yoa.st/screencast-tools-import-export', ), 'import-seo' => array( 'label' => __( 'Import from other SEO plugins', 'wordpress-seo' ), 'screencast_video_url' => 'https://yoa.st/screencast-tools-import-export', ), ); ?>

$tab ) { printf( '
', $identifier ); if ( ! empty( $tab['screencast_video_url'] ) ) { $tab_video_url = $tab['screencast_video_url']; $helpcenter_tab = new WPSEO_Option_Tab( $identifier, $tab['label'], array( 'video_url' => $tab['screencast_video_url'] ) ); $helpcenter = new WPSEO_Help_Center( $identifier, $helpcenter_tab ); $helpcenter->output_help_center(); } require_once WPSEO_PATH . 'admin/views/tabs/tool/' . $identifier . '.php'; echo '
'; } /** * Allow adding a custom import tab */ do_action( 'wpseo_import_tab_content' );