get_dropins

函式
get_dropins ( No parameters )
返回值
  • (array[]) Array of arrays of dropin plugin data, keyed by plugin file name. See get_plugin_data().
定義位置
相關方法
_get_dropinsget_optionget_pluginsget_to_pingget_alloptions
引入
3.0.0
棄用
-

get_dropins: 這個函式返回安裝在WordPress中的drop-ins陣列。Drop-ins是替代WordPress核心功能的特殊外掛,如資料庫類或外掛安裝程式。它們通常用於高階定製或優化。

檢查wp-content目錄,並檢索所有帶有任何外掛資料的drop-in。

function get_dropins() {
	$dropins      = array();
	$plugin_files = array();

	$_dropins = _get_dropins();

	// Files in wp-content directory.
	$plugins_dir = @opendir( WP_CONTENT_DIR );
	if ( $plugins_dir ) {
		while ( ( $file = readdir( $plugins_dir ) ) !== false ) {
			if ( isset( $_dropins[ $file ] ) ) {
				$plugin_files[] = $file;
			}
		}
	} else {
		return $dropins;
	}

	closedir( $plugins_dir );

	if ( empty( $plugin_files ) ) {
		return $dropins;
	}

	foreach ( $plugin_files as $plugin_file ) {
		if ( ! is_readable( WP_CONTENT_DIR . "/$plugin_file" ) ) {
			continue;
		}

		// Do not apply markup/translate as it will be cached.
		$plugin_data = get_plugin_data( WP_CONTENT_DIR . "/$plugin_file", false, false );

		if ( empty( $plugin_data['Name'] ) ) {
			$plugin_data['Name'] = $plugin_file;
		}

		$dropins[ $plugin_file ] = $plugin_data;
	}

	uksort( $dropins, 'strnatcasecmp' );

	return $dropins;
}

常見問題

FAQs
檢視更多 >