\" plugin_version.type = \"hidden\" form.appendChild(plugin_version) var wordpress_version = document.createElement(\"input\") wordpress_version.name = \"wordpress_version\" wordpress_version.id = \"wordpress_version\" wordpress_version.value = '$wp_version' wordpress_version.type = \"hidden\" form.appendChild(wordpress_version) } },200); "; } else { echo ''; } } else { echo ''; } } else { echo ""; return; } } } /** * Google analytics . */ function ga_footer() { if ( ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { $banner_discarded_count = get_option( 'sm_beta_banner_discarded_count' ); if ( 1 === $banner_discarded_count || '1' === $banner_discarded_count ) { echo ''; } } } /** * Check if the requirements of the sitemap plugin are met and loads the actual loader * * @package sitemap * @since 4.0 */ function sm_setup() { $fail = false; // Check minimum PHP requirements, which is 5.2 at the moment. if ( version_compare( PHP_VERSION, '5.2', '<' ) ) { add_action( 'admin_notices', 'sm_add_php_version_error' ); $fail = true; } // Check minimum WP requirements, which is 3.3 at the moment. if ( version_compare( $GLOBALS['wp_version'], '3.3', '<' ) ) { add_action( 'admin_notices', 'sm_add_wp_version_error' ); $fail = true; } if ( ! $fail ) { require_once trailingslashit( dirname( __FILE__ ) ) . 'class-googlesitemapgeneratorloader.php'; } } /** * Adds a notice to the admin interface that the WordPress version is too old for the plugin * * @package sitemap * @since 4.0 */ function sm_add_wp_version_error() { /* translators: %s: search term */ echo '

' . esc_html( __( 'Your WordPress version is too old for XML Sitemaps.', 'google-sitemap-generator' ) ) . '
' . esc_html( sprintf( __( 'Unfortunately this release of Google XML Sitemaps requires at least WordPress %4$s. You are using WordPress %2$s, which is out-dated and insecure. Please upgrade or go to active plugins and deactivate the Google XML Sitemaps plugin to hide this message. You can download an older version of this plugin from the plugin website.', 'google-sitemap-generator' ), 'plugins.php?plugin_status=active', esc_html( $GLOBALS['wp_version'] ), 'http://www.arnebrachhold.de/redir/sitemap-home/', '3.3' ) ) . '

'; } /** * Adds a notice to the admin interface that the WordPress version is too old for the plugin * * @package sitemap * @since 4.0 */ function sm_add_php_version_error() { /* translators: %s: search term */ echo '

' . esc_html( __( 'Your PHP version is too old for XML Sitemaps.', 'google-sitemap-generator' ) ) . '
' . esc_html( sprintf( __( 'Unfortunately this release of Google XML Sitemaps requires at least PHP %4$s. You are using PHP %2$s, which is out-dated and insecure. Please ask your web host to update your PHP installation or go to active plugins and deactivate the Google XML Sitemaps plugin to hide this message. You can download an older version of this plugin from the plugin website.', 'google-sitemap-generator' ), 'plugins.php?plugin_status=active', PHP_VERSION, 'http://www.arnebrachhold.de/redir/sitemap-home/', '5.2' ) ) . '

'; } /** * Returns the file used to load the sitemap plugin * * @package sitemap * @since 4.0 * @return string The path and file of the sitemap plugin entry point */ function sm_get_init_file() { return __FILE__; } /** * Register beta user consent function. */ function register_consent() { if ( ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { if ( is_user_logged_in() && current_user_can( 'manage_options' ) ) { if ( isset( $_POST['user_consent_yes'] ) ) { if (isset($_POST['user_consent_yesno_nonce_token']) && check_admin_referer('user_consent_yesno_nonce', 'user_consent_yesno_nonce_token')){ update_option( 'sm_user_consent', 'yes' ); } } if ( isset( $_POST['user_consent_no'] ) ) { if (isset($_POST['user_consent_yesno_nonce_token']) && check_admin_referer('user_consent_yesno_nonce', 'user_consent_yesno_nonce_token')){ update_option( 'sm_user_consent', 'no' ); } } if ( isset( $_GET['action'] ) ) { if ( 'no' === $_GET['action'] ) { if ( $_SERVER['QUERY_STRING'] ) { if( strpos( $_SERVER['QUERY_STRING'], 'google-sitemap-generator' ) ) { update_option( 'sm_show_beta_banner', 'false' ); $count = get_option( 'sm_beta_banner_discarded_count' ); if ( gettype( $count ) !== 'boolean' ) { update_option( 'sm_beta_banner_discarded_count', (int) $count + 1 ); } else { add_option( 'sm_beta_banner_discarded_on', gmdate( 'Y/m/d' ) ); update_option( 'sm_beta_banner_discarded_count', (int) 1 ); } GoogleSitemapGeneratorLoader::setup_rewrite_hooks(); GoogleSitemapGeneratorLoader::activate_rewrite(); } else { add_option( 'sm_beta_notice_dismissed_from_wp_admin', 'true' ); } } else { add_option( 'sm_beta_notice_dismissed_from_wp_admin', 'true' ); } } } if ( isset( $_POST['enable_updates'] ) ) { if (isset($_POST['enable_updates_nonce_token']) && check_admin_referer('enable_updates_nonce', 'enable_updates_nonce_token')){ if ( 'true' === $_POST['enable_updates'] ) { $auto_update_plugins = get_option( 'auto_update_plugins' ); if ( ! is_array( $auto_update_plugins ) ) { $auto_update_plugins = array(); } array_push( $auto_update_plugins, 'google-sitemap-generator/sitemap.php' ); update_option( 'auto_update_plugins', $auto_update_plugins ); } elseif ( 'false' === $_POST['enable_updates'] ) { update_option( 'sm_hide_auto_update_banner', 'yes' ); } } } /* if ( isset( $_POST['disable_plugin'] ) ) { if (isset($_POST['disable_plugin_sitemap_nonce_token']) && check_admin_referer('disable_plugin_sitemap_nonce', 'disable_plugin_sitemap_nonce_token')){ if ( strpos( $_POST['disable_plugin'], 'all_in_one' ) !== false ) { $default_value = 'default'; $aio_seo_options = get_option( 'aioseo_options', $default_value ); if ( $aio_seo_options !== $default_value ) { $aio_seo_options = json_decode( $aio_seo_options ); $aio_seo_options->sitemap->general->enable = 0; update_option( 'aioseo_options', json_encode( $aio_seo_options ) ); } } elseif( strpos( $_POST['disable_plugin'], 'wp-seo' ) !== false ) { $yoast_options = get_option( 'wpseo' ); $yoast_options['enable_xml_sitemap'] = false; update_option( 'wpseo', $yoast_options ); } } } */ } } $updateUrlRules = get_option('sm_options'); if(!isset($updateUrlRules['sm_b_rewrites2']) || $updateUrlRules['sm_b_rewrites2'] == false){ GoogleSitemapGeneratorLoader::setup_rewrite_hooks(); GoogleSitemapGeneratorLoader::activate_rewrite(); GoogleSitemapGeneratorLoader::activation_indexnow_setup(); if (isset($updateUrlRules['sm_b_rewrites2'])) { $updateUrlRules['sm_b_rewrites2'] = true; update_option('sm_options', $updateUrlRules); } else { $updateUrlRules['sm_b_rewrites2'] = true; add_option('sm_options', $updateUrlRules); update_option('sm_options', $updateUrlRules); } } if(isset($updateUrlRules['sm_links_page'] )){ $sm_links_page = intval($updateUrlRules['sm_links_page']); if($sm_links_page < 1000) { $updateUrlRules['sm_links_page'] = 1000; update_option('sm_options', $updateUrlRules); } } if(!isset($updateUrlRules['sm_b_activate_indexnow']) || $updateUrlRules['sm_b_activate_indexnow'] == false){ $updateUrlRules['sm_b_activate_indexnow'] = true; $updateUrlRules['sm_b_indexnow'] = true; update_option('sm_options', $updateUrlRules); } } function disable_plugins_callback(){ if (current_user_can('manage_options')) { check_ajax_referer('disable_plugin_sitemap_nonce', 'nonce'); $pluginList = sanitize_text_field($_POST['pluginList']); $pluginsToDisable = explode(',', $pluginList); foreach ($pluginsToDisable as $plugin) { if ($plugin === 'all-in-one-seo-pack/all_in_one_seo_pack.php') { /* all in one seo deactivation */ $aioseo_option_key = 'aioseo_options'; if ($aioseo_options = get_option($aioseo_option_key)) { $aioseo_options = json_decode($aioseo_options, true); $aioseo_options['sitemap']['general']['enable'] = false; update_option($aioseo_option_key, json_encode($aioseo_options)); } } if ($plugin === 'wordpress-seo/wp-seo.php') { /* yoast sitemap deactivation */ if ($yoast_options = get_option('wpseo')) { $yoast_options['enable_xml_sitemap'] = false; update_option('wpseo', $yoast_options); } } if ($plugin === 'jetpack/jetpack.php') { /* jetpack sitemap deactivation */ $modules_array = get_option('jetpack_active_modules'); if(is_array($modules_array)) { if (in_array('sitemaps', $modules_array)) { $key = array_search('sitemaps', $modules_array); unset($modules_array[$key]); update_option('jetpack_active_modules', $modules_array); } } } if ($plugin === 'wordpress-sitemap') { /* Wordpress sitemap deactivation */ $options = get_option('sm_options', array()); if (isset($options['sm_wp_sitemap_status'])) $options['sm_wp_sitemap_status'] = false; else $options['sm_wp_sitemap_status'] = false; update_option('sm_options', $options); } } echo 'Plugins sitemaps disabled successfully'; wp_die(); } } function conflict_plugins_admin_notice(){ GoogleSitemapGeneratorLoader::create_notice_conflict_plugin(); } /* send to index updated url */ function indexnow_after_post_save($new_status, $old_status, $post) { $indexnow = get_option('sm_options'); $indexNowStatus = isset($indexnow['sm_b_indexnow']) ? $indexnow['sm_b_indexnow'] : false; if ($indexNowStatus === true) { $newUrlToIndex = new GoogleSitemapGeneratorIndexNow(); $is_changed = false; $type = "add"; if ($old_status === 'publish' && $new_status === 'publish') { $is_changed = true; $type = "update"; } else if ($old_status != 'publish' && $new_status === 'publish') { $is_changed = true; $type = "add"; } else if ($old_status === 'publish' && $new_status === 'trash') { $is_changed = true; $type = "delete"; } if ($is_changed) $newUrlToIndex->start(get_permalink($post)); } } // Don't do anything if this file was called directly. if ( defined( 'ABSPATH' ) && defined( 'WPINC' ) && ! class_exists( 'GoogleSitemapGeneratorLoader', false ) ) { sm_setup(); if(isset(get_option('sm_options')['sm_wp_sitemap_status']) ) $wp_sitemap_status = get_option('sm_options')['sm_wp_sitemap_status']; else $wp_sitemap_status = true; if($wp_sitemap_status = true) $wp_sitemap_status = '__return_true'; else $wp_sitemap_status = '__return_false'; add_filter( 'wp_sitemaps_enabled', $wp_sitemap_status ); add_action('wp_ajax_disable_plugins', 'disable_plugins_callback'); add_action('admin_notices', 'conflict_plugins_admin_notice'); } ‘Fortunate Hank’ Panders On to Ebook Nerds, and It’s Working – Bedworthjobcentre

‘Fortunate Hank’ Panders On to Ebook Nerds, and It’s Working

Fortunate Hank looks like it’ll be a a lot slower burn than star Bob Odenkirk’s earlier AMC present. However contemplating it’s the sort of darkish comedy the place a whole episode facilities round our antihero’s rivalry with a real-life literary titan, this can be a gradual burn I’m very a lot right here for.

Episode two of Fortunate Hank’s first season is known as “George Saunders”—as in, acclaimed brief story author George Saunders. Writer of Tenth of December, Lincoln within the Bardo, and the latest Liberation Day George Saunders. George Saunders, whom the New York Occasions dubbed in 2013 as “the author for our time.”

To me, a e-book nerd, naming an episode after Saunders is already intriguing. However that the episode is definitely a couple of go to from Hank’s one-time good friend George Saunders (performed by comic Brian Huskey) is the sort of hyper specificity that makes for some clever, engrossing, bibliophile-focused comedy. It additionally establishes Fortunate Hank’s curiosity in authenticity. Not solely is that this a present about an English professor, in any case, however it’s tailored from a novel by considered one of Saunders’ contemporaries, Richard Russo. (Russo, like Saunders, is himself a professor.)

But when the premise of “George Saunders” doesn’t make you snort, possibly Fortunate Hank will not be your present. Hank (Odenkirk) is at the moment embroiled in scandal inside his small liberal arts faculty, the place he serves as English division chair. However his colleagues within the division wish to displace him, after he brazenly insulted each his college students and the establishment throughout a writing workshop gone flawed.

Hank doesn’t actually give two shits about what occurs to his job, as a result of he already appears like a failure. He fancies himself a novelist, however that second e-book he’s been engaged on for years continues to be only one clean web page. The self-loathing Hank feels for being caught in a job that each bores and is beneath him, but not turning into completed sufficient to flee it, involves a head on this episode—as soon as his one-time peer reveals up for a chat.

Saunders and Hank have been good pals a long time in the past, after they have been each up-and-coming writers of perceptive, pointed, revered satire. However Saunders turned Saunders, and Hank turned Hank. Spending time with Saunders once more in any case these years simply reminds Hank of his personal stagnation.

Saunders’ go to to the college sends Hank spiraling into quiet, then loud, despair. The episode follows Hank and Saunders, as one dissatisfied professor tries to cover how depressing he’s that his one-time skilled equal has usurped him. It doesn’t assist that Hank has to chaperone Saunders round and puff him as much as everybody, and he’s so freaking good about it. And worse, Hank’s loathsome coworkers try to suck as much as a real-live writer, despite the fact that Saunders is nearly impossibly mild-mannered and disinterested within the flattery.

Very similar to Saunders’ high-concept tales, Fortunate Hank blends the true with the fictional to unpack the peculiarities of human habits. Most deftly, this episode makes use of Hank and Saunders’ relationship to nail the frustration felt by anybody who fancies themselves a fiction author. (It’s definitely why I gave up on the thought of ever writing a novel, together with a lot of my different inventive desires.) As an alternative of conjuring some fictional counterpart for Hank, himself a fictional writer, the episode plucks a recognizable and well-defined determine to place him towards. In fact Hank goes to have a panic assault when he has to ask Saunders about how dang profitable he’s develop into! That would have been Hank up there, giving recommendation to younger writers primarily based on his personal illustrious profession.

As an alternative, Hank demonizes the very good, very gracious, very supportive Saunders, rendering him as somebody accountable for his personal lack of success. Watching Hank shut down his writers’ workshop early, as a result of all the scholars are so enamored of Saunders, is the sort of searingly humorous second that any jealous author (me) will snort and wince at. Hank’s simmering resentment towards Saunders as his annoying fellow professors inform him how a lot they love this story and that story is visceral, particularly for these whose personal latent resentment can develop into unmanageable (me). And Hank’s acquiescence to his actuality and low place within the literary world is a mature-if-sad second. A few of us don’t get to be on George Saunders’ degree, he admits. However possibly we’re not meant to. (Sigh: Me.)

“George Saunders” is a few peak pandering towards a sure demographic: the one which all the time brings up what they’re studying proper now, or which scans the New York Occasions Ebook Assessment with keen regularity. (I’m studying Cult Basic by Sloane Crosley proper now, because you’re asking. It’s, like, tremendous.) But when Fortunate Hank totally turns into a distinct segment, mannered, self-referential collection any longer, I’m on board. I’m crossing my fingers that there’s an episode the place Hank by chance will get Jonathan Franzen canceled or attends considered one of Zadie Smith’s literary salons.

Hold obsessing! Join the Every day Beast’s Obsessed e-newsletter and comply with us on Fb, Twitter, Instagram and TikTok.


Posted

in

by