WordPress 实现用户使用Email地址登录

90b1OOOPICce
对于忘记注册的用户名这种情况,可谓再常见不过了……幸运的是,您可以在登录界面增加一个“使用Email登录”的选项,这样,我们可爱的用户应该不会再为登录不上 WordPress 而苦恼了吧?

代码添加 Email 登录功能,添加以下代码至 Functions.php:

  1. //remove wordpress authentication  
  2. remove_filter(‘authenticate’, ‘wp_authenticate_username_password’, 20);  
  3.    
  4. add_filter(‘authenticate’, function($user, $email, $password){  
  5.    
  6.     //Check for empty fields  
  7.         if(empty($email) || empty ($password)){          
  8.             //create new error object and add errors to it.  
  9.             $error = new WP_Error();  
  10.    
  11.             if(empty($email)){ //No email  
  12.                 $error->add(’empty_username’, __(‘<strong>ERROR</strong>: Email field is empty.’));  
  13.             }  
  14.             else if(!filter_var($email, FILTER_VALIDATE_EMAIL)){ //Invalid Email  
  15.                 $error->add(‘invalid_username’, __(‘<strong>ERROR</strong>: Email is invalid.’));  
  16.             }  
  17.    
  18.             if(empty($password)){ //No password  
  19.                 $error->add(’empty_password’, __(‘<strong>ERROR</strong>: Password field is empty.’));  
  20.             }  
  21.    
  22.             return $error;  
  23.         }  
  24.    
  25.         //Check if user exists in WordPress database  
  26.         $user = get_user_by(’email’, $email);  
  27.    
  28.         //bad email  
  29.         if(!$user){  
  30.             $error = new WP_Error();  
  31.             $error->add(‘invalid’, __(‘<strong>ERROR</strong>: Either the email or password you entered is invalid.’));  
  32.             return $error;  
  33.         }  
  34.         else//check password  
  35.             if(!wp_check_password($password, $user->user_pass, $user->ID)){ //bad password  
  36.                 $error = new WP_Error();  
  37.                 $error->add(‘invalid’, __(‘<strong>ERROR</strong>: Either the email or password you entered is invalid.’));  
  38.                 return $error;  
  39.             }else{  
  40.                 return $user; //passed  
  41.             }  
  42.         }  
  43. }, 203);  

黑白灰三色单栏博客主题北欧控

该主题风格借鉴了苹果官方的设计元素,简洁大方而不失现代感,该主题摒弃使用现代大多数WP主题追求和倡导的HTML5等流行元素,后台采用独立的主题设置和SEO设置让使用者更加方便操作,我们不复杂,我们追求简单!更多详情请看主题演示。

演示:http://www.nordicstyle.cn/

下载主题: http://pan.baidu.com/s/1wPWi

LioMagazine–强大的中文杂志内容

LioMagazine 是一款新闻杂志内容分享的wordpress主题,支持多样化模块合并,丰富的短代码功能,自带自定义页面定义,实时推送新闻。去除了google字体代码,优化页面加载速度。

1.拖拽主页模块管理器

2.响应式设计

3.多种语言支持

4.二列分布式布局

5.SEO优化

6.+15短代码功能

7.无限添加侧边栏

8.日志徽章

9.自定义日志类型

10.多种主题皮肤

11.可扩展主题选项

12.8种页面模板

13.超过20种自定义插件

下载地址:http://pan.baidu.com/s/1ntKbCed  提取码: p1qb

给你的网站添加支付宝即时到帐按钮,一键转账功能

大家都知道PayPal有一个非常使用的「一键转账」功能,但是自从支付宝的个人收款主页停止服务后,支付宝已经无法实现该功能了,那有我天朝人民想不到的办法呢?今天博猪就来教大家使用一个极其简单的 form 标签经过 POST 可以一键自动填写「支付宝转账页面」的信息,让大家更方便、更快捷的转账捐赠你

  1. <form action=“https://shenghuo.alipay.com/send/payment/fill.htm” method=“POST” target=“_blank” accept-charset=“GBK”>  
  2. <input name=“optEmail” type=“hidden” value=“你的支付宝账号” />  
  3. <input name=“payAmount” type=“hidden” value=“默认的捐赠金额” />  
  4. <input id=“title” name=“title” type=“hidden” value=“默认显示的付款说明” />  
  5. <input name=“memo” type=“hidden” value=“备注” />  
  6. <input name=“pay” type=“image” value=“转账” src=“https://img.alipay.com/sys/personalprod/style/mc/btn-index.png” />  
  7. </form>  

代码中的图片链接https://img.alipay.com/sys/personalprod/style/mc/btn-index.png是指向TA付款

音乐播放插件 WP-Player v2.0

在线预览

Demo:http://webjyh.com/wp-player/

WP-Player介绍专区

此次升级进行了整体的重大重构,页面音乐播放器js,后台MetaBox输入方式,插件结构等等。

改写了获取虾米ID的方法;直接输入网址即可获取虾米ID和对应的音乐类型;

支持 单音乐页面、专辑页面、艺人页面、精选集页面(也可自己创建精选集);

支持多歌曲播放;完全兼容以前老版本短代码;

完美支持 IE6+,FireFox,Chrome 浏览器;

废除了短代码中的 loop 参数;

将解析虾米地址移交至插件本身处理;

关闭后台无用选项设置;

支持后台自定义上传音乐文件或音乐外链;

使用方法专区

在虾米网打开喜欢的歌曲页面,复制歌曲页面的网址如:http://www.xiami.com/song/2078022……

并将复制的网址填写到WP-Player的表单内。音乐类型将根据网址自动做出选择。

点击获取音乐ID按钮,此时音乐ID出现在表单中。

将短代码 [player autoplay=”1″] 填入您的文章内容中。

短代码中 autoplay 表示是否自动播放;参数”0″表示否;”1″表示是;

PS:建议使用网址来获取音乐ID。

插件依赖专区

需要 jQuery 1.7+ 版本库,如主题使用的jQuery 版本过低,请升级至 1.7+版本。

需要当前主机支持 PHP simplexml_load_file() 函数,此函数用于抓取虾米音乐数据。

v2.0.1 版本如主机不支持,将采用新浪云解析。

注意事项专区

一篇文章只能设置一个播放器。

为了用户体验,在文章详细页面中 自动播放 才会启用。首页和列表员设置将无用。

因插件需要依赖 jQuery,如主题缺少jQuery;需在后台WP-Player设置中选用;

如同时设置 虾米ID 和 自定义上传音乐,将优先采用虾米ID解析。

插件下载专区

通过 WordPress 后台插件管理 => 安装插件 => 搜索插件 => WP-Player => 点击安装插件

官网下载 https://wordpress.org/plugins/wp-player/ 上传插件 => 安装插件

虾米ID获取扫盲专区

单首歌曲网址,一般网址中将包含 **song** 字符;

专辑页面网址,一般网址中将包含 **album** 字符;

艺人页面网址,一般网址中将包含 **artist** 字符;

精选集页面,一般网址中将包含 **collect** 字符;

关于虾米精选集的制作,在制作时,一定要设置为所有人可见,这样才能获取到歌单;

开发者专区

因为考虑到插件加载的性能,所以插件中的代码全都压缩了。

源码我托管在 GitHub 中,有需要参考的请上 https://github.com/webjyh/WP-Player

音频播放采用 SoundManager2 来管理,顺便求 GitHub 项目 Star;

媒体文件或图片替换插件:Enable Media Replace

WordPress具备比较强大的管理媒体文件的功能,但却缺少一个有用的功能,那就是不允许用户后台更换现有的媒体文件。本文介绍的插件可方便你在后台替换现有的媒体文件。

WordPress替换媒体文件插件:Enable Media Replace

插件含多国语言文件,包括简体中文。

安装启用插件后,进入媒体库页面,选择一个媒体文件会在管理菜单中增加“替换媒体”链接按钮,打开媒体替换页面,有两个选项:

仅替换文件,此选项要求您上传与之前文件相同的文件类型(image/jpeg),替换后,无论您上传的文件名是什么,上传后的媒体文件名称与地址都会保持不变。

替换文件,使用新文件名并更新所有链接,使用此选项,将会使用新文件的文件名及文件类型,所有包含原文件名的链接也将会被替换成新文件名。

阿里云附件(WordPress插件) v2.0 beta版

两年前,为了满足自己的特定需求,将上传到WordPress的附件同步到阿里云OSS中,我写了阿里云附件(Aliyun OSS Support)插件的v1.0版本。做v1.0版的时候,我考虑的是只要能满足自己的基本使用需求即可,发出来纯粹是为了顺便方便大家,所以并没有对用户需求进行调研,代码质量也很低,还存在很多的BUG。

后来因为我的博客转为使用百度BCS作为云存储的缘故,这个插件便没有更新了,我把精力放在了BCS插件上。后来随着个人需求的增多,我对BCS插件进行了数个版本的更新,所以到最后,我便把这两个插件实现的功能、修复的BUG搞混了。以致当众网友给这个OSS插件提意见的时候,我竟会错以为功能已经实现了,也并未引起足够重视。直到前几天开始着手升级的时候,我才发现这个插件竟然还在如此初级的阶段。

虽然插件功能少、BUG多,但因为是发布时间最早的OSS同步插件,所以还是受到了众网友的谬赞。随着WordPress升级到新版本,众网友陆续反馈这款插件变得不可用,于是我便着手对这款插件进行升级。因为平时我就在考虑应当从哪些方面进行完善,所以实际操作起来,反倒没费什么力气。在经过大约两天的编码和测试后,这个v2.0 beta版的新插件就这么华丽丽地诞生了!

废话说了这么多,下面进入正题,看看v2.0 beta版都进行了哪些更新:

修复了v1.0版本中网友提出的各类BUG(我能想到的);

更新OSS SDK到最新的 v1.1.6 版本;

修复只能上传图片不能上传其他类型文件的BUG;

支持OSS所有存储地域(杭州、北京、深圳、青岛、香港)和内外网支持;

增加插件启用时的服务器运行环境测试,如果服务器不满足基本要求,则会进行提示;

增加AK/SK/BUCKET校验功能,如果AK/SK没有操作BUCKET的权限,或者BUCKET为“私有”或“公开读写”状态,则会进行相应提示;

增加插件卸载复原功能,会在插件卸载的时候将upload_path_url参数还原;

允许用户选择是否将图片的缩略图不同步到OSS;

优化代码结构,把大部分代码进行了重写,增加了完整的代码注释,对可能产生的错误和可能抛出的异常进行了相应处理,增强了代码的健壮性;

代码同步到了Github(https://github.com/mawenjian/aliyun-oss-support),方便各位有兴趣的朋友创建新的分支。

完善了插件配置页面的文字描述,即使是小白也能按说明把插件配置好。

放张截图:

阿里云附件v2.0 beta版

说明:

1、由于增加了新参数的缘故,所以如果是从v1.0版本升级过来的话,请在安装新版本插件后,到配置页面把新参数补充完整,以免影响使用。

2、最好将原来上传到WordPress的附件同步到OSS的相应目录,否则启用插件后,原来上传图片的缩略图在WordPress后台将会不能显示。

3、建议在上传文件前规范文件的命名规则,避免因不符合OSS的Object命名规范而导致上传失败。个人建议文件命名使用“26个英文字母”、“数字0-9”以及“-”,除此之外的字符都不用。

4、对于体积较大的文件,不建议使用WordPress后台上传,因为需要Web服务器进行周转,效率较低,也容易出错(尤其是海外服务器);建议直接通过OSS管理后台或相关工具上传到OSS中的相应位置。

5、如果有任何意见或建议,请到 http://mawenjian.net/p/977.html 反馈。

6、欢迎其他OSS类同步插件将我新加入的功能放到他们的插件中(直接粘贴代码也无所谓,当然,最好可以提及下idea来自于我)。为广大网友提供更好用的插件才是我们的最终目的,其他都不重要。

插件维护页面:http://mawenjian.net/p/977.html

插件下载地址:http://pan.baidu.com/s/1c0pinrM

适用于阿里云ACE的WordPress Rewrite规则

随着阿里云ACE(阿里云引擎)功能的日臻完善,我最近在考虑将博客迁移到ACE平台上。因为我的博客中的大部分URL都使用了Rewrite,可是偏偏网络上并没有适用于阿里云ACE的,所以我只能自己写了。

在经历了繁复的拼凑过程之后,终于给搞出来了:

  1. rewrite:  
  2. – url: ^$  
  3. script: /index.php last  
  4. – url: ^/(?!wp-)([\w/_-]+(\.html$)?)$  
  5. script: /index.php/$1 last  

第一条Rewrite语句用于对首页进行重写,比如用户访问“http://mawenjian.aliapp.com/”,服务器会将请求重写到“http://mawenjian.aliapp.com/index.php”。如果没有这一条规则的话,就会出现找不到首页的情况。

第二条用于对分类页面、TAG页面、文章页面等的URL进行重写。这条规则规定,如果URL中的字符由字母、数字、“-”、“/”或者“_”组成,并且:1)不以“wp-”开头;2)无后缀或者后缀是”.html”,则将其由WordPress程序处理。因此,无论是对于以“wp-”打头的WordPress系统文件,还是上传的图片文件,就都不会出现不能正确返回原文件的情况了。

因为每个WordPress博客的固定链接可能并不相同,所以如果你想测试下这段规则是否适用于你的网站,不妨使用正则表达式验证工具测试下。我觉得中国站长站的正则验证工具(http://tool.chinaz.com/regex)就挺不错的。需要注意的是,在做正则验证时,路径应当从“/”写起,而不是从“http://”。比如我要验证的URL是“http://mawenjian.net/p/1270.html”,那么在下边的文本框中就应该填写“/p/1270.html”,而不是“http://mawenjian.net/p/1270.html”。

支付宝Alipay|财付通Tenpay|贝宝PayPal集成插件

话说最近很多小伙伴都想利用wordpress做一个电商网站来出售自己的商品,今天就为大家介绍一款集成多种支付网关的wordpress插件:WordPress支付宝Alipay|财付通Tenpay|贝宝PayPal集成插件,该插件集成了支付宝Alipay接口,财付通Tenpay接口,以及贝宝PayPal的支付接口,这些支付网关都是国内网民常用的,所以非常适合用来建立面向国内用户的电商网站,并且该wordpress插件是免费的~。

功能特性:

【多接口支持】完美支持国内通用的支付宝,财付通以及国际通用的Paypal接口和20余家直联网银!

【后台统一管理】目前在后台支持商品管理,订单管理,模版管理,统一管理,功能分离,方便直观!

【短代码快捷添加】只需要在文章中输入[zfb id=123]字样的短代码就可以快捷的调用指定的商品!

【模版样式自定义】支持自定义模版的样式,定制专属于贵站的风格模版!

【独立支付页面】简洁的WPUI风格独立支付页面,加速付款速度,排除付款障碍!

【自助边栏广告】一次设置,永久自动!

【自助友链交易】给您的博客带来额外的收入!

【阶梯价格支持】让价格更加科学化,营销时代,价格你说了算!

【自动发货】支持虚拟商品自动发货!下载链接,解压密码神马都是浮云!

【自动货源】让自动发货不再死板,让所发的货物更自动!

【定时促销】设置打折比率,触发消费激情!

【安全稳定】验证用户输入数据的正确性和合法性,防止价格篡改,禁止SQL注入!

【隐私保护】专为接口使用者提供接口密钥独立设置机制,提升密钥保护等级!

【异步加载全新体验】后台控制面板采用AJAX异步加载技术为您减少带宽!

最新版功能缺陷:

【弱支持商城函数】尚未提供商品堆输出函数,也未提供分类,标签支持!

【弱支持主题集成】考虑到加载速度以及弱支持商城的态度的问题,将付款页面独立了出来!

【弱支持购物车】秉持着弱支持商城的态度和购物习惯,更倾向于单件商品的购买!

【订单搜索功能】该版本对于搜索功能支持得不是很好,在下一个版本中将会得到提升!

插件未来开发方向:

【保持弱商城支持】下一个版本任然会秉持着弱商城支持的态度进行开发!考虑到在商城方面WP没有这个文化,要开启一个WP商城新纪元并不是一个插件就能实现的,这可能需要时间的积淀以及WP的开发态度,正如我们看到的,WP是一个优秀的博客程序!但是这么优秀的一个程序用来做博客似乎是有点浪费,我们将长期保持做博客,做乐趣的态度!

【兼容三次开发性,规范核心代码】插件相对于父程序来说本来就是一个二次开发,在保持自身的稳定性的前提下为WP第三次个性开发提供支付接口也是我们的努力方向!

插件界面截图:

下载地址: http://pan.baidu.com/s/10eIIU