/** * * Get compiled/cached CSS * * @package PageLines DMS * @since 2.2 */ function get_compiled_custom() { if (!pl_draft_mode() && is_array($a = get_transient('pagelines_custom_css'))) { return $a; } else { $start_time = microtime(true); $custom = stripslashes(pl_setting('custom_less')); $pless = new PagelinesLess(); $custom = $pless->raw_less($custom, 'custom'); $end_time = microtime(true); $a = array('custom' => $custom, 'c_time' => round($end_time - $start_time, 5), 'time' => time()); if (strpos($custom, 'PARSE ERROR') === false) { set_transient('pagelines_custom_css', $a, $this->ctimeout); set_transient('pagelines_custom_css_backup', $a, $this->btimeout); return $a; } else { pl_less_save_last_error($custom, false); return get_transient('pagelines_custom_css_backup'); } } }
/** * Full version CSS File Write Function * Same as the version in less.functions used by the free version * Difference is if this function fails with WP_Filesystem it will fall back to regular file_put_contents() */ function pl_css_write_file($folder, $file, $css) { $failed = false; if (!is_dir($folder)) { if (true !== wp_mkdir_p($folder)) { return false; } } add_filter('request_filesystem_credentials', '__return_true'); include_once ABSPATH . 'wp-admin/includes/file.php'; if (is_writable($folder)) { $creds = request_filesystem_credentials(site_url()); if (!WP_Filesystem($creds)) { $failed = true; } } global $wp_filesystem; if (is_object($wp_filesystem) && !$failed) { $c = $wp_filesystem->put_contents(trailingslashit($folder) . $file, $css, FS_CHMOD_FILE); if (!$c) { $failed = true; } } if ($failed) { //lets try file_put_contents then! $c = file_put_contents(trailingslashit($folder) . $file, $css); if (!$c) { return pl_less_save_last_error('Unable to access filesystem. Check file permissions on uploads dir. Even file_put_contents() failed on: ' . $folder, false); } } return true; // file written }
function pl_css_write_file($folder, $file, $css) { if (!is_dir($folder)) { if (true !== wp_mkdir_p($folder)) { return false; } } add_filter('request_filesystem_credentials', '__return_true'); include_once ABSPATH . 'wp-admin/includes/file.php'; if (is_writable($folder)) { $creds = request_filesystem_credentials(site_url()); if (!WP_Filesystem($creds)) { return pl_less_save_last_error('Unable to set filesystem credentials', false); } } global $wp_filesystem; if (is_object($wp_filesystem)) { $wp_filesystem->put_contents(trailingslashit($folder) . $file, $css, FS_CHMOD_FILE); } else { return pl_less_save_last_error('Unable to access filesystem. Possible permission issue on ' . $folder, false); } return true; // file written }