Switch language

wpseek.com
A WordPress-centric search engine for devs and theme authors




add_option [ WordPress Function ]

add_option ( $option, $value = '', $deprecated = '', $autoload = 'yes' )
Parameters:
  • (string) $option Name of option to add. Expected to not be SQL-escaped.
  • (mixed) $value Optional. Option value, can be anything. Expected to not be SQL-escaped.
  • (mixed) $deprecated Optional. Description. Not used anymore.
  • (bool) $autoload Optional. Default is enabled. Whether to load the option when WordPress starts up.
Uses:
Returns:
  • (bool) False if option was not added and true if option was added.
Defined at:



Add a new option.

You do not need to serialize values. If the value needs to be serialized, then it will be serialized before it is inserted into the database. Remember, resources can not be serialized or added as an option.

You can create options without values and then update the values later. Existing options will not be updated and checks are performed to ensure that you aren't adding a protected WordPress option. Care should be taken to not name options the same as the ones which are protected.

Source


<?php
function add_option$option$value ''$deprecated ''$autoload 'yes' ) {
    global 
$wpdb;

    if ( !empty( 
$deprecated ) )
        
_deprecated_argument__FUNCTION__'2.3' );

    
$option trim($option);
    if ( empty(
$option) )
        return 
false;

    
wp_protect_special_option$option );

    if ( 
is_object($value) )
        
$value = clone $value;

    
$value sanitize_option$option$value );

    
// Make sure the option doesn't already exist. We can check the 'notoptions' cache before we ask for a db query
    
$notoptions wp_cache_get'notoptions''options' );
    if ( !
is_array$notoptions ) || !isset( $notoptions[$option] ) )
        if ( 
false !== get_option$option ) )
            return 
false;

    
$_value $value;
    
$value maybe_serialize$value );
    
$autoload = ( 'no' === $autoload ) ? 'no' 'yes';
    
do_action'add_option'$option$_value );
    if ( ! 
defined'WP_INSTALLING' ) ) {
        if ( 
'yes' == $autoload ) {
            
$alloptions wp_load_alloptions();
            
$alloptions[$option] = $value;
            
wp_cache_set'alloptions'$alloptions'options' );
        } else {
            
wp_cache_set$option$value'options' );
        }
    }

    
// This option exists now
    
$notoptions wp_cache_get'notoptions''options' ); // yes, again... we need it to be fresh
    
if ( is_array$notoptions ) && isset( $notoptions[$option] ) ) {
        unset( 
$notoptions[$option] );
        
wp_cache_set'notoptions'$notoptions'options' );
    }

    
$result $wpdb->query$wpdb->prepare"INSERT INTO `$wpdb->options` (`option_name`, `option_value`, `autoload`) VALUES (%s, %s, %s) ON DUPLICATE KEY UPDATE `option_name` = VALUES(`option_name`), `option_value` = VALUES(`option_value`), `autoload` = VALUES(`autoload`)"$option$value$autoload ) );

    if ( 
$result ) {
        
do_action"add_option_{$option}"$option$_value );
        
do_action'added_option'$option$_value );
        return 
true;
    }
    return 
false;
}
?>

Examples [ wp-snippets.com ]

Google Arama Sonuçlarý

Dahasý ...

0 User Note(s)

Henüz yok. Ýlk sen ol!

Yeni Ekle ...



HTML5 Powered with CSS3 / Styling, Performance & Integration, and Semantics