From 5d449e074cd7af08f73577bda372c1e4d1fa3028 Mon Sep 17 00:00:00 2001
From: S H Mohanjith <moha@mohanjith.net>
Date: Wed, 4 Dec 2013 22:06:02 +0200
Subject: [PATCH] - Update site options and refresh blog details when options
are updated using update_option() - Delete site options
when options are updated using delete_option()
---
wp-includes/ms-blogs.php | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/wp-includes/ms-blogs.php b/wp-includes/ms-blogs.php
index 8d05f10..f343759 100644
a
|
b
|
function clean_blog_cache( $blog ) { |
424 | 424 | } |
425 | 425 | |
426 | 426 | /** |
| 427 | * Update site options and refresh blog details when options are updated using |
| 428 | * update_option(); |
| 429 | * |
| 430 | * @since 3.9 |
| 431 | * |
| 432 | * @param string $option The option key |
| 433 | * @param mixed $old_value The old option value |
| 434 | * @param mixed $newvalue The new option value |
| 435 | */ |
| 436 | function update_any_blog_option( $option, $old_value, $new_value ) { |
| 437 | global $wpdb; |
| 438 | |
| 439 | if ( defined( 'WP_INSTALLING' ) ) |
| 440 | return; |
| 441 | |
| 442 | wp_cache_set( $wpdb->blogid . '-' . $option . '-blog_option', $new_value, 'site-options' ); |
| 443 | if ( in_array( $option, array( 'blogname', 'siteurl', 'post_count' ) ) ) { |
| 444 | refresh_blog_details( $wpdb->blogid ); |
| 445 | } |
| 446 | } |
| 447 | add_action( 'updated_option', 'update_any_blog_option', 10, 3 ); |
| 448 | |
| 449 | /** |
| 450 | * Delete site options when options are updated using delete_option(); |
| 451 | * |
| 452 | * @since 3.9 |
| 453 | * |
| 454 | * @param string $option The option key |
| 455 | */ |
| 456 | function delete_any_blog_option( $option ) { |
| 457 | global $wpdb; |
| 458 | |
| 459 | if ( defined( 'WP_INSTALLING' ) ) |
| 460 | return; |
| 461 | |
| 462 | wp_cache_delete( $wpdb->blogid . '-' . $option . '-blog_option', 'site-options' ); |
| 463 | } |
| 464 | add_action( 'deleted_option', 'delete_any_blog_option', 10, 1 ); |
| 465 | |
| 466 | /** |
427 | 467 | * Retrieve option value for a given blog id based on name of option. |
428 | 468 | * |
429 | 469 | * If the option does not exist or does not have a value, then the return value |