Changeset 46220 for trunk/src/wp-includes/class-wp-widget-factory.php
- Timestamp:
- 09/20/2019 10:33:13 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/class-wp-widget-factory.php
r42343 r46220 57 57 58 58 /** 59 * Hashes an object, doing fallback of `spl_object_hash()` if not available.60 *61 * This can be eliminated in favor of straight spl_object_hash() when 5.362 * is the minimum requirement for PHP.63 *64 * @since 4.6.065 *66 * @param WP_Widget $widget Widget.67 * @return string Object hash.68 */69 private function hash_object( $widget ) {70 if ( function_exists( 'spl_object_hash' ) ) {71 return spl_object_hash( $widget );72 } else {73 $class_name = get_class( $widget );74 $hash = $class_name;75 if ( ! isset( $widget->_wp_widget_factory_hash_id ) ) {76 if ( ! isset( $this->hashed_class_counts[ $class_name ] ) ) {77 $this->hashed_class_counts[ $class_name ] = 0;78 }79 $this->hashed_class_counts[ $class_name ] += 1;80 $widget->_wp_widget_factory_hash_id = $this->hashed_class_counts[ $class_name ];81 }82 $hash .= ':' . $widget->_wp_widget_factory_hash_id;83 return $hash;84 }85 }86 87 /**88 59 * Registers a widget subclass. 89 60 * … … 96 67 public function register( $widget ) { 97 68 if ( $widget instanceof WP_Widget ) { 98 $this->widgets[ $this->hash_object( $widget ) ] = $widget;69 $this->widgets[ spl_object_hash( $widget ) ] = $widget; 99 70 } else { 100 71 $this->widgets[ $widget ] = new $widget(); … … 113 84 public function unregister( $widget ) { 114 85 if ( $widget instanceof WP_Widget ) { 115 unset( $this->widgets[ $this->hash_object( $widget ) ] );86 unset( $this->widgets[ spl_object_hash( $widget ) ] ); 116 87 } else { 117 88 unset( $this->widgets[ $widget ] );
Note: See TracChangeset
for help on using the changeset viewer.