Add uninstall hook to remove ticks and tickers
This commit is contained in:
parent
c927200834
commit
9d64f9f415
@ -39,4 +39,37 @@ class WPLiveticker2_System extends WPLiveticker2 {
|
|||||||
add_option( self::OPTION, $defaults );
|
add_option( self::OPTION, $defaults );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Plugin uninstall handler.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public static function uninstall() {
|
||||||
|
// Delete all ticks.
|
||||||
|
$ticks = new WP_Query( array( 'post_type' => 'wplt2_tick' ) );
|
||||||
|
foreach ( $ticks->get_posts() as $tick ) {
|
||||||
|
wp_delete_post( $tick->ID, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Temporarily register taxonomy to delete it.
|
||||||
|
register_taxonomy( 'wplt2_ticker', array( 'wplt2_tick' ) );
|
||||||
|
|
||||||
|
// Delete tickers.
|
||||||
|
$tickers = get_terms(
|
||||||
|
array(
|
||||||
|
'taxonomy' => 'wplt2_ticker',
|
||||||
|
'hide_empty' => false,
|
||||||
|
)
|
||||||
|
);
|
||||||
|
foreach ( $tickers as $ticker ) {
|
||||||
|
wp_delete_term( $ticker->term_id, 'wplt2_ticker' );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unregister taxonomy again.
|
||||||
|
unregister_taxonomy( 'wplt2_ticker' );
|
||||||
|
|
||||||
|
// Delete the option.
|
||||||
|
delete_option( self::OPTION );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -44,6 +44,7 @@ define( 'WPLT2_BASENAME', plugin_basename( __FILE__ ) );
|
|||||||
add_action( 'init', array( 'WPLiveticker2', 'register_types' ) );
|
add_action( 'init', array( 'WPLiveticker2', 'register_types' ) );
|
||||||
add_action( 'plugins_loaded', array( 'WPLiveticker2', 'init' ) );
|
add_action( 'plugins_loaded', array( 'WPLiveticker2', 'init' ) );
|
||||||
register_activation_hook( WPLT2_FILE, array( 'WPLiveticker2_System', 'activate' ) );
|
register_activation_hook( WPLT2_FILE, array( 'WPLiveticker2_System', 'activate' ) );
|
||||||
|
register_uninstall_hook( WPLT2_FILE, array( 'WPLiveticker2_System', 'uninstall' ) );
|
||||||
|
|
||||||
// Allow shortcodes in widgets.
|
// Allow shortcodes in widgets.
|
||||||
add_filter( 'widget_text', 'do_shortcode' );
|
add_filter( 'widget_text', 'do_shortcode' );
|
||||||
|
Loading…
x
Reference in New Issue
Block a user