WordPress

WordPress

WordPress建站及WordPress SEO相关话题
Shopify

Shopify

Shopify建站及Shopify SEO相关话题
Google SEO

Google SEO

Google SEO相关话题
SEM

SEM

SEM相关话题
Zoho

Zoho

Zoho SAAS相关产品使用话题讨论
EDM

EDM

讨论Email Marketing相关话题
Symantec SSL

Symantec SSL

讨论Symantec SSL安全相关话题
隽永东方售后服务

隽永东方售后服务

隽永东方售后服务专区

利用jquery api进行简单的批量替换链接

WordPressLeo 发表了文章 • 1 个评论 • 64 次浏览 • 5 天前 • 来自相关话题

$(".content-tel").children("a:first-child").attr("href","http://www.domain.com/contact");
 
 
如果有很多同样的元素要修改为同一个链接,那这样就省去了一个个页面修改链接的时间,提高效率 查看全部
$(".content-tel").children("a:first-child").attr("href","http://www.domain.com/contact";);
 
 
如果有很多同样的元素要修改为同一个链接,那这样就省去了一个个页面修改链接的时间,提高效率

分享一款前端交互效果较好的菜单插件superfish

WordPressLeo 发表了文章 • 2 个评论 • 49 次浏览 • 2018-04-13 09:24 • 来自相关话题

superfish基础版菜单
superfish垂直版菜单(适用于侧边栏)
superfish tab切换型菜单
superfish超级版菜单
分为这四个版本,https://superfish.joelbirch.co/examples/ 相关文件以及配置jq都有。 查看全部
superfish基础版菜单
superfish垂直版菜单(适用于侧边栏)
superfish tab切换型菜单
superfish超级版菜单
分为这四个版本,https://superfish.joelbirch.co/examples/ 相关文件以及配置jq都有。

WordPress网站index.php总被删除解决方案

WordPressEastern_Design_Studio 发表了文章 • 0 个评论 • 59 次浏览 • 2018-04-11 14:37 • 来自相关话题

最新消息:此项目后来安装了一款不错的病毒清理插件--Sucuri Security - Auditing, Malware Scanner and Hardening 检测出了WordPress核心文件被篡改的记录,清理后,问题得以彻底解决。

最近有个WordPress网站根目录底下的index.php总被删除,用病毒扫描过都提示没病毒,查看数据库里边也没什么异样,就是每天根目录底下index.php文件都会被删除,后来经过对比发现.htaccess文件里边有异样,这个站里边的内容如下: 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On RewriteBase /
RewriteRule ^([0-9]+)\/(fibdom)\/([0-9]+)_(.*)\/(.*)$ ?fibdom$3=$1&%{QUERY_STRING}[L] RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

而我单独找了一个正常的WordPress网站的.htaccess,内容如下:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

至此基本可以确认是网站.htaccess被替换过,这个文件往往容易被忽略,替换这个文件以后,网站应该就恢复正常了。 查看全部


最新消息:此项目后来安装了一款不错的病毒清理插件--Sucuri Security - Auditing, Malware Scanner and Hardening 检测出了WordPress核心文件被篡改的记录,清理后,问题得以彻底解决。


最近有个WordPress网站根目录底下的index.php总被删除,用病毒扫描过都提示没病毒,查看数据库里边也没什么异样,就是每天根目录底下index.php文件都会被删除,后来经过对比发现.htaccess文件里边有异样,这个站里边的内容如下: 


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On RewriteBase /
RewriteRule ^([0-9]+)\/(fibdom)\/([0-9]+)_(.*)\/(.*)$ ?fibdom$3=$1&%{QUERY_STRING}[L] RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress


而我单独找了一个正常的WordPress网站的.htaccess,内容如下:


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress


至此基本可以确认是网站.htaccess被替换过,这个文件往往容易被忽略,替换这个文件以后,网站应该就恢复正常了。

针对谷歌pagespeed评分入门级建议

WordPressLeo 发表了文章 • 1 个评论 • 98 次浏览 • 2018-04-02 12:10 • 来自相关话题

谷歌pagespeed评分,刚开始的时候很头疼,碰到一个客户的网站评分居然只有20分左右,当时我都觉得这个站可能不能抢救了。
1、首先提升这个分数最重要的就是从资源方面着手,而网站资源里面,占大头并且最直观的就是网站所用的图片。
如图:








当然这个站本身首页的内容较少,在资源这块能较好的控制
 
2、其次我们可以从Add Expires headers(有另写文章介绍)、压缩css、js文件、如果可以的话,域名托管到第三方cdn平台(例如我们常用的cloudflare,针对国内的话可以百度云)等等。。。。。。




以上这些截图自gtmetrix工具的测评,因为较为直观、数据都有列出来。
其实这些工具上面的建议,在我们常用的缓存插件wp-rockets插件里面都有,根据网站实际情况尽量开启就能提升分数。
 
以下附上pagespeed测评截图:




 
  查看全部
谷歌pagespeed评分,刚开始的时候很头疼,碰到一个客户的网站评分居然只有20分左右,当时我都觉得这个站可能不能抢救了。
1、首先提升这个分数最重要的就是从资源方面着手,而网站资源里面,占大头并且最直观的就是网站所用的图片。
如图:
1.png

2.png

当然这个站本身首页的内容较少,在资源这块能较好的控制
 
2、其次我们可以从Add Expires headers(有另写文章介绍)、压缩css、js文件、如果可以的话,域名托管到第三方cdn平台(例如我们常用的cloudflare,针对国内的话可以百度云)等等。。。。。。
3.png

以上这些截图自gtmetrix工具的测评,因为较为直观、数据都有列出来。
其实这些工具上面的建议,在我们常用的缓存插件wp-rockets插件里面都有,根据网站实际情况尽量开启就能提升分数。
 
以下附上pagespeed测评截图:
4.png

 
 

如何将百度地图以iframe形式嵌入网站

WordPressLeo 发表了文章 • 1 个评论 • 92 次浏览 • 2018-03-29 15:18 • 来自相关话题

我们常用的百度地图API:http://api.map.baidu.com/lbsapi/creatmap/
这个API是没有iframe分享代码的,只有整个的html。
首先生成一个对应的百度地图html文件,然后将这个文件上传至网站根目录下,获得链接:http://域名/百度地图.html
然后将这个链接放到iframe标签的src属性中。
over! 查看全部
我们常用的百度地图API:http://api.map.baidu.com/lbsapi/creatmap/
这个API是没有iframe分享代码的,只有整个的html。
首先生成一个对应的百度地图html文件,然后将这个文件上传至网站根目录下,获得链接:http://域名/百度地图.html
然后将这个链接放到iframe标签的src属性中。
over!

使用cookie-free domains的方法优化网站性能

回复

WordPressLeo 发起了问题 • 2 人关注 • 0 个回复 • 173 次浏览 • 2018-03-27 11:56 • 来自相关话题

Add Expires headers

WordPressLeo 发表了文章 • 0 个评论 • 87 次浏览 • 2018-03-27 11:03 • 来自相关话题

Expires headers 告诉浏览器是否应该从服务器请求一个特定的文件或者是否应该从浏览器的缓存抓住它。Expires headers 的设计目的是希望使用缓存来减少HTTP requests的数量,从而减少HTTP相应的大小。

Expires headers 中的 Expires 说明了 Expires headers 是有时间限制的,只有在这个指定的时间期限内,浏览器才会从缓存读取数据,而超过这个时间期限,再次访问同一个页面时浏览器还是会向服务器发起  HTTP requests,从服务器端下载页面所需的文件。
 
HTML 文件不要设置 Expires headers。实际的开发经验告诉我,给HTML文件添加 Expires headers 会带来很多的麻烦。即便你要添加  Expires headers,也尽量设置较短的过期时间。这一点在 PageSpeed 的 Leverage browser caching 规则中也明确提到了:

In general, HTML is not static, and shouldn’t be considered cacheable.

知道要缓存哪些资源文件后,接着就是预判这些文件的变更频率,设置合适的过期时间。还是前面的原则,变更频繁的 Expire 时间就越短,不怎么变动的就可以设置长的过期时间,也就是落实“永不过期”的原则。
 
接下来就是在服务器端设置 Expires headers 了,这里以Apache服务器为例,我们在 .htaccess 文件中配置(.htaccess是跟目录下的一个隐藏文件)添加如下代码:

<IfModule mod_expires.c> 
# Enable expirations 
ExpiresActive On 
# Default directive 
ExpiresDefault "access plus 1 month" 
# My favicon 
ExpiresByType image/x-icon "access plus 1 year" 
# Images 
ExpiresByType image/gif "access plus 1 month" 
ExpiresByType image/png "access plus 1 month" 
ExpiresByType image/jpg "access plus 1 month" 
ExpiresByType image/jpeg "access plus 1 month" 
# CSS 
ExpiresByType text/css "access plus 1 month" 
# Javascript 
ExpiresByType application/javascript "access plus 1 year" </IfModule>
  查看全部
Expires headers 告诉浏览器是否应该从服务器请求一个特定的文件或者是否应该从浏览器的缓存抓住它。Expires headers 的设计目的是希望使用缓存来减少HTTP requests的数量,从而减少HTTP相应的大小。

Expires headers 中的 Expires 说明了 Expires headers 是有时间限制的,只有在这个指定的时间期限内,浏览器才会从缓存读取数据,而超过这个时间期限,再次访问同一个页面时浏览器还是会向服务器发起  HTTP requests,从服务器端下载页面所需的文件。
 
HTML 文件不要设置 Expires headers。实际的开发经验告诉我,给HTML文件添加 Expires headers 会带来很多的麻烦。即便你要添加  Expires headers,也尽量设置较短的过期时间。这一点在 PageSpeed 的 Leverage browser caching 规则中也明确提到了:

In general, HTML is not static, and shouldn’t be considered cacheable.

知道要缓存哪些资源文件后,接着就是预判这些文件的变更频率,设置合适的过期时间。还是前面的原则,变更频繁的 Expire 时间就越短,不怎么变动的就可以设置长的过期时间,也就是落实“永不过期”的原则。
 
接下来就是在服务器端设置 Expires headers 了,这里以Apache服务器为例,我们在 .htaccess 文件中配置(.htaccess是跟目录下的一个隐藏文件)添加如下代码:

<IfModule mod_expires.c> 
# Enable expirations 
ExpiresActive On 
# Default directive 
ExpiresDefault "access plus 1 month" 
# My favicon 
ExpiresByType image/x-icon "access plus 1 year" 
# Images 
ExpiresByType image/gif "access plus 1 month" 
ExpiresByType image/png "access plus 1 month" 
ExpiresByType image/jpg "access plus 1 month" 
ExpiresByType image/jpeg "access plus 1 month" 
# CSS 
ExpiresByType text/css "access plus 1 month" 
# Javascript 
ExpiresByType application/javascript "access plus 1 year" </IfModule>
 

wordpress网站被恶意攻击(大量访问xmlrpc.php)解决方法

WordPressLeo 发表了文章 • 1 个评论 • 92 次浏览 • 2018-03-26 11:52 • 来自相关话题

通过查看wordpress网站的日志发现,每天有大量的IP访问wordpress网站xmlrpc.php文件,这个文件本是wordpress程序方便用户进行远程发布的,基本上很少用到。但现在却有人恶意大量的访问这个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文件,不要等到网站被恶意攻击了才去关闭。 查看全部
通过查看wordpress网站的日志发现,每天有大量的IP访问wordpress网站xmlrpc.php文件,这个文件本是wordpress程序方便用户进行远程发布的,基本上很少用到。但现在却有人恶意大量的访问这个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文件,不要等到网站被恶意攻击了才去关闭。

wordpress后台关闭插件更新提示

WordPressLeo 发表了文章 • 1 个评论 • 75 次浏览 • 2018-03-20 15:28 • 来自相关话题

将以下拷贝至主题目录下的functions.php文件中即可,这样强迫症患者们就看不到后台那些付费插件的更新了。(当然建议最好还是定期解除这个提示和检查,对一些免费插件进行更新)add_filter('pre_site_transient_update_core',create_function('$a',"return null;")); // 关闭核心提示 add_filter('pre_site_transient_update_plugins',create_function('$a',"return null;")); // 关闭插件提示 add_filter('pre_site_transient_update_themes',create_function('$a',"return null;")); // 关闭主题提示 remove_action('admin_init','_maybe_update_core');// 禁止 WordPress 检查更新 remove_action('admin_init','_maybe_update_plugins');// 禁止 WordPress 更新插件 remove_action('admin_init','_maybe_update_themes'); // 禁止 WordPress 更新主题
  查看全部
将以下拷贝至主题目录下的functions.php文件中即可,这样强迫症患者们就看不到后台那些付费插件的更新了。(当然建议最好还是定期解除这个提示和检查,对一些免费插件进行更新)add_filter('pre_site_transient_update_core',create_function('$a',"return null;")); // 关闭核心提示 add_filter('pre_site_transient_update_plugins',create_function('$a',"return null;")); // 关闭插件提示 add_filter('pre_site_transient_update_themes',create_function('$a',"return null;")); // 关闭主题提示 remove_action('admin_init','_maybe_update_core');// 禁止 WordPress 检查更新 remove_action('admin_init','_maybe_update_plugins');// 禁止 WordPress 更新插件 remove_action('admin_init','_maybe_update_themes'); // 禁止 WordPress 更新主题
 

PHP 使用静态变量(static var)进行效率优化

WordPressLeo 发表了文章 • 0 个评论 • 128 次浏览 • 2018-03-12 10:47 • 来自相关话题

使用场景:在一个 PHP 函数中通过复杂的计算获取到这个变量,然后这个函数会在页面中多次被调用。
function get_some_var(){ 
$var = complex_calculation();
return $var; 
}
如果这个函数在页面中被调用3次,那么这个复杂的计算过程就会被执行3次。我们把 $var 定义成静态变量,就可以把这个过程优化:
function get_some_var(){
 static $var; 
if(!isset($var)){ 
$var = complex_calculation();
 } 
return $var;
 }
  查看全部
使用场景:在一个 PHP 函数中通过复杂的计算获取到这个变量,然后这个函数会在页面中多次被调用。
function get_some_var(){ 
$var = complex_calculation();
return $var; 
}
如果这个函数在页面中被调用3次,那么这个复杂的计算过程就会被执行3次。我们把 $var 定义成静态变量,就可以把这个过程优化:
function get_some_var(){
 static $var; 
if(!isset($var)){ 
$var = complex_calculation();
 } 
return $var;
 }