wp_font_dir()WP 6.5.0

Получает путь и УРЛ текущей папки шрифтов.

Папка для загрузки шрифтов по умолчанию находится тут: wp-content/uploads/fonts.

Шрифты используются в theme.json для кастомизации шрифтов в блок-редакторе.

Более быстрый аналог этой функции: wp_get_font_dir().

Для работы со шрифтами существуют классы: WP_Font_Library{} и WP_Font_Face{}.

Смотрите также: wp_upload_dir().

Работает на основе: wp_upload_dir()

Хуков нет.

Возвращает

Массив. Массив данных о каталоге шрифтов:

Array (
	[path]    => /home/user/www/example.com/wp-content/uploads/fonts
	[url]     => https://example.com/wp-content/uploads/fonts
	[subdir]  =>
	[basedir] => /home/user/www/example.com/wp-content/uploads/fonts
	[baseurl] => https://example.com/wp-content/uploads/fonts
	[error]   =>
)

где:

  • path - путь до каталога шрифтов.
  • url - УРЛ каталога шрифтов.
  • subdir - не используется для шрифтов.
  • basedir - тоже что и path (не используется для шрифтов).
  • baseurl - тоже что и url (не используется для шрифтов).
  • error - в случае ошибки при получении данных элемент массива error будет равен true.

Использование

wp_font_dir( $create_dir );
$create_dir(true|false)
Нужно ли проверять и создавать папку для загрузок если её нет?
По умолчанию: true

Примеры

0

#1 Демо

Получим данные о папке шрифтов:

$font_dir = wp_font_dir();

print_r( $font_dir );

/*
Array (
	[path]    => /home/user/www/example.com/wp-content/uploads/fonts
	[url]     => https://example.com/wp-content/uploads/fonts
	[subdir]  =>
	[basedir] => /home/user/www/example.com/wp-content/uploads/fonts
	[baseurl] => https://example.com/wp-content/uploads/fonts
	[error]   =>
)
*/

Список изменений

С версии 6.5.0 Введена.

Код wp_font_dir() WP 6.9

function wp_font_dir( $create_dir = true ) {
	/*
	 * Allow extenders to manipulate the font directory consistently.
	 *
	 * Ensures the upload_dir filter is fired both when calling this function
	 * directly and when the upload directory is filtered in the Font Face
	 * REST API endpoint.
	 */
	add_filter( 'upload_dir', '_wp_filter_font_directory' );
	$font_dir = wp_upload_dir( null, $create_dir, false );
	remove_filter( 'upload_dir', '_wp_filter_font_directory' );
	return $font_dir;
}