Uname: Linux webm005.cluster107.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User: 6036 (villadal)
Group: 100 (users)
Disabled functions: NONE
Safe mode: On[ PHPinfo ]
//home/villadal/www/wp-content/plugins/advanced-custom-fields/////includes      ( Reset | Go to )
File Name: acf-wp-functions.php
Edit
<?php
/**
 * @package ACF
 * @author  WP Engine
 *
 * © 2025 Advanced Custom Fields (ACF®). All rights reserved.
 * "ACF" is a trademark of WP Engine.
 * Licensed under the GNU General Public License v2 or later.
 * https://www.gnu.org/licenses/gpl-2.0.html
 */

/**
 * Returns a WordPress object type.
 *
 * @date    1/4/20
 * @since   5.9.0
 *
 * @param   string $object_type    The object type (post, term, user, etc).
 * @param   string $object_subtype Optional object subtype (post type, taxonomy).
 * @return  object
 */
function acf_get_object_type$object_type$object_subtype '' ) {
    
$props = array(
        
'type'    => $object_type,
        
'subtype' => $object_subtype,
        
'name'    => '',
        
'label'   => '',
        
'icon'    => '',
    );

    
// Set unique identifier as name.
    
if ( $object_subtype ) {
        
$props['name'] = "$object_type/$object_subtype";
    } else {
        
$props['name'] = $object_type;
    }

    
// Set label and icon.
    
switch ( $object_type ) {
        case 
'post':
            if ( 
$object_subtype ) {
                
$post_type get_post_type_object$object_subtype );
                if ( 
$post_type ) {
                    
$props['label'] = $post_type->labels->name;
                    if ( 
is_string$post_type->menu_icon ) && ! preg_match'/^[\w\-]+$/'$post_type->menu_icon ) ) {
                        
$post_type->menu_icon false;
                    }
                    
$props['icon'] = acf_with_default$post_type->menu_icon'dashicons-admin-post' );
                } else {
                    return 
false;
                }
            } else {
                
$props['label'] = __'Posts''acf' );
                
$props['icon']  = 'dashicons-admin-post';
            }
            break;
        case 
'term':
            if ( 
$object_subtype ) {
                
$taxonomy get_taxonomy$object_subtype );
                if ( 
$taxonomy ) {
                    
$props['label'] = $taxonomy->labels->name;
                } else {
                    return 
false;
                }
            } else {
                
$props['label'] = __'Taxonomies''acf' );
            }
            
$props['icon'] = 'dashicons-tag';
            break;
        case 
'attachment':
            
$props['label'] = __'Attachments''acf' );
            
$props['icon']  = 'dashicons-admin-media';
            break;
        case 
'comment':
            
$props['label'] = __'Comments''acf' );
            
$props['icon']  = 'dashicons-admin-comments';
            break;
        case 
'widget':
            
$props['label'] = __'Widgets''acf' );
            
$props['icon']  = 'dashicons-screenoptions';
            break;
        case 
'menu':
            
$props['label'] = __'Menus''acf' );
            
$props['icon']  = 'dashicons-admin-appearance';
            break;
        case 
'menu_item':
            
$props['label'] = __'Menu items''acf' );
            
$props['icon']  = 'dashicons-admin-appearance';
            break;
        case 
'user':
            
$props['label'] = __'Users''acf' );
            
$props['icon']  = 'dashicons-admin-users';
            break;
        case 
'option':
            
$props['label'] = __'Options''acf' );
            
$props['icon']  = 'dashicons-admin-generic';
            break;
        case 
'block':
            
$props['label'] = __'Blocks''acf' );
            
$props['icon']  = 'dashicons-block-default';
            break;
        default:
            return 
false;
    }

    
// Convert to object.
    
$object = (object) $props;

    
/**
     * Filters the object type.
     *
     * @date    6/4/20
     * @since   5.9.0
     *
     * @param   object $object The object props.
     * @param   string $object_type The object type (post, term, user, etc).
     * @param   string $object_subtype Optional object subtype (post type, taxonomy).
     */
    
return apply_filters'acf/get_object_type'$object$object_type$object_subtype );
}

/**
 * Decodes a post_id value such as 1 or "user_1" into an array containing the type and ID.
 *
 * @date    25/1/19
 * @since   5.7.11
 *
 * @param   (int|string) $post_id The post id.
 * @return  array
 */
function acf_decode_post_id$post_id ) {
    
$type '';
    
$id   0;

    
// Interpret numeric value (123).
    
if ( is_numeric$post_id ) ) {
        
$type 'post';
        
$id   $post_id;

        
// Interpret string value ("user_123" or "option").
    
} elseif ( is_string$post_id ) ) {
        
$i strrpos$post_id'_' );
        if ( 
$i ) {
            
$type substr$post_id0$i );
            
$id   substr$post_id$i );
        } else {
            
$type $post_id;
            
$id   '';
        }

        
// Handle incorrect param type.
    
} else {
        return 
compact'type''id' );
    }

    
// Validate props based on param format.
    
$format $type '_' . ( is_numeric$id ) ? '%d' '%s' );
    switch ( 
$format ) {
        case 
'post_%d':
            
$type 'post';
            
$id   absint$id );
            break;
        case 
'term_%d':
            
$type 'term';
            
$id   absint$id );
            break;
        case 
'attachment_%d':
            
$type 'post';
            
$id   absint$id );
            break;
        case 
'comment_%d':
            
$type 'comment';
            
$id   absint$id );
            break;
        case 
'widget_%s':
        case 
'widget_%d':
            
$type 'option';
            
$id   $post_id;
            break;
        case 
'menu_%d':
            
$type 'term';
            
$id   absint$id );
            break;
        case 
'menu_item_%d':
            
$type 'post';
            
$id   absint$id );
            break;
        case 
'user_%d':
            
$type 'user';
            
$id   absint$id );
            break;
        case 
'block_%s':
        case 
'block_%d':
            
$type 'block';
            
$id   $post_id;
            break;
        case 
'option_%s':
            
$type 'option';
            
$id   $post_id;
            break;
        case 
'blog_%d':
        case 
'site_%d':
            
// Allow backwards compatibility for custom taxonomies.
            
$type taxonomy_exists$type ) ? 'term' 'blog';
            
$id   absint$id );
            break;
        case 
'woo_order_%d':
            
$type 'woo_order';
            
$id   absint$id );
            break;
        default:
            
// Check for taxonomy name.
            
if ( taxonomy_exists$type ) && is_numeric$id ) ) {
                
$type 'term';
                
$id   absint$id );
                break;
            }

            
// Treat unknown post_id format as an option.
            
$type 'option';
            
$id   $post_id;
            break;
    }

    
/**
     * Filters the decoded post_id information.
     *
     * @date    25/1/19
     * @since   5.7.11
     *
     * @param   array $props An array containing "type" and "id" information.
     * @param   (int|string) $post_id The post id.
     */
    
return apply_filters'acf/decode_post_id'compact'type''id' ), $post_id );
}

/**
 * Determine the REST base for a post type or taxonomy object. Note that this is not intended for use
 * with term or post objects but is, instead, to be used with the underlying WP_Post_Type and WP_Taxonomy
 * instances.
 *
 * @param WP_Post_Type|WP_Taxonomy $type_object
 * @return string|null
 */
function acf_get_object_type_rest_base$type_object ) {
    if ( 
$type_object instanceof WP_Post_Type || $type_object instanceof WP_Taxonomy ) {
        return ! empty( 
$type_object->rest_base ) ? $type_object->rest_base $type_object->name;
    }

    return 
null;
}

/**
 * Extract the ID of a given object/array. This supports all expected types handled by our update_fields() and
 * load_fields() callbacks.
 *
 * @param WP_Post|WP_User|WP_Term|WP_Comment|array $object
 * @return integer|mixed|null
 */
function acf_get_object_id$object ) {
    if ( 
is_object$object ) ) {
        switch ( 
get_class$object ) ) {
            case 
WP_User::class:
            case 
WP_Post::class:
                return (int) 
$object->ID;
            case 
WP_Term::class:
                return (int) 
$object->term_id;
            case 
WP_Comment::class:
                return (int) 
$object->comment_ID;
        }
    } elseif ( isset( 
$object['id'] ) ) {
        return (int) 
$object['id'];
    } elseif ( isset( 
$object['ID'] ) ) {
        return (int) 
$object['ID'];
    }

    return 
null;
}

All system for education purposes only. For more tools: Telegram @jackleet

Mr.X Private Shell

Logo
-
New File | New Folder
Command
SQL