7.4.33 | Linux x86_64
Server128.199.10.0
Userwww-data (uid:33)
PHP7.4.33 (apache2handler)
Terminal
Upload
Files: /var/www/html/wp-includes
View: class-wp-tax-query.php
<?php /** * Taxonomy API: WP_Tax_Query class * * @package WordPress * @subpackage Taxonomy * @since 4.4.0 */ /** * Core class used to implement taxonomy queries for the Taxonomy API. * * Used for generating SQL clauses that filter a primary query according to object * taxonomy terms. * * WP_Tax_Query is a helper that allows primary query classes, such as WP_Query, to filter * their results by object metadata, by generating `JOIN` and `WHERE` subclauses to be * attached to the primary SQL query string. * * @since 3.1.0 */ #[AllowDynamicProperties] class WP_Tax_Query { /** * Array of taxonomy queries. * * See WP_Tax_Query::__construct() for information on tax query arguments. * * @since 3.1.0 * @var array */ public $queries = array(); /** * The relation between the queries. Can be one of 'AND' or 'OR'. * * @since 3.1.0 * @var string */ public $relation; /** * Standard response when the query should not return any rows. * * @since 3.2.0 * @var array<string, array<string>> */ private static $no_results = array( 'join' => array( '' ), 'where' => array( '0 = 1' ), ); /** * A flat list of table aliases used in the JOIN clauses. * * @since 4.1.0 * @var array */ protected $table_aliases = array(); /** * Terms and taxonomies fetched by this query. * * We store this data in a flat array because they are referenced in a * number of places by WP_Query. * * @since 4.1.0 * @var array */ public $queried_terms = array(); /** * Database table that where the metadata's objects are stored (eg $wpdb->users). * * @since 4.1.0 * @var string */ public $primary_table; /** * Column in 'primary_table' that represents the ID of the object. * * @since 4.1.0 * @var string */ public $primary_id_column; /** * Constructor. * * @since 3.1.0 * @since 4.1.0 Added support for `$operator` 'NOT EXISTS' and 'EXISTS' values. * * @param array $tax_query { * Array of taxonomy query clauses. * * @type string $relation Optional. The MySQL keyword used to join * the clauses of the query. Accepts 'AND', or 'OR'. Default 'AND'. * @type array ...$0 { * An array of first-order clause parameters, or another fully-formed tax query. * * @type string $taxonomy Taxonomy being queried. Optional when field=term_taxonomy_id. * @type string|int|array $terms Term or terms to filter by. * @type string $field Field to match $terms against. Accepts 'term_id', 'slug', * 'name', or 'term_taxonomy_id'. Default: 'term_id'. * @type string $operator MySQL operator to be used with $terms in the WHERE clause. * Accepts 'AND', 'IN', 'NOT IN', 'EXISTS', 'NOT EXISTS'. * Default: 'IN'. * @type bool $include_children Optional. Whether to include child terms. * Requires a $taxonomy. Default: true. * } * } */ public function __construct( $tax_query ) { if ( isset( $tax_query['relation'] ) ) { $this->relation = $this->sanitize_relation( $tax_query['relation'] ); } else { $this->relation = 'AND'; } $this->queries = $this->sanitize_query( $tax_query ); } /** * Ensures the 'tax_query' argument passed to the class constructor is well-formed. * * Ensures that each query-level clause has a 'relation' key, and that * each first-order clause contains all the necessary keys from `$defaults`. * * @since 4.1.0 * * @param array $queries Array of queries clauses. * @return array Sanitized array of query clauses. */ public function sanitize_query( $queries ) { $cleaned_query = array(); $defaults = array( 'taxonomy' => '', 'terms' => array(), 'field' => 'term_id', 'operator' => 'IN', 'include_children' => true, ); foreach ( $queries as $key => $query ) { if ( 'relation' === $key ) { $cleaned_query['relation'] = $this->sanitize_relation( $query ); // First-order clause. } elseif ( self::is_first_order_clause( $query ) ) { $cleaned_clause = array_merge( $defaults, $query ); $cleaned_clause['terms'] = (array) $cleaned_clause['terms']; $cleaned_query[] = $cleaned_clause; /* * Keep a copy of the clause in the flate * $queried_terms array, for use in WP_Query. */ if ( ! empty( $cleaned_clause['taxonomy'] ) && 'NOT IN' !== $cleaned_clause['operator'] ) { $taxonomy = $cleaned_clause['taxonomy']; if ( ! isset( $this->queried_terms[ $taxonomy ] ) ) { $this->queried_terms[ $taxonomy ] = array(); } /* * Backward compatibility: Only store the first * 'terms' and 'field' found for a given taxonomy. */ if ( ! empty( $cleaned_clause['terms'] ) && ! isset( $this->queried_terms[ $taxonomy ]['terms'] ) ) { $this->queried_terms[ $taxonomy ]['terms'] = $cleaned_clause['terms']; } if ( ! empty( $cleaned_clause['field'] ) && ! isset( $this->queried_terms[ $taxonomy ]['field'] ) ) { $this->queried_terms[ $taxonomy ]['field'] = $cleaned_clause['field']; } } // Otherwise, it's a nested query, so we recurse. } elseif ( is_array( $query ) ) { $cleaned_subquery = $this->sanitize_query( $query ); if ( ! empty( $cleaned_subquery ) ) { // All queries with children must have a relation. if ( ! isset( $cleaned_subquery['relation'] ) ) { $cleaned_subquery['relation'] = 'AND'; } $cleaned_query[] = $cleaned_subquery; } } } return $cleaned_query; } /** * Sanitizes a 'relation' operator. * * @since 4.1.0 * * @param string $relation Raw relation key from the query argument. * @return string Sanitized relation. Either 'AND' or 'OR'. */ public function sanitize_relation( $relation ) { if ( 'OR' === strtoupper( $relation ) ) { return 'OR'; } else { return 'AND'; } } /** * Determines whether a clause is first-order. * * A "first-order" clause is one that contains any of the first-order * clause keys ('terms', 'taxonomy', 'include_children', 'field', * 'operator'). An empty clause also counts as a first-order clause, * for backward compatibility. Any clause that doesn't meet this is * determined, by process of elimination, to be a higher-order query. * * @since 4.1.0 * * @param array $query Tax query arguments. * @return bool Whether the query clause is a first-order clause. */ protected static function is_first_order_clause( $query ) { return is_array( $query ) && ( empty( $query ) || array_key_exists( 'terms', $query ) || array_key_exists( 'taxonomy', $query ) || array_key_exists( 'include_children', $query ) || array_key_exists( 'field', $query ) || array_key_exists( 'operator', $query ) ); } /** * Generates SQL clauses to be appended to a main query. * * @since 3.1.0 * * @param string $primary_table Database table where the object being filtered is stored (eg wp_users). * @param string $primary_id_column ID column for the filtered object in $primary_table. * @return string[] { * Array containing JOIN and WHERE SQL clauses to append to the main query. * * @type string $join SQL fragment to append to the main JOIN clause. * @type string $where SQL fragment to append to the main WHERE clause. * } */ public function get_sql( $primary_table, $primary_id_column ) { $this->primary_table = $primary_table; $this->primary_id_column = $primary_id_column; return $this->get_sql_clauses(); } /** * Generates SQL clauses to be appended to a main query. * * Called by the public WP_Tax_Query::get_sql(), this method * is abstracted out to maintain parity with the other Query classes. * * @since 4.1.0 * * @return string[] { * Array containing JOIN and WHERE SQL clauses to append to the main query. * * @type string $join SQL fragment to append to the main JOIN clause. * @type string $where SQL fragment to append to the main WHERE clause. * } */ protected function get_sql_clauses() { /* * $queries are passed by reference to get_sql_for_query() for recursion. * To keep $this->queries unaltered, pass a copy. */ $queries = $this->queries; $sql = $this->get_sql_for_query( $queries ); if ( ! empty( $sql['where'] ) ) { $sql['where'] = ' AND ' . $sql['where']; } return $sql; } /** * Generates SQL clauses for a single query array. * * If nested subqueries are found, this method recurses the tree to * produce the properly nested SQL. * * @since 4.1.0 * * @param array $query Query to parse (passed by reference). * @param int $depth Optional. Number of tree levels deep we currently are. * Used to calculate indentation. Default 0. * @return string[] { * Array containing JOIN and WHERE SQL clauses to append to a single query array. * * @type string $join SQL fragment to append to the main JOIN clause. * @type string $where SQL fragment to append to the main WHERE clause. * } */ protected function get_sql_for_query( &$query, $depth = 0 ) { $sql_chunks = array( 'join' => array(), 'where' => array(), ); $sql = array( 'join' => '', 'where' => '', ); $indent = ''; for ( $i = 0; $i < $depth; $i++ ) { $indent .= ' '; } foreach ( $query as $key => &$clause ) { if ( 'relation' === $key ) { $relation = $query['relation']; } elseif ( is_array( $clause ) ) { // This is a first-order clause. if ( $this->is_first_order_clause( $clause ) ) { $clause_sql = $this->get_sql_for_clause( $clause, $query ); $where_count = count( $clause_sql['where'] ); if ( ! $where_count ) { $sql_chunks['where'][] = ''; } elseif ( 1 === $where_count ) { $sql_chunks['where'][] = $clause_sql['where'][0]; } else { $sql_chunks['where'][] = '( ' . implode( ' AND ', $clause_sql['where'] ) . ' )'; } $sql_chunks['join'] = array_merge( $sql_chunks['join'], $clause_sql['join'] ); // This is a subquery, so we recurse. } else { $clause_sql = $this->get_sql_for_query( $clause, $depth + 1 ); $sql_chunks['where'][] = $clause_sql['where']; $sql_chunks['join'][] = $clause_sql['join']; } } } // Filter to remove empties. $sql_chunks['join'] = array_filter( $sql_chunks['join'] ); $sql_chunks['where'] = array_filter( $sql_chunks['where'] ); if ( empty( $relation ) ) { $relation = 'AND'; } // Filter duplicate JOIN clauses and combine into a single string. if ( ! empty( $sql_chunks['join'] ) ) { $sql['join'] = implode( ' ', array_unique( $sql_chunks['join'] ) ); } // Generate a single WHERE clause with proper brackets and indentation. if ( ! empty( $sql_chunks['where'] ) ) { $sql['where'] = '( ' . "\n " . $indent . implode( ' ' . "\n " . $indent . $relation . ' ' . "\n " . $indent, $sql_chunks['where'] ) . "\n" . $indent . ')'; } return $sql; } /** * Generates SQL JOIN and WHERE clauses for a "first-order" query clause. * * @since 4.1.0 * * @global wpdb $wpdb The WordPress database abstraction object. * * @param array $clause Query clause (passed by reference). * @param array $parent_query Parent query array. * @return array { * Array containing JOIN and WHERE SQL clauses to append to a first-order query. * * @type string[] $join Array of SQL fragments to append to the main JOIN clause. * @type string[] $where Array of SQL fragments to append to the main WHERE clause. * } */ public function get_sql_for_clause( &$clause, $parent_query ) { global $wpdb; $sql = array( 'where' => array(), 'join' => array(), ); $join = ''; $where = ''; $this->clean_query( $clause ); if ( is_wp_error( $clause ) ) { return self::$no_results; } $terms = $clause['terms']; $operator = strtoupper( $clause['operator'] ); if ( 'IN' === $operator ) { if ( empty( $terms ) ) { return self::$no_results; } $terms = implode( ',', $terms ); /* * Before creating another table join, see if this clause has a * sibling with an existing join that can be shared. */ $alias = $this->find_compatible_table_alias( $clause, $parent_query ); if ( false === $alias ) { $i = count( $this->table_aliases ); $alias = $i ? 'tt' . $i : $wpdb->term_relationships; // Store the alias as part of a flat array to build future iterators. $this->table_aliases[] = $alias; // Store the alias with this clause, so later siblings can use it. $clause['alias'] = $alias; $join .= " LEFT JOIN $wpdb->term_relationships"; $join .= $i ? " AS $alias" : ''; $join .= " ON ($this->primary_table.$this->primary_id_column = $alias.object_id)"; } $where = "$alias.term_taxonomy_id $operator ($terms)"; } elseif ( 'NOT IN' === $operator ) { if ( empty( $terms ) ) { return $sql; } $terms = implode( ',', $terms ); $where = "$this->primary_table.$this->primary_id_column NOT IN ( SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id IN ($terms) )"; } elseif ( 'AND' === $operator ) { if ( empty( $terms ) ) { return $sql; } $num_terms = count( $terms ); $terms = implode( ',', $terms ); $where = "( SELECT COUNT(1) FROM $wpdb->term_relationships WHERE term_taxonomy_id IN ($terms) AND object_id = $this->primary_table.$this->primary_id_column ) = $num_terms"; } elseif ( 'NOT EXISTS' === $operator || 'EXISTS' === $operator ) { $where = $wpdb->prepare( "$operator ( SELECT 1 FROM $wpdb->term_relationships INNER JOIN $wpdb->term_taxonomy ON $wpdb->term_taxonomy.term_taxonomy_id = $wpdb->term_relationships.term_taxonomy_id WHERE $wpdb->term_taxonomy.taxonomy = %s AND $wpdb->term_relationships.object_id = $this->primary_table.$this->primary_id_column )", $clause['taxonomy'] ); } $sql['join'][] = $join; $sql['where'][] = $where; return $sql; } /** * Identifies an existing table alias that is compatible with the current query clause. * * We avoid unnecessary table joins by allowing each clause to look for * an existing table alias that is compatible with the query that it * needs to perform. * * An existing alias is compatible if (a) it is a sibling of `$clause` * (ie, it's under the scope of the same relation), and (b) the combination * of operator and relation between the clauses allows for a shared table * join. In the case of WP_Tax_Query, this only applies to 'IN' * clauses that are connected by the relation 'OR'. * * @since 4.1.0 * * @param array $clause Query clause. * @param array $parent_query Parent query of $clause. * @return string|false Table alias if found, otherwise false. */ protected function find_compatible_table_alias( $clause, $parent_query ) { $alias = false; // Confidence check. Only IN queries use the JOIN syntax. if ( ! isset( $clause['operator'] ) || 'IN' !== $clause['operator'] ) { return $alias; } // Since we're only checking IN queries, we're only concerned with OR relations. if ( ! isset( $parent_query['relation'] ) || 'OR' !== $parent_query['relation'] ) { return $alias; } $compatible_operators = array( 'IN' ); foreach ( $parent_query as $sibling ) { if ( ! is_array( $sibling ) || ! $this->is_first_order_clause( $sibling ) ) { continue; } if ( empty( $sibling['alias'] ) || empty( $sibling['operator'] ) ) { continue; } // The sibling must both have compatible operator to share its alias. if ( in_array( strtoupper( $sibling['operator'] ), $compatible_operators, true ) ) { $alias = preg_replace( '/\W/', '_', $sibling['alias'] ); break; } } return $alias; } /** * Validates a single query. * * @since 3.2.0 * * @param array $query The single query. Passed by reference. */ private function clean_query( &$query ) { if ( empty( $query['taxonomy'] ) ) { if ( 'term_taxonomy_id' !== $query['field'] ) { $query = new WP_Error( 'invalid_taxonomy', __( 'Invalid taxonomy.' ) ); return; } // So long as there are shared terms, 'include_children' requires that a taxonomy is set. $query['include_children'] = false; } elseif ( ! taxonomy_exists( $query['taxonomy'] ) ) { $query = new WP_Error( 'invalid_taxonomy', __( 'Invalid taxonomy.' ) ); return; } if ( 'slug' === $query['field'] || 'name' === $query['field'] ) { $query['terms'] = array_unique( (array) $query['terms'] ); } else { $query['terms'] = wp_parse_id_list( $query['terms'] ); } if ( is_taxonomy_hierarchical( $query['taxonomy'] ) && $query['include_children'] ) { $this->transform_query( $query, 'term_id' ); if ( is_wp_error( $query ) ) { return; } $children = array(); foreach ( $query['terms'] as $term ) { $children = array_merge( $children, get_term_children( $term, $query['taxonomy'] ) ); $children[] = $term; } $query['terms'] = $children; } $this->transform_query( $query, 'term_taxonomy_id' ); } /** * Transforms a single query, from one field to another. * * Operates on the `$query` object by reference. In the case of error, * `$query` is converted to a WP_Error object. * * @since 3.2.0 * * @param array $query The single query. Passed by reference. * @param string $resulting_field The resulting field. Accepts 'slug', 'name', 'term_taxonomy_id', * or 'term_id'. Default 'term_id'. */ public function transform_query( &$query, $resulting_field ) { if ( empty( $query['terms'] ) ) { return; } if ( $query['field'] === $resulting_field ) { return; } $resulting_field = sanitize_key( $resulting_field ); // Empty 'terms' always results in a null transformation. $terms = array_filter( $query['terms'] ); if ( empty( $terms ) ) { $query['terms'] = array(); $query['field'] = $resulting_field; return; } $args = array( 'get' => 'all', 'number' => 0, 'taxonomy' => $query['taxonomy'], 'update_term_meta_cache' => false, 'orderby' => 'none', ); // Term query parameter name depends on the 'field' being searched on. switch ( $query['field'] ) { case 'slug': $args['slug'] = $terms; break; case 'name': $args['name'] = $terms; break; case 'term_taxonomy_id': $args['term_taxonomy_id'] = $terms; break; default: $args['include'] = wp_parse_id_list( $terms ); break; } if ( ! is_taxonomy_hierarchical( $query['taxonomy'] ) ) { $args['number'] = count( $terms ); } $term_query = new WP_Term_Query(); $term_list = $term_query->query( $args ); if ( is_wp_error( $term_list ) ) { $query = $term_list; return; } if ( 'AND' === $query['operator'] && count( $term_list ) < count( $query['terms'] ) ) { $query = new WP_Error( 'inexistent_terms', __( 'Inexistent terms.' ) ); return; } $query['terms'] = wp_list_pluck( $term_list, $resulting_field ); $query['field'] = $resulting_field; } }
NameSizeActions
ID3/--
IXR/--
PHPMailer/--
Requests/--
SimplePie/--
Text/--
abilities-api/--
abilities-api.php23.8KView Edit Del
abilities.php7.8KView Edit Del
admin-bar.php38.4KView Edit Del
ai-client/--
ai-client.php2.5KView Edit Del
assets/--
atomlib.php11.9KView Edit Del
author-template.php19.4KView Edit Del
block-bindings/--
block-bindings.php7.3KView Edit Del
block-editor.php28.1KView Edit Del
block-i18n.json316BView Edit Del
block-patterns/--
block-patterns.php15.2KView Edit Del
block-supports/--
block-template-utils.php61.3KView Edit Del
block-template.php17.8KView Edit Del
blocks/--
blocks.php116.6KView Edit Del
bookmark-template.php12.5KView Edit Del
bookmark.php15.1KView Edit Del
build/--
cache-compat.php10.8KView Edit Del
cache.php13.2KView Edit Del
canonical.php33.8KView Edit Del
capabilities.php42.6KView Edit Del
category-template.php55.6KView Edit Del
category.php12.5KView Edit Del
certificates/--
class-IXR.php2.6KView Edit Del
class-avif-info.php29.3KView Edit Del
class-feed.php539BView Edit Del
class-http.php367BView Edit Del
class-json.php42.7KView Edit Del
class-oembed.php401BView Edit Del
class-phpass.php6.6KView Edit Del
class-phpmailer.php664BView Edit Del
class-pop3.php20.6KView Edit Del
class-requests.php2.2KView Edit Del
class-simplepie.php453BView Edit Del
class-smtp.php457BView Edit Del
class-snoopy.php36.8KView Edit Del
class-walker-category-dropdown.php2.4KView Edit Del
class-walker-category.php8.3KView Edit Del
class-walker-comment.php13.9KView Edit Del
class-walker-nav-menu.php11.8KView Edit Del
class-walker-page-dropdown.php2.6KView Edit Del
class-walker-page.php7.4KView Edit Del
class-wp-admin-bar.php17.6KView Edit Del
class-wp-ajax-response.php5.1KView Edit Del
class-wp-application-passwords.php16.7KView Edit Del
class-wp-block-bindings-registry.php8.1KView Edit Del
class-wp-block-bindings-source.php2.9KView Edit Del
class-wp-block-editor-context.php1.3KView Edit Del
class-wp-block-list.php4.6KView Edit Del
class-wp-block-metadata-registry.php11.6KView Edit Del
class-wp-block-parser-block.php2.5KView Edit Del
class-wp-block-parser-frame.php1.9KView Edit Del
class-wp-block-parser.php11.3KView Edit Del
class-wp-block-pattern-categories-registry.php4.3KView Edit Del
class-wp-block-patterns-registry.php10.1KView Edit Del
class-wp-block-processor.php68.3KView Edit Del
class-wp-block-styles-registry.php6.3KView Edit Del
class-wp-block-supports.php6.4KView Edit Del
class-wp-block-template.php2KView Edit Del
class-wp-block-templates-registry.php6.9KView Edit Del
class-wp-block-type-registry.php4.9KView Edit Del
class-wp-block-type.php16.8KView Edit Del
class-wp-block.php24.1KView Edit Del
class-wp-classic-to-block-menu-converter.php3.9KView Edit Del
class-wp-comment-query.php47.5KView Edit Del
class-wp-comment.php9.2KView Edit Del
class-wp-connector-registry.php14.1KView Edit Del
class-wp-customize-control.php25.5KView Edit Del
class-wp-customize-manager.php198.1KView Edit Del
class-wp-customize-nav-menus.php56.6KView Edit Del
class-wp-customize-panel.php10.5KView Edit Del
class-wp-customize-section.php10.9KView Edit Del
class-wp-customize-setting.php29.3KView Edit Del
class-wp-customize-widgets.php70.9KView Edit Del
class-wp-date-query.php35.1KView Edit Del
class-wp-dependencies.php16.7KView Edit Del
class-wp-dependency.php2.6KView Edit Del
class-wp-duotone.php40KView Edit Del
class-wp-editor.php70.5KView Edit Del
class-wp-embed.php15.5KView Edit Del
class-wp-error.php7.3KView Edit Del
class-wp-exception.php253BView Edit Del
class-wp-fatal-error-handler.php8KView Edit Del
class-wp-feed-cache-transient.php3.2KView Edit Del
class-wp-feed-cache.php969BView Edit Del
class-wp-hook.php16.2KView Edit Del
class-wp-http-cookie.php7.1KView Edit Del
class-wp-http-curl.php13KView Edit Del
class-wp-http-encoding.php6.5KView Edit Del
class-wp-http-ixr-client.php3.4KView Edit Del
class-wp-http-proxy.php5.8KView Edit Del
class-wp-http-requests-hooks.php2KView Edit Del
class-wp-http-requests-response.php4.1KView Edit Del
class-wp-http-response.php2.9KView Edit Del
class-wp-http-streams.php16.4KView Edit Del
class-wp-http.php40.7KView Edit Del
class-wp-icons-registry.php7.7KView Edit Del
class-wp-image-editor-gd.php20.2KView Edit Del
class-wp-image-editor-imagick.php36.1KView Edit Del
class-wp-image-editor.php17KView Edit Del
class-wp-list-util.php7.3KView Edit Del
class-wp-locale-switcher.php6.6KView Edit Del
class-wp-locale.php16.5KView Edit Del
class-wp-matchesmapregex.php1.8KView Edit Del
class-wp-meta-query.php29.8KView Edit Del
class-wp-metadata-lazyloader.php6.7KView Edit Del
class-wp-navigation-fallback.php9KView Edit Del
class-wp-network-query.php19.3KView Edit Del
class-wp-network.php12KView Edit Del
class-wp-object-cache.php17.1KView Edit Del
class-wp-oembed-controller.php6.7KView Edit Del
class-wp-oembed.php30.9KView Edit Del
class-wp-paused-extensions-storage.php4.9KView Edit Del
class-wp-phpmailer.php4.2KView Edit Del
class-wp-plugin-dependencies.php24.6KView Edit Del
class-wp-post-type.php30KView Edit Del
class-wp-post.php6.3KView Edit Del
class-wp-query.php159.5KView Edit Del
class-wp-recovery-mode-cookie-service.php6.7KView Edit Del
class-wp-recovery-mode-email-service.php10.9KView Edit Del
class-wp-recovery-mode-key-service.php4.8KView Edit Del
class-wp-recovery-mode-link-service.php3.4KView Edit Del
class-wp-recovery-mode.php11.2KView Edit Del
class-wp-rewrite.php62.2KView Edit Del
class-wp-role.php2.5KView Edit Del
class-wp-roles.php9.1KView Edit Del
class-wp-script-modules.php39.6KView Edit Del
class-wp-scripts.php35.9KView Edit Del
class-wp-session-tokens.php7.1KView Edit Del
class-wp-simplepie-file.php3.5KView Edit Del
class-wp-simplepie-sanitize-kses.php1.9KView Edit Del
class-wp-site-query.php30.7KView Edit Del
class-wp-site.php7.3KView Edit Del
class-wp-speculation-rules.php7.4KView Edit Del
class-wp-styles.php13KView Edit Del
class-wp-tax-query.php19.1KView Edit Del
class-wp-taxonomy.php18.1KView Edit Del
class-wp-term-query.php39.8KView Edit Del
class-wp-term.php5.1KView Edit Del
class-wp-text-diff-renderer-inline.php979BView Edit Del
class-wp-text-diff-renderer-table.php18.5KView Edit Del
class-wp-textdomain-registry.php10.2KView Edit Del
class-wp-theme-json-data.php1.8KView Edit Del
class-wp-theme-json-resolver.php34.9KView Edit Del
class-wp-theme-json-schema.php7.2KView Edit Del
class-wp-theme-json.php169.6KView Edit Del
class-wp-theme.php64.2KView Edit Del
class-wp-token-map.php27.9KView Edit Del
class-wp-url-pattern-prefixer.php4.7KView Edit Del
class-wp-user-meta-session-tokens.php2.9KView Edit Del
class-wp-user-query.php43.1KView Edit Del
class-wp-user-request.php2.3KView Edit Del
class-wp-user.php22.5KView Edit Del
class-wp-walker.php13KView Edit Del
class-wp-widget-factory.php3.3KView Edit Del
class-wp-widget.php18KView Edit Del
class-wp-xmlrpc-server.php210KView Edit Del
class-wp.php25.8KView Edit Del
class-wpdb.php115.9KView Edit Del
class.wp-dependencies.php373BView Edit Del
class.wp-scripts.php343BView Edit Del
class.wp-styles.php338BView Edit Del
collaboration/--
collaboration.php2.1KView Edit Del
comment-template.php100.8KView Edit Del
comment.php130.9KView Edit Del
compat-utf8.php19.1KView Edit Del
compat.php15.7KView Edit Del
connectors.php23.5KView Edit Del
cron.php43.9KView Edit Del
css/--
customize/--
date.php400BView Edit Del
default-constants.php11.1KView Edit Del
default-filters.php36.5KView Edit Del
default-widgets.php2.2KView Edit Del
deprecated.php189.4KView Edit Del
embed-template.php338BView Edit Del
embed.php38KView Edit Del
error-protection.php4KView Edit Del
feed-atom-comments.php5.4KView Edit Del
feed-atom.php3KView Edit Del
feed-rdf.php2.6KView Edit Del
feed-rss.php1.2KView Edit Del
feed-rss2-comments.php4KView Edit Del
feed-rss2.php3.7KView Edit Del
feed.php24.6KView Edit Del
fonts/--
fonts.php9.6KView Edit Del
formatting.php346.4KView Edit Del
functions.php283.5KView Edit Del
functions.wp-scripts.php20KView Edit Del
functions.wp-styles.php8.5KView Edit Del
general-template.php170.8KView Edit Del
global-styles-and-settings.php20.3KView Edit Del
html-api/--
http.php26.6KView Edit Del
https-detection.php5.7KView Edit Del
https-migration.php4.6KView Edit Del
images/--
interactivity-api/--
js/--
kses.php80.6KView Edit Del
l10n/--
l10n.php69.7KView Edit Del
link-template.php156.4KView Edit Del
load.php55.2KView Edit Del
locale.php162BView Edit Del
media-template.php61.8KView Edit Del
media.php218.5KView Edit Del
meta.php65.2KView Edit Del
ms-blogs.php25.7KView Edit Del
ms-default-constants.php4.8KView Edit Del
ms-default-filters.php6.5KView Edit Del
ms-deprecated.php21.2KView Edit Del
ms-files.php2.8KView Edit Del
ms-functions.php89.7KView Edit Del
ms-load.php19.6KView Edit Del
ms-network.php3.7KView Edit Del
ms-settings.php4.1KView Edit Del
ms-site.php40.8KView Edit Del
nav-menu-template.php25.4KView Edit Del
nav-menu.php43.2KView Edit Del
option.php102.6KView Edit Del
php-ai-client/--
php-compat/--
pluggable-deprecated.php6.2KView Edit Del
pluggable.php124.6KView Edit Del
plugin.php35.6KView Edit Del
pomo/--
post-formats.php6.9KView Edit Del
post-template.php67KView Edit Del
post-thumbnail-template.php10.6KView Edit Del
post.php289.6KView Edit Del
query.php36.2KView Edit Del
registration-functions.php200BView Edit Del
registration.php200BView Edit Del
rest-api/--
rest-api.php98.5KView Edit Del
revision.php30KView Edit Del
rewrite.php19KView Edit Del
robots-template.php5.1KView Edit Del
rss-functions.php255BView Edit Del
rss.php22.7KView Edit Del
script-loader.php159.3KView Edit Del
script-modules.php11.7KView Edit Del
session.php258BView Edit Del
shortcodes.php23.5KView Edit Del
sitemaps/--
sitemaps.php3.2KView Edit Del
sodium_compat/--
speculative-loading.php8.4KView Edit Del
spl-autoload-compat.php441BView Edit Del
style-engine/--
style-engine.php7.4KView Edit Del
taxonomy.php173KView Edit Del
template-canvas.php544BView Edit Del
template-loader.php4.2KView Edit Del
template.php36KView Edit Del
theme-compat/--
theme-i18n.json1.8KView Edit Del
theme-previews.php2.8KView Edit Del
theme-templates.php4KView Edit Del
theme.json8.8KView Edit Del
theme.php131.5KView Edit Del
update.php37.4KView Edit Del
user.php174.6KView Edit Del
utf8.php7.1KView Edit Del
vars.php6.5KView Edit Del
version.php1.1KView Edit Del
view-transitions.php602BView Edit Del
widgets/--
widgets.php69.2KView Edit Del
wp-db.php445BView Edit Del
wp-diff.php799BView Edit Del