pre_option_(option)
Filters the value of an existing option before it is retrieved.
The dynamic portion of the hook name, $option, refers to the option name.
Returning a truthy value from the filter will effectively short-circuit retrieval and return the passed value instead.
Usage
add_filter( 'pre_option_(option)', 'wp_kama_pre_option_filter', 10, 3 ); /** * Function for `pre_option_(option)` filter-hook. * * @param mixed $pre_option The value to return instead of the option value. This differs from `$default`, which is used as the fallback value in the event the option doesn't exist elsewhere in get_option(). * @param string $option Option name. * @param mixed $default The fallback value to return if the option does not exist. * * @return mixed */ function wp_kama_pre_option_filter( $pre_option, $option, $default ){ // filter... return $pre_option; }
- $pre_option(mixed)
- The value to return instead of the option value. This differs from $default, which is used as the fallback value in the event the option doesn't exist elsewhere in get_option().
Default: false (to skip past the short-circuit) - $option(string)
- Option name.
- $default(mixed)
- The fallback value to return if the option does not exist.
Default: false
Changelog
Since 1.5.0 | Introduced. |
Since 4.4.0 | The $option parameter was added. |
Since 4.9.0 | The $default parameter was added. |
Where the hook is called
wp-includes/option.php 132
$pre = apply_filters( "pre_option_{$option}", false, $option, $default );
Where the hook is used in WordPress
wp-admin/includes/bookmark.php 339
add_filter( 'pre_option_link_manager_enabled', '__return_true', 100 );
wp-admin/includes/bookmark.php 341
remove_filter( 'pre_option_link_manager_enabled', '__return_true', 100 );
wp-admin/options-discussion.php 299
add_filter( 'pre_option_show_avatars', '__return_true', 100 );
wp-admin/options-discussion.php 309
remove_filter( 'pre_option_show_avatars', '__return_true', 100 );
wp-includes/class-wp-customize-manager.php 724
remove_filter( 'pre_option_template_root', array( $this, 'get_template_root' ) );
wp-includes/class-wp-customize-manager.php 723
remove_filter( 'pre_option_stylesheet_root', array( $this, 'get_stylesheet_root' ) );
wp-includes/class-wp-customize-manager.php 720
remove_filter( 'pre_option_template', array( $this, 'get_template' ) );
wp-includes/class-wp-customize-manager.php 719
remove_filter( 'pre_option_stylesheet', array( $this, 'get_stylesheet' ) );
wp-includes/class-wp-customize-manager.php 716
remove_filter( 'pre_option_current_theme', array( $this, 'current_theme' ) );
wp-includes/class-wp-customize-manager.php 686
add_filter( 'pre_option_template_root', array( $this, 'get_template_root' ) );
wp-includes/class-wp-customize-manager.php 685
add_filter( 'pre_option_stylesheet_root', array( $this, 'get_stylesheet_root' ) );
wp-includes/class-wp-customize-manager.php 682
add_filter( 'pre_option_template', array( $this, 'get_template' ) );
wp-includes/class-wp-customize-manager.php 681
add_filter( 'pre_option_stylesheet', array( $this, 'get_stylesheet' ) );
wp-includes/class-wp-customize-manager.php 678
add_filter( 'pre_option_current_theme', array( $this, 'current_theme' ) );
wp-includes/class-wp-customize-setting.php 378
add_filter( "pre_option_{$id_base}", array( $this, '_preview_filter' ) );
wp-includes/class-wp-customize-widgets.php 2115
add_filter( "pre_option_{$option_name}", array( $this, 'capture_filter_pre_get_option' ) );
wp-includes/class-wp-customize-widgets.php 2157
remove_filter( "pre_option_{$option_name}", array( $this, 'capture_filter_pre_get_option' ) );
wp-includes/default-filters.php 459
add_filter( 'pre_option_gmt_offset', 'wp_timezone_override_offset' );
wp-includes/default-filters.php 465
add_filter( 'pre_option_embed_autourls', '__return_true' );