match = ( is_callable( $callback ) ) ? $callback : null; return $this; } /** * Retrieve match handler * @return callback|null Match handler */ protected function get_match() { return $this->match; } /** * Check if valid match set */ protected function has_match() { return ( is_null( $this->match ) ) ? false : true; } /** * Match handler against URI * @param string $uri URI to check for match * @return bool TRUE if handler matches URI */ public function match( $uri, $uri_raw = null ) { $ret = false; if ( ! ! $uri && is_string( $uri ) && $this->has_match() ) { $ret = call_user_func( $this->get_match(), $uri, $uri_raw ); } return $ret; } /* Attributes */ public function set_attributes( $callback ) { $this->attributes = ( is_callable( $callback ) ) ? $callback : null; return $this; } public function get_attributes() { $ret = array(); // Callback if ( ! is_null( $this->attributes ) ) { $ret = call_user_func( $this->attributes ); } // Filter $hook = sprintf( 'content_handler_%s_attributes', $this->get_id() ); $ret = $this->util->apply_filters( $hook, $ret ); return ( is_array( $ret ) ) ? $ret : array(); } }