Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: default_site_option_{$option}

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 3 times in this file.

Line Code
2074            * @since 3.4.0
2075            * @since 4.4.0 The `$option` parameter was added.
2076            * @since 4.7.0 The `$network_id` parameter was added.
2077            *
2078            * @param mixed  $default_value The value to return if the site option does not exist
2079            *                              in the database.
2080            * @param string $option        Option name.
2081            * @param int    $network_id    ID of the network.
2082            */
2083           return apply_filters( "default_site_option_{$option}", $default_value, $option, $network_id );
2084      }
2085
2086      if ( ! is_multisite() ) {
2087           /** This filter is documented in wp-includes/option.php */
2088           $default_value = apply_filters( 'default_site_option_' . $option, $default_value, $option, $network_id );
2089           $value         = get_option( $option, $default_value );
2090      } else {
2091           $cache_key = "$network_id:$option";
2092           $value     = wp_cache_get( $cache_key, 'site-options' );
2093
2094           if ( ! isset( $value ) || false === $value ) {
2095                $row = $wpdb->get_row( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $network_id ) );
2096
2097                // Has to be get_row() instead of get_var() because of funkiness with 0, false, null values.
 
Line Code
2102                } else {
2103                     if ( ! is_array( $notoptions ) ) {
2104                          $notoptions = array();
2105                     }
2106
2107                     $notoptions[ $option ] = true;
2108                     wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
2109
2110                     /** This filter is documented in wp-includes/option.php */
2111                     $value = apply_filters( 'default_site_option_' . $option, $default_value, $option, $network_id );
2112                }
2113           }
2114      }
2115
2116      if ( ! is_array( $notoptions ) ) {
2117           $notoptions = array();
2118           wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
2119      }
2120