Astra_Minify::render_js()
Renders and caches the JavaScript
Description
Return
(void|false) Checks early if cache directory was emptied before generating the new files
Source
File: classes/class-astra-minify.php
		public static function render_js() {
			self::load_filesystem();
			if ( ! defined( 'FS_CHMOD_FILE' ) ) {
				define( 'FS_CHMOD_FILE', ( fileperms( ABSPATH . 'index.php' ) & 0777 | 0644 ) );
			}
			if ( get_option( 'astra-addon-js-status' ) ) {
				$assets_status = self::clear_assets_cache();
				if ( false == $assets_status ) {
					return false;
				}
			}
			$cache_dir    = self::get_cache_dir();
			$new_js_key   = str_replace( '.', '-', uniqid( '', true ) );
			$js_slug      = self::_asset_slug();
			$js_files     = self::get_js_files();
			$dep_js_files = self::$dependent_js_files;
			$js           = '';
			$js_min       = '';
			$filepath     = $cache_dir['path'] . $js_slug . '-' . $new_js_key . '.js';
			if ( count( $js_files ) > 0 ) {
				foreach ( $js_files as $k => $file ) {
					if ( ! empty( $file ) && file_exists( $file ) ) {
						$js .= self::$astra_addon_filesystem->get_contents(
							$file,
							FS_CHMOD_FILE
						);
					}
				}
			}
			$js = apply_filters( 'astra_render_js', $js );
			$status = self::$astra_addon_filesystem->put_contents(
				$filepath,
				$js,
				FS_CHMOD_FILE
			);
			$status = ! $status;
			// Save the new css key.
			update_option( 'astra-addon-js-status', $status );
			update_option( self::$_js_key . '-dep-' . $js_slug, $dep_js_files );
			update_option( self::$_js_key . '-' . $js_slug, $new_js_key );
			do_action( 'astra_after_render_js' );
		}
			Expand full source code Collapse full source code View on Trac
Changelog
| Version | Description | 
|---|---|
| 1.0 | Introduced. |