wppaste
WordPress

AbstractApiProvider

Since
0.2.0
Source
wp-includes/php-ai-client/src/Providers/ApiBasedImplementation/AbstractApiProvider.php:16
Base class for API-based providers.

Description

This abstract class provides URL construction utilities for providers that communicate with REST APIs. It standardizes the pattern of combining a base URL with endpoint paths.

Compatibility

WordPress
since 0.2.0
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in 2 of the 5 tracked releases, added in 0.2.0.

Methods · 2

  • baseUrl()Gets the base URL for the provider's API.
  • url()Constructs a full URL by combining the base URL with an optional path.

Source code

abstract class AbstractApiProvider extends AbstractProvider{    /**     * Gets the base URL for the provider's API.     *     * The base URL should include the protocol and domain, and may include     * the API version path (e.g., "https://api.example.com/v1").     *     * @since 0.2.0     *     * @return string The base URL for the provider's API.     */    abstract protected static function baseUrl(): string;    /**     * Constructs a full URL by combining the base URL with an optional path.     *     * This method ensures proper URL construction by:     * - Using the provider's base URL     * - Trimming leading slashes from the path to prevent double-slashes     * - Joining the base URL and path with a single forward slash     *     * @since 0.2.0     *     * @param string $path Optional path to append to the base URL. Default empty string.     * @return string The complete URL.     */    public static function url(string $path = ''): string    {        if ($path === '') {            return static::baseUrl();        }        return static::baseUrl() . '/' . ltrim($path, '/');    }}

Changelog

Introduced in 0.2.0. Unchanged from 7.0.4 through 7.1.0.

  1. 7.0.4
  2. 7.1.0

Signature, return type and hooks compared across 2 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 7.1.0 tag, from src/wp-includes/php-ai-client/src/Providers/ApiBasedImplementation/AbstractApiProvider.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.