=' );
}
/**
* Check WordPress version requirements.
*
* @return bool
*/
function wp_bnb_check_wp_version(): bool {
return version_compare( get_bloginfo( 'version' ), WP_BNB_MIN_WP_VERSION, '>=' );
}
/**
* Display admin notice for PHP version requirement.
*
* @return void
*/
function wp_bnb_php_version_notice(): void {
?>
true )
);
}
// Load Composer autoloader for activation.
$autoloader = WP_BNB_PATH . 'vendor/autoload.php';
if ( file_exists( $autoloader ) ) {
require_once $autoloader;
// Register post types and taxonomies before flushing rewrite rules.
\Magdev\WpBnb\Taxonomies\Amenity::register();
\Magdev\WpBnb\Taxonomies\RoomType::register();
\Magdev\WpBnb\PostTypes\Building::register();
\Magdev\WpBnb\PostTypes\Room::register();
\Magdev\WpBnb\PostTypes\Booking::register();
\Magdev\WpBnb\PostTypes\Guest::register();
}
// Set default options.
add_option( 'wp_bnb_version', WP_BNB_VERSION );
// Flush rewrite rules for custom post types.
flush_rewrite_rules();
}
register_activation_hook( __FILE__, 'wp_bnb_activate' );
/**
* Plugin deactivation hook.
*
* @return void
*/
function wp_bnb_deactivate(): void {
// Flush rewrite rules.
flush_rewrite_rules();
}
register_deactivation_hook( __FILE__, 'wp_bnb_deactivate' );
/**
* Add action links to the plugins page.
*
* @param array $links Existing plugin action links.
* @return array Modified plugin action links.
*/
function wp_bnb_plugin_action_links( array $links ): array {
$dashboard_link = sprintf(
'%s',
esc_url( admin_url( 'admin.php?page=wp-bnb' ) ),
esc_html__( 'Dashboard', 'wp-bnb' )
);
array_unshift( $links, $dashboard_link );
return $links;
}
add_filter( 'plugin_action_links_' . WP_BNB_BASENAME, 'wp_bnb_plugin_action_links' );