将WordPress程序JavaScript文件自动移至网站底部
![]() | ![]() | ![]() | ![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |

WordPress程序确实上手比较容易,但是后续如果需要完美的兼容和稳定还是需要不断的调整的。比如我们安装各种插件和主题之后,会看到源代码顶部有很多的JS文件,一来会使得网站打开速度变慢,二来还会影响网站的用户体验,我们需要做的最好是将JavaScript文件减少或者是移动到网站底部。
这里蜗牛整理到一个不错的办法,可以将所有的WordPress程序中的JavaScript文件移动到网站底部。具体如何操作呢?
第一、添加脚本
function theme_strip_tags_content($text, $tags = \’\’, $invert = false) {
preg_match_all( \’/<(.+?)[\\s]*\\/?[\\s]*>/si\’, trim( $tags ), $tags );
$tags = array_unique( $tags[1] );
if ( is_array( $tags ) AND count( $tags ) > 0 ) {
if ( false == $invert ) {
return preg_replace( \’@<(?!(?:\’. implode( \’|\’, $tags ) .\’)\\b)(\\w+)\\b.*?>.*?</\\1>@si\’, \’\’, $text );
}
else {
return preg_replace( \’@<(\’. implode( \’|\’, $tags ) .\’)\\b.*?>.*?</\\1>@si\’, \’\’, $text );
}
}
elseif ( false == $invert ) {
return preg_replace( \’@<(\\w+)\\b.*?>.*?</\\1>@si\’, \’\’, $text );
}
return $text;
}
function theme_insert_js($source) {
$out = \’\’;
$fragment = new DOMDocument();
$fragment->loadHTML( $source );
$xp = new DOMXPath( $fragment );
$result = $xp->query( \’//script\’ );
$scripts = array();
$scripts_src = array();
foreach ( $result as $key => $el ) {
$src = $result->item( $key )->attributes->getNamedItem( \’src\’ )->value;
if ( ! empty( $src ) ) {
$scripts_src[] = $src;
} else {
$type = $result->item( $key )->attributes->getNamedItem( \’type\’ )->value;
if ( empty( $type ) ) {
$type = \’text/javascript\’;
}
$scripts[$type][] = $el->nodeValue;
}
}
foreach ( $scripts as $key => $value ) {
$out .= \'<script type=\”\’.$key.\’\”>\’;
foreach ( $value as $keyC => $valueC ) {
$out .= \”\\n\”.$valueC;
}
$out .= \'</script>\’;
}
foreach ( $scripts_src as $value ) {
$out .= \'<script src=\”\’.$value.\’\”></script>\’;
}
return $out;
}
将代码添加到当前主题的Functions.php文件中。
第二、替换头部文件
<?php
ob_start();
wp_head();
$themeHead = ob_get_contents();
ob_end_clean();
define( \’HEAD_CONTENT\’, $themeHead );
$allowedTags = \'<style><link><meta><title>\’;
print theme_strip_tags_content( HEAD_CONTENT, $allowedTags );
?>
将当前主题的wp_head()头部文件这个代码替换到上面脚本。
第三、增加底部文件
<?php theme_insert_js( HEAD_CONTENT ); ?>
在footer.php底部文件中加上上面的代码。
最后,我们刷新当前的WP网站,可以看到所有的JS文件已经在网站底部。
[JavaScript文件]历史优惠活动内容
猜你可能想看的VPS
- 八零主机→提供各国独立服务器 CN2 线路 高防服务器 动态 IP 服务独立服务器[U]
- stsdust 广州移动 vds 预售,1Gbps 带宽无限流量,硬件资全球[VPS测评]
- smarthost→大硬盘 VPS 每 T 硬盘$4 月 洛杉矶 拉斯维全球[VPS测评]
- 便宜 月付€2.49 1 核 CPU 1G 内存 30G SSD NVM全球[VPS测评]
- HostUp→$7 年 1GB 内存 15GB SSD 空间 1TB 流虚拟空间(主机)
- 分享一些支持比特币付款的国外独立服务器商家独立服务器[U]
- 投稿 tmhhost→洛杉矶机房 CN2 GIA 线路 36 元 月起 全球[VPS测评]
- CloudCone→$24 月年 KVM-1GB 20GB 2TB 洛杉全球[VPS测评]
- 身字下面有六个甲是什么成语?全球[VPS测评]
- RAKsmart 五月促销→圣何塞服务器低至 46 美元起 站群服务器首站群服务器[IP]
- DEDECMS 内容模型自定义字段在{dedearclist}中调用不显全球[VPS测评]
- javascript 除法结果取整的四种方法全球[VPS测评]
- ThinkPHP5 中 success 和 error 方法传参的办法全球[VPS测评]
- CAD清理注册表/CAD重装失败怎么办?AUTO Uninstaller全球[VPS测评]
- BGP与AS自治号查询全球[VPS测评]
- [黑五]webhorizon-新加坡 日本 波兰 原生IP vps年付特日本VPS[主机]
- HKSS 2G 内存 20G SSD 2T流量 100M带宽 香港 Ce香港VPS[主机]
- 2020情人节: CloudCone 512 内存 10G HDD 1T全球[VPS测评]
- 为什么要拥有一台VPS?全球[VPS测评]
- WordPress去掉分类链接中category目录的两种方法全球[VPS测评]
- 20个温暖心灵的问题,抖音,朋友圈都可以拿去发。全球[VPS测评]
- CombCloud,香港沙田CN2VPS测评,2核1G52元/月,安畅C香港VPS[主机]
- diyvm:香港vps/美国vps/日本vps/2核/2G内存/5M带宽日本VPS[主机]
- wikihost,微基主机服务,100M带宽香港CMIVPS,5G防御,香港VPS[主机]
- 一篇漫画,看懂云计算全球[VPS测评]
- UCloud云服务器2020年度大促:北京/上海云服务器/香港免备案云服香港VPS[主机]
- 云计算的三种服务模式,SaaS和PaaS的区别在哪里?全球[VPS测评]
- VPS到底有什么用?全球[VPS测评]
- 恒星云:喜迎新春香港CN2云服务器,首月9.9元;深圳2核4G云服务器仅香港VPS[主机]
- BBR对比BBR2BBRPLUSBBR2CAKE锐速哪个效果好全球[VPS测评]
转载请注明原文地址:http://140.238.13.167:12355/read-39958.html











