e_url = get_option( 'home' ); restore_current_blog(); } $home_parts = get_rocket_parse_url( $home_url ); $home_url = "{$home_parts['scheme']}://{$home_parts['host']}"; $cache_path = rocket_get_constant( 'WP_ROCKET_CACHE_PATH' ) . $home_parts['host']; foreach ( $cache_purge_pages as $page ) { // Check if it contains regex pattern. if ( strstr( $page, '*' ) ) { $matches_files = _rocket_get_recursive_dir_files_by_regex( '#' . $page . '#i' ); foreach ( $matches_files as $file ) { // Convert path to URL. $purge_urls[] = str_replace( $cache_path, untrailingslashit( $home_url ), $file->getPath() ); } continue; } $purge_urls[] = trailingslashit( $home_url ) . ltrim( $page, '/' ); } } // Add the author page. $author_url = trailingslashit( get_author_posts_url( $post->post_author ) ); if ( trailingslashit( site_url() ) !== $author_url && trailingslashit( home_url() ) !== $author_url ) { $purge_urls[] = $author_url; } // Add all parents. $parents = get_post_ancestors( $post_id ); if ( (bool) $parents ) { foreach ( $parents as $parent_id ) { $purge_urls[] = get_permalink( $parent_id ); } } // Remove entries with empty values in array. $purge_urls = array_filter( $purge_urls, 'is_string' ); return array_flip( array_flip( $purge_urls ) ); } } /** * Update cache when a post is updated or commented * * @since 3.0.5 Don't purge for attachment post type * @since 2.8 Only add post type archive if post type is not post * @since 2.6 Purge the page defined in "Posts page" option * @since 2.5.5 Don't cache for auto-draft post status * @since 1.3.2 Add wp_update_comment_count to purge cache when a comment is added/updated/deleted * @since 1.3.0 Compatibility with WPML * @since 1.3.0 Add 2 hooks : before_rocket_clean_post, after_rocket_clean_post * @since 1.3.0 Purge all parents of the post and the author page * @since 1.2.2 Add wp_trash_post and delete_post to purge cache when a post is trashed or deleted * @since 1.1.3 Use clean_post_cache instead of transition_post_status, transition_comment_status and preprocess_comment * @since 1.0 * * @param int $post_id The post ID. * @param WP_Post $post WP_Post object. */ function rocket_clean_post( $post_id, $post = null ) { if ( rocket_is_importing() ) { return; } static $done = []; if ( isset( $done[ $post_id ] ) ) { return false; } $done[ $post_id ] = 1; if ( defined( 'DOING_AUTOSAVE' ) ) { return false; } $purge_urls = []; // Get all post infos if the $post object was not supplied. if ( is_null( $post ) ) { $post = get_post( $post_id ); } // Return if $post is not an object. if ( ! is_object( $post ) ) { return false; } // No purge for specific conditions. if ( 'auto-draft' === $post->post_status || 'draft' === $post->post_status || empty( $post->post_type ) || 'nav_menu_item' === $post->post_type || 'attachment' === $post->post_type ) { return false; } // Don't purge if post's post type is not public or not publicly queryable. $post_type = get_post_type_object( $post->post_type ); if ( ! is_object( $post_type ) || true !== $post_type->public ) { return false; } // Get the post language. $i18n_plugin = rocket_has_i18n(); $lang = ''; if ( 'wpml' === $i18n_plugin && ! rocket_is_plugin_active( 'woocommerce-multilingual/wpml-woocommerce.php' ) ) { // WPML. $lang = $GLOBALS['sitepress']->get_language_for_element( $post_id, 'post_' . get_post_type( $post_id ) ); } elseif ( 'polylang' === $i18n_plugin && function_exists( 'pll_get_post_language' ) ) { // Polylang. $lang = pll_get_post_language( $post_id ); } $purge_urls = rocket_get_purge_urls( $post_id, $post ); /** * Fires before cache files related with the post are deleted * * @since 1.3.0 * * @param WP_Post $post The post object * @param array $purge_urls URLs cache files to remove * @param string $lang The post language */ do_action( 'before_rocket_clean_post', $post, $purge_urls, $lang ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals /** * Filter URLs cache files to remove * * @since 1.0 * * @param array $purge_urls List of URLs cache files to remove */ $purge_urls = apply_filters( 'rocket_post_purge_urls', $purge_urls, $post ); // Purge all files. rocket_clean_files( $purge_urls ); // Never forget to purge homepage and their pagination. rocket_clean_home( $lang ); // Purge home feeds (blog & comments). if ( has_filter( 'rocket_cache_reject_uri', 'wp_rocket_cache_feed' ) !== false ) { rocket_clean_home_feeds(); } /** * URLs cache files to remove after cache files related with the post are deleted * * @param array $purge_urls URLs cache files to remove * @param WP_Post $post The post object * @returns array $purge_urls URLs cache files to remove */ $purge_urls = (array) apply_filters( 'after_rocket_clean_post_urls', $purge_urls, $post ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals /** * Fires after cache files related with the post are deleted * * @since 1.3.0 * * @param WP_Post $post The post object * @param array $purge_urls URLs cache files to remove * @param string $lang The post language */ do_action( 'after_rocket_clean_post', $post, $purge_urls, $lang ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals return true; } add_action( 'wp_trash_post', 'rocket_clean_post' ); add_action( 'delete_post', 'rocket_clean_post' ); add_action( 'clean_post_cache', 'rocket_clean_post' ); add_action( 'wp_update_comment_count', 'rocket_clean_post' ); /** * Purge WP Rocket cache when post status is changed from publish to draft. * * @since 3.4.3 * * @param int $post_id The post ID. * @param array $post_data Array of unslashed post data. */ function rocket_clean_post_cache_on_status_change( $post_id, $post_data ) { if ( rocket_is_importing() ) { return; } if ( 'publish' !== get_post_field( 'post_status', $post_id ) || 'draft' !== $post_data['post_status'] ) { return; } $purge_urls = []; $post = get_post( $post_id ); $post_type = get_post_type_object( $post->post_type ); // Return if $post is not an object or $post_type is not public. if ( ! is_object( $post ) || true !== $post_type->public ) { return; } // Get the post language. $i18n_plugin = rocket_has_i18n(); $lang = false; if ( 'wpml' === $i18n_plugin && ! rocket_is_plugin_active( 'woocommerce-multilingual/wpml-woocommerce.php' ) ) { // WPML. $lang = $GLOBALS['sitepress']->get_language_for_element( $post_id, 'post_' . get_post_type( $post_id ) ); } elseif ( 'polylang' === $i18n_plugin && function_exists( 'pll_get_post_language' ) ) { // Polylang. $lang = pll_get_post_language( $post_id ); } $purge_urls = rocket_get_purge_urls( $post_id, $post ); /** * Filter URLs cache files to remove * * @since 1.0 * * @param array $purge_urls List of URLs cache files to remove */ $purge_urls = apply_filters( 'rocket_post_purge_urls', $purge_urls, $post ); /** * Fires before cache files related with the post are deleted * * @since 1.3.0 * * @param WP_Post $post The post object * @param array $purge_urls URLs cache files to remove * @param string $lang The post language */ do_action( 'before_rocket_clean_post', $post, $purge_urls, $lang ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound // Purge all files. rocket_clean_files( $purge_urls ); // Never forget to purge homepage and their pagination. rocket_clean_home( $lang ); // Purge home feeds (blog & comments). rocket_clean_home_feeds(); /** * URLs cache files to remove after cache files related with the post are deleted * * @param array $purge_urls URLs cache files to remove * @param WP_Post $post The post object * @returns array $purge_urls URLs cache files to remove */ $purge_urls = (array) apply_filters( 'after_rocket_clean_post_urls', $purge_urls, $post ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals /** * Fires after cache files related with the post are deleted * * @since 1.3.0 * * @param WP_Post $post The post object * @param array $purge_urls URLs cache files to remove * @param string $lang The post language */ do_action( 'after_rocket_clean_post', $post, $purge_urls, $lang ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound } add_action( 'pre_post_update', 'rocket_clean_post_cache_on_status_change', 10, 2 ); /** * Add pattern to clean files of connected users * * @since 2.0 * * @param array $urls An array of URLs to clean. * @return array An array of pattern to use for clearing the cache */ function rocket_clean_files_users( $urls ) { $pattern_urls = []; foreach ( $urls as $url ) { $parse_url = get_rocket_parse_url( $url ); $pattern_urls[] = $parse_url['scheme'] . '://' . $parse_url['host'] . '*' . $parse_url['path']; } return $pattern_urls; } add_filter( 'rocket_clean_files', 'rocket_clean_files_users' ); /** * Return all translated version of a post when qTranslate is used. * Use the "rocket_post_purge_urls" filter to insert URLs of traduction post. * * @since 1.3.5 * * @param array $urls An array of URLs to clean. * @return array Updated array of URLs to clean */ function rocket_post_purge_urls_for_qtranslate( $urls ) { global $q_config; if ( ! $urls ) { return []; } $i18n_plugin = rocket_has_i18n(); if ( 'qtranslate' !== $i18n_plugin && 'qtranslate-x' !== $i18n_plugin ) { return $urls; } // Get all languages. $enabled_languages = $q_config['enabled_languages']; // Remove default language. $enabled_languages = array_diff( $enabled_languages, [ $q_config['default_language'] ] ); // Add translate URLs. foreach ( $urls as $url ) { foreach ( $enabled_languages as $lang ) { if ( 'qtranslate' === $i18n_plugin ) { $urls[] = qtrans_convertURL( $url, $lang, true ); } elseif ( 'qtranslate-x' === $i18n_plugin ) { $urls[] = qtranxf_convertURL( $url, $lang, true ); } } } return $urls; } add_filter( 'rocket_post_purge_urls', 'rocket_post_purge_urls_for_qtranslate' ); /** * Purge Cache file System in Admin Bar * * @since 1.3.0 Compatibility with WPML * @since 1.0 */ function do_admin_post_rocket_purge_cache() { // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals if ( isset( $_GET['type'], $_GET['_wpnonce'] ) ) { $type_raw = sanitize_key( $_GET['type'] ); $type_array = explode( '-', $type_raw ); $type = $type_array[0]; $id = isset( $type_array[1] ) && is_numeric( $type_array[1] ) ? absint( $type_array[1] ) : 0; $taxonomy = isset( $_GET['taxonomy'] ) ? sanitize_title( wp_unslash( $_GET['taxonomy'] ) ) : ''; $url = ''; if ( ! wp_verify_nonce( sanitize_key( $_GET['_wpnonce'] ), 'purge_cache_' . $type_raw ) ) { wp_nonce_ays( '' ); return; } if ( ! current_user_can( 'rocket_purge_cache' ) ) { return; } switch ( $type ) { // Clear all cache domain. case 'all': set_transient( 'rocket_clear_cache', 'all', HOUR_IN_SECONDS ); // Remove all cache files. $lang = isset( $_GET['lang'] ) && 'all' !== $_GET['lang'] ? sanitize_key( $_GET['lang'] ) : ''; // Remove all cache files. rocket_clean_domain( $lang ); if ( '' === $lang ) { // Remove all minify cache files. rocket_clean_minify(); rocket_clean_cache_busting(); // Generate a new random key for minify cache file. $options = get_option( WP_ROCKET_SLUG ); $options['minify_css_key'] = create_rocket_uniqid(); $options['minify_js_key'] = create_rocket_uniqid(); remove_all_filters( 'update_option_' . WP_ROCKET_SLUG ); update_option( WP_ROCKET_SLUG, $options ); } if ( get_rocket_option( 'manual_preload' ) && ( ! defined( 'WP_ROCKET_DEBUG' ) || ! WP_ROCKET_DEBUG ) ) { $home_url = get_rocket_i18n_home_url( $lang ); /** * Filters the arguments for the preload request being triggered after clearing the cache. * * @since 3.4 * * @param array $args Request arguments. */ $args = (array) apply_filters( 'rocket_preload_after_purge_cache_request_args', [ 'blocking' => false, 'timeout' => 0.01, 'user-agent' => 'WP Rocket/Homepage_Preload_After_Purge_Cache', 'sslverify' => apply_filters( 'https_local_ssl_verify', false ), // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals ] ); wp_safe_remote_get( $home_url, $args ); /** * Fires after automatically preloading the homepage, which occurs after purging the cache. * * @since 3.5 * * @param string $home_url URL to the homepage being preloaded. * @param string $lang The lang of the homepage. * @param array $args Arguments used for the preload request. */ do_action( 'rocket_after_preload_after_purge_cache', $home_url, $lang, $args ); } rocket_dismiss_box( 'rocket_warning_plugin_modification' ); rocket_renew_box( 'preload_notice' ); break; // Clear terms, homepage and other files associated at current post in back-end. case 'post': rocket_clean_post( $id ); set_transient( 'rocket_clear_cache', 'post', HOUR_IN_SECONDS ); break; // Clear a specific term. case 'term': rocket_clean_term( $id, $taxonomy ); set_transient( 'rocket_clear_cache', 'term', HOUR_IN_SECONDS ); break; // Clear a specific user. case 'user': rocket_clean_user( $id ); set_transient( 'rocket_clear_cache', 'user', HOUR_IN_SECONDS ); break; // Clear cache file of the current page in front-end. case 'url': $url = wp_get_referer(); if ( 0 !== strpos( $url, 'http' ) ) { $parse_url = get_rocket_parse_url( untrailingslashit( home_url() ) ); $url = $parse_url['scheme'] . '://' . $parse_url['host'] . $url; } if ( home_url( '/' ) === $url ) { rocket_clean_home(); } else { rocket_clean_files( $url ); } break; default: wp_nonce_ays( '' ); return; } /** * Fires after the cache is cleared. * * @since 3.6 * * @param string $type Type of cache clearance: 'all', 'post', 'term', 'user', 'url'. * @param int $id The post ID, term ID, or user ID being cleared. 0 when $type is not 'post', 'term', or 'user'. * @param string $taxonomy The taxonomy the term being cleared belong to. '' when $type is not 'term'. * @param string $url The URL being cleared. '' when $type is not 'url'. */ do_action( 'rocket_purge_cache', $type, $id, $taxonomy, $url ); wp_safe_redirect( esc_url_raw( wp_get_referer() ) ); rocket_get_constant( 'WP_ROCKET_IS_TESTING', false ) ? wp_die() : exit; } } add_action( 'admin_post_purge_cache', 'do_admin_post_rocket_purge_cache' ); /** * Clean the cache when the current theme is updated. * * @param WP_Upgrader $wp_upgrader WP_Upgrader instance. * @param array $hook_extra Array of bulk item update data. */ function rocket_clean_cache_theme_update( $wp_upgrader, $hook_extra ) { if ( rocket_is_importing() ) { return; } if ( ! isset( $hook_extra['action'] ) || 'update' !== $hook_extra['action'] ) { return; } if ( ! isset( $hook_extra['type'] ) || 'theme' !== $hook_extra['type'] ) { return; } if ( ! isset( $hook_extra['themes'] ) || ! is_array( $hook_extra['themes'] ) ) { return; } $current_theme = wp_get_theme(); $themes = [ $current_theme->get_template(), // Parent theme. $current_theme->get_stylesheet(), // Child theme. ]; // Bail out if the current theme or its parent is not updating. if ( empty( array_intersect( $hook_extra['themes'], $themes ) ) ) { return; } rocket_clean_domain(); } add_action( 'upgrader_process_complete', 'rocket_clean_cache_theme_update', 10, 2 ); // When a theme is updated. /** * Purge WP Rocket cache on Slug / Permalink change. * * @since 3.4.2 * * @param int $post_id The post ID. * @param array $post_data Array of unslashed post data. */ function rocket_clean_post_cache_on_slug_change( $post_id, $post_data ) { if ( rocket_is_importing() ) { return; } // Bail out if the post status is draft, pending or auto-draft. if ( in_array( get_post_field( 'post_status', $post_id ), [ 'draft', 'pending', 'auto-draft', 'trash' ], true ) ) { return; } $post_name = get_post_field( 'post_name', $post_id ); // Bail out if the slug hasn't changed. if ( $post_name === $post_data['post_name'] ) { return; } // Bail out if the old slug has changed, but is empty. if ( empty( $post_name ) ) { return; } rocket_clean_files( get_the_permalink( $post_id ) ); } add_action( 'pre_post_update', 'rocket_clean_post_cache_on_slug_change', PHP_INT_MAX, 2 ); Nettoyage vapeur punaise de lit - Ecolavage-Clermont

Nettoyage vapeur punaise de lit

Les punaises de lit sont un problème de plus en plus répandu dans les foyers du monde entier. Elles sont non seulement désagréables, mais elles peuvent aussi causer des démangeaisons et des irritations cutanées. Face à ce fléau, de nombreuses méthodes de traitement ont été proposées, dont le nettoyage vapeur. Mais est-ce réellement efficace ? Découvrons-le dans cet article.

Qu'est-ce que le nettoyage vapeur contre les punaises de lit ?

Le nettoyage vapeur est une méthode de nettoyage qui utilise de la vapeur d’eau pour éliminer la saleté, les bactéries et les parasites présents sur les surfaces. Cette technique est de plus en plus populaire en raison de son efficacité et de son caractère écologique.

Avantages du Nettoyage Vapeur

  • Élimination des bactéries et des germes : La vapeur d’eau chaude peut tuer jusqu’à 99,9 % des bactéries et des germes présents sur les surfaces.
  • Pas de produits chimiques agressifs : Contrairement à certains produits chimiques utilisés dans les insecticides, le nettoyage vapeur n’utilise que de l’eau, ce qui le rend plus respectueux de l’environnement et de la santé humaine.
  • Polyvalence : Le nettoyage vapeur peut être utilisé sur une variété de surfaces, y compris les tissus, les matelas, les tapis, les meubles et les murs.

Le Nettoyage Vapeur contre les Punaises de Lit : Efficacité

Maintenant que nous avons examiné les avantages du nettoyage vapeur, voyons comment il se mesure à l’élimination des punaises de lit.

Mécanisme d'Action

Le nettoyage vapeur fonctionne en chauffant de l’eau à des températures élevées pour produire de la vapeur. Cette vapeur est ensuite dirigée vers les zones infestées par les punaises de lit, où elle pénètre dans les crevasses et les fissures, tuant les punaises, les œufs et les larves au contact.

Efficacité

Le nettoyage vapeur peut être efficace pour tuer les punaises de lit et leurs œufs s’il est correctement réalisé. Cependant, il est important de noter que le nettoyage vapeur ne doit pas être la seule méthode utilisée pour traiter une infestation de punaises de lit. Il doit être combiné avec d’autres techniques, telles que l’utilisation d’insecticides et le lavage à haute température des vêtements et du linge de lit, pour obtenir les meilleurs résultats. La vapeur permet de tuer les oeufs de punaise lit

Limitations

Bien que le nettoyage vapeur puisse être efficace, il peut ne pas éliminer complètement une infestation de punaises de lit en raison de leur capacité à se cacher dans de petites fissures et crevasses. De plus, certaines punaises de lit peuvent développer une résistance à la chaleur, ce qui rend le nettoyage vapeur moins efficace dans ces cas.

Contre les punaises de lit : Vapeur sèche ou vapeur humide ?

Lorsqu’il s’agit de lutter contre les punaises de lit avec un nettoyeur vapeur, il est important de choisir entre la vapeur sèche et la vapeur humide. La vapeur sèche est produite à une température plus élevée, ce qui la rend plus efficace pour tuer les punaises de lit et leurs œufs au contact. En revanche, la vapeur humide contient plus d’humidité et peut être plus pénétrante, mais elle peut ne pas atteindre les températures nécessaires pour tuer complètement les punaises de lit. Il est donc recommandé d’utiliser la vapeur sèche pour un traitement efficace contre les punaises de lit.

nettoyage vapeur punaise de lit

Conclusion

En conclusion, le nettoyage vapeur peut être une méthode efficace pour éliminer les punaises de lit, en particulier lorsqu’il est combiné avec d’autres techniques de traitement. Cependant, il est important de comprendre ses limites et de consulter un professionnel en cas d’infestation sévère. Pour en savoir plus cliquez ici