钩子文档

ext2type

💡 云策文档标注

概述

ext2type 是一个 WordPress 过滤器,用于根据文件扩展名过滤文件类型。它通过一个多维数组定义扩展名与文件类型的映射关系,开发者可以修改此数组以自定义文件类型分类。

关键要点

  • ext2type 过滤器基于文件扩展名来分类文件类型,如 image、audio、video 等。
  • 参数 $ext2type 是一个多维数组,键为文件类型,值为对应的扩展名数组。
  • 此过滤器与 wp_ext2type() 函数相关,用于获取或修改扩展名类型映射。
  • 在 WordPress 2.5.0 版本中引入,是核心文件处理功能的一部分。

代码示例

return apply_filters(
    'ext2type',
    array(
        'image'       => array( 'jpg', 'jpeg', 'jpe', 'gif', 'png', 'bmp', 'tif', 'tiff', 'ico', 'heic', 'heif', 'webp', 'avif' ),
        'audio'       => array( 'aac', 'ac3', 'aif', 'aiff', 'flac', 'm3a', 'm4a', 'm4b', 'mka', 'mp1', 'mp2', 'mp3', 'ogg', 'oga', 'ram', 'wav', 'wma' ),
        'video'       => array( '3g2', '3gp', '3gpp', 'asf', 'avi', 'divx', 'dv', 'flv', 'm4v', 'mkv', 'mov', 'mp4', 'mpeg', 'mpg', 'mpv', 'ogm', 'ogv', 'qt', 'rm', 'vob', 'wmv' ),
        'document'    => array( 'doc', 'docx', 'docm', 'dotm', 'odt', 'pages', 'pdf', 'xps', 'oxps', 'rtf', 'wp', 'wpd', 'psd', 'xcf' ),
        'spreadsheet' => array( 'numbers', 'ods', 'xls', 'xlsx', 'xlsm', 'xlsb' ),
        'interactive' => array( 'swf', 'key', 'ppt', 'pptx', 'pptm', 'pps', 'ppsx', 'ppsm', 'sldx', 'sldm', 'odp' ),
        'text'        => array( 'asc', 'csv', 'tsv', 'txt' ),
        'archive'     => array( 'bz2', 'cab', 'dmg', 'gz', 'rar', 'sea', 'sit', 'sqx', 'tar', 'tgz', 'zip', '7z' ),
        'code'        => array( 'css', 'htm', 'html', 'php', 'js' ),
    )
);

📄 原文内容

Filters file type based on the extension name.

Description

See also

Parameters

$ext2typearray[]
Multi-dimensional array of file extensions types keyed by the type of file.

Source

return apply_filters(
	'ext2type',
	array(
		'image'       => array( 'jpg', 'jpeg', 'jpe', 'gif', 'png', 'bmp', 'tif', 'tiff', 'ico', 'heic', 'heif', 'webp', 'avif' ),
		'audio'       => array( 'aac', 'ac3', 'aif', 'aiff', 'flac', 'm3a', 'm4a', 'm4b', 'mka', 'mp1', 'mp2', 'mp3', 'ogg', 'oga', 'ram', 'wav', 'wma' ),
		'video'       => array( '3g2', '3gp', '3gpp', 'asf', 'avi', 'divx', 'dv', 'flv', 'm4v', 'mkv', 'mov', 'mp4', 'mpeg', 'mpg', 'mpv', 'ogm', 'ogv', 'qt', 'rm', 'vob', 'wmv' ),
		'document'    => array( 'doc', 'docx', 'docm', 'dotm', 'odt', 'pages', 'pdf', 'xps', 'oxps', 'rtf', 'wp', 'wpd', 'psd', 'xcf' ),
		'spreadsheet' => array( 'numbers', 'ods', 'xls', 'xlsx', 'xlsm', 'xlsb' ),
		'interactive' => array( 'swf', 'key', 'ppt', 'pptx', 'pptm', 'pps', 'ppsx', 'ppsm', 'sldx', 'sldm', 'odp' ),
		'text'        => array( 'asc', 'csv', 'tsv', 'txt' ),
		'archive'     => array( 'bz2', 'cab', 'dmg', 'gz', 'rar', 'sea', 'sit', 'sqx', 'tar', 'tgz', 'zip', '7z' ),
		'code'        => array( 'css', 'htm', 'html', 'php', 'js' ),
	)
);

Changelog

Version Description
2.5.0 Introduced.