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
2007            * @since 3.4.0
2008            * @since 4.4.0 The `$option` parameter was added.
2009            * @since 4.7.0 The `$network_id` parameter was added.
2010            *
2011            * @param mixed  $default_value The value to return if the site option does not exist
2012            *                              in the database.
2013            * @param string $option        Option name.
2014            * @param int    $network_id    ID of the network.
2015            */
2016           return apply_filters( "default_site_option_{$option}", $default_value, $option, $network_id );
2017      }
2018
2019      if ( ! is_multisite() ) {
2020           /** This filter is documented in wp-includes/option.php */
2021           $default_value = apply_filters( 'default_site_option_' . $option, $default_value, $option, $network_id );
2022           $value         = get_option( $option, $default_value );
2023      } else {
2024           $cache_key = "$network_id:$option";
2025           $value     = wp_cache_get( $cache_key, 'site-options' );
2026
2027           if ( ! isset( $value ) || false === $value ) {
2028                $row = $wpdb->get_row( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $network_id ) );
2029
2030                // Has to be get_row() instead of get_var() because of funkiness with 0, false, null values.
 
Line Code
2035                } else {
2036                     if ( ! is_array( $notoptions ) ) {
2037                          $notoptions = array();
2038                     }
2039
2040                     $notoptions[ $option ] = true;
2041                     wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
2042
2043                     /** This filter is documented in wp-includes/option.php */
2044                     $value = apply_filters( 'default_site_option_' . $option, $default_value, $option, $network_id );
2045                }
2046           }
2047      }
2048
2049      if ( ! is_array( $notoptions ) ) {
2050           $notoptions = array();
2051           wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
2052      }
2053