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
1274            * @since 3.4.0
1275            * @since 4.4.0 The `$option` parameter was added.
1276            * @since 4.7.0 The `$network_id` parameter was added.
1277            *
1278            * @param mixed  $default    The value to return if the site option does not exist
1279            *                           in the database.
1280            * @param string $option     Option name.
1281            * @param int    $network_id ID of the network.
1282            */
1283           return apply_filters( "default_site_option_{$option}", $default, $option, $network_id );
1284      }
1285
1286      if ( ! is_multisite() ) {
1287           /** This filter is documented in wp-includes/option.php */
1288           $default = apply_filters( 'default_site_option_' . $option, $default, $option, $network_id );
1289           $value   = get_option( $option, $default );
1290      } else {
1291           $cache_key = "$network_id:$option";
1292           $value     = wp_cache_get( $cache_key, 'site-options' );
1293
1294           if ( ! isset( $value ) || false === $value ) {
1295                $row = $wpdb->get_row( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $network_id ) );
1296
1297                // Has to be get_row() instead of get_var() because of funkiness with 0, false, null values.
 
Line Code
1301                     wp_cache_set( $cache_key, $value, 'site-options' );
1302                } else {
1303                     if ( ! is_array( $notoptions ) ) {
1304                          $notoptions = array();
1305                     }
1306                     $notoptions[ $option ] = true;
1307                     wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
1308
1309                     /** This filter is documented in wp-includes/option.php */
1310                     $value = apply_filters( 'default_site_option_' . $option, $default, $option, $network_id );
1311                }
1312           }
1313      }
1314
1315      if ( ! is_array( $notoptions ) ) {
1316           $notoptions = array();
1317           wp_cache_set( $notoptions_key, $notoptions, 'site-options' );
1318      }
1319