WP在wp-admin中包含一个不错的javascript加载器:
http://core.trac.wordpress.org/browser/tags/3.0.4/wp-admin/load-scripts.php

和CSS加载器:
http://core.trac.wordpress.org/browser/tags/3.0.4/wp-admin/load-styles.php

I想知道是否也可以在前端使用它们,而不仅仅是admin,因为它们可以连接所有排队的脚本,并将它们作为单个gzip压缩文件提供

评论

这是否只是在询问“我可以在非管理页面上使用队列吗?”是否有效? ..答案是肯定的。

@ t31os问题是您是否可以使用load-scripts.php和load-styles串联和gzip样式和脚本,就像为管理员完成的那样。我澄清了问题的标题。

#1 楼

后一个答案

从简短的外观:

您必须使用


include( admin_url().'load-scripts.php' );
include( admin_url().'script-loader.php' );


然后跳入$GLOBALS['wp_scripts']

使用…

$wp_scripts->default_dirs( array_merge( 
     $wp_scripts->default_dirs
    ,array( '/themes/your_theme/js/' ) 
); 


...进行扩展。

,然后使用

$wp_scripts->add( $handle, $path_from_content_dir, false/array( $deps ), $ver ) 


添加脚本。

注释:


.dev.js(当SCRIPT_DEBUGTRUE时)搜索未压缩的脚本。 >编辑:WP 3.5会更改此行为,并在($wp_styles.js)时将SCRIPT_DEBUG用于“开发”版本和“ .min.js”;一个插件或mu-plugin。)

未经测试,我不确定是否可以使用。

评论


我目前正在尝试做这样的事情。不好的是load-scripts.php最后有一个exit(),所以之后您什么也不能做。

–本杰明·因塔尔(Benjamin Intal)
15年7月30日在3:33

这个答案实际上使我免于头疼。如果SCRIPT_DEBUG为true,则将所有脚本单独排入队列,就像在前端一样。但是,如果SCRIPT_DEBUG为false,则似乎通过load-scripts.php同时使脚本入队。

–迈克尔·埃克伦德(Michael Ecklund)
17年8月24日在21:06

@MichaelEcklund是的,此“开关”-常数连接或传送单个文件。这是从源地图发布到现在的开发人员工具时代。

– kaiser
17年8月24日在21:51

#2 楼

这是一个很好的问题,对于WordPress来说将是一个很好的功能。
其他一些答案不能解决主要问题。

我想知道是否有可能
也可以在前端使用它们,而不是仅仅用admin,因为它们可以
连接所有排队的脚本,并且
将它们作为单个压缩文件保存。

否,目前尚无法使用内置的脚本加载器来连接前端的CSS和脚本。
几年前,在WP Hackers上对此进行了讨论,并为此提供了一张培训票增强功能已被接受,但用于将来的版本。

#3 楼

如果需要在前端放入CSS文件:

1)通过wp_register_style($ handle,$ src)
注册样式2)将wp_enqueue_style($ handle)钩入wp_print_styles钩子。

如果需要在前端排队脚本:

1)通过wp_register_script($ handle,$ src)
2)注册样式。将wp_enqueue_script($ handle)钩到wp_head钩中。

#4 楼

我有一些您可能希望查看的脚本。

1。 Combine.php
-在许多主题上,我都实现了此脚本。它支持类似的功能,可以放到您的模板文件夹中,并且使用起来相对容易。

2。 WP Minify
-此插件支持缩小,并且非常易于使用。

3。 W3 Total Cache
-是一个非常强大的性能插件。它还支持脚本/ css组合以及大量其他功能,例如将组合的脚本加载到CDN。