WordPress 有一个密码保护功能,你可以在文章和页面的编辑界面看到设置选项: 设置了密码后,你就可以在前台看到如下提示内容: 本文的目的就是要修改这个提示内容,核心函数如下(添加到当前主题的 functions.php 即可): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 /** * WordPress 更改文章密码保护后显示的提示内容 * https://www.wpdaxue.com/change-password-protected-text.html */ function password_protected_change( $content ) { global $post; if ( ! empty( $post->post_password ) && stripslashes( $_COOKIE[’wp-postpass_’.COOKIEHASH] ) […]
内容
WordPress 关注微信公众号查看隐藏内容
大家可能还记得之前推荐过的 Share to view all 插件,即分享到微博后显示隐藏内容,今天推荐的就是该作者的另一个插件:微信公众号涨粉 – 该插件可以隐藏Wordpress文章中的部分内容,当访客关注博主的微信公众号后,回复指定关键词来获取验证码,在文章页面输入正确的验证码即可查看被隐藏的内容。需要注意的是,只需关注一次微信公众号就可以查看使用该插件隐藏的所有文章的内容,可设置有效天数。 在文本编辑模式可以插入隐藏内容: 隐藏后显示的效果: 插件设置后台: 注:你需要在这个插件的设置界面设置关键词和回复的验证码,并且需要在微信公众平台(也可以是第三方托管平台)设置一样的自动回复内容。 关注后,发送指定内容就可以获取验证码,在文章中输入即可显示隐藏内容: 插件下载和帮助,请访问作者页面:http://www.huoduan.com/wechat-fans.html ps:该插件其实还有些可以改进的空间,比如前台加密后的内容框建议允许响应式大小,同时尽可能让用户定义相关的文本内容,当然,如果能和 Share to view all 合并成一个插件,分享到微博或关注微信公众号,二选一即可查看隐藏内容,那就更好了。
WordPress 根据用户角色和登录状态显示不同内容和小工具
之前推荐过《WordPress 根据用户名/用户角色/能力/是否登录等隐藏部分文章内容》,今天推荐的 Content Control 插件更加强大,允许你自由设置限制条件,支持根据用户是否登录、用户角色设置隐藏内容和小工具。可以批量设置属于某分类、标签、格式等的文章的可见性,也可以通过简码 [content_control] 单独隐藏部分内容等等。支持设置限制后显示特定信息或重定向到某页面、网址等。自己看下配图,或直接下载体验下吧! 在内容控制界面可以添加不同的可见性规则: 通过简码设置部分内容可见性: 设置小工具可见性: 在后台插件安装界面搜索 Content Control 即可在线安装,或者在这里下载 Content Control 。已经汉化了该插件,不过插件有的小错误导致翻译失效,已经反馈给作者,并提交了中文包。如果你等不及要使用,可以下载修复好的 Content Control 简体中文版使用。 BTW,该作者还有一个不错的插件,根据用户条件来设置菜单的可见性,感兴趣的不妨看看:https://wordpress.org/plugins/user-menus/
自定义WordPress各种邮件通知的内容
本文目录[隐藏]1可自定义的通知2插件预览3插件下载 大家都知道,WordPress默认发送出去的邮件内容都是很简单的,对于没有开发能力的朋友来说,要改变邮件的内容非常困难。今天推荐这个Better Notifications for WordPress插件就可以这方面的问题。 Better Notifications for WordPress 是一个简单但功能强大的插件,适用于初学者和高级用户,允许您使用可视化编辑器和简码来自定义wordpress发送的电子邮件通知。不仅可以编辑所有WordPress默认的电子邮件通知,还可以添加新的各种邮件通知。您可以选择向单个用户、多个用户、用户角色中的所有用户、多个角色发送通知 – 并为这些通知自定义名称!邮件可以通过您的WordPress的网站(使用wp_mail)发送出去,也可以通过smtp插件发送。 举个栗子:如果有用户发布了新文章,你需要通知多个“编辑”角色的用户,来审核这些文章,就可以使用这个插件来实现,可以自定义邮件的内容和样式等等。 可自定义的通知 Better Notifications for WordPress 当前支持自定义以下情形的邮件: WordPress 默认通知 新评论/评论等待审核新的 Trackback新的 Pingback用户忘记密码 – 给管理员新用户注册 – 给管理员密码已更改 – 给管理员用户角色已更改 – 给管理员WordPress 核心自动后台更新 交互型 用户忘记密码 – 给用户密码已更改 – 给用户用户邮件地址已更改 – 给管理员新用户注册 – 给用户新用户 – 发送注册邮件用户角色已更改 – 给用户评论回复 文章 / 自定义文章类型 发布新文章文章已更新文章等待审核发布私密文章文章定时发布 页面 发布新页面页面已更新页面等待审核发布私密页面页面定时发布页面 – 新评论页面 […]
避免重复内容
重复内容是指有两个或者更多的页面有相同或者基本相同的内容。我们必须避免重复内容以免被搜索引擎惩罚。但是有时候我们需要在页面上显示2个(获这个更多)日志列表,通常我们是通过多个循环(一个标准的循环,一个来自特定的分类的循环)来实现。这样通常是你就能不仅想推荐最新写的日志,同时来自某个特定的分类。 <?php $my_query = new WP_Query(‘category_name=featured&showposts=1’); while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID;?> <!– Do stuff… –> <?php endwhile; ?> <!– Do other stuff… –> <?php if (have_posts()) : while (have_posts()) : the_post(); if( $post->ID == $do_not_duplicate ) continue; update_post_caches($posts); ?>] <!– Do stuff… –> <?php endwhile; endif; ?> 其他解决方案 […]

WordPress 主题教程 #5b:日志内容
日志内容是从零开始创建 WordPress 主题系列教程第五篇的第二部分,在这篇中,我们将展示如果显示博客日志的内容,并且使用一个 DIV 标签把博客日志的内容和日志的标题区分开。再次强调一次,上一篇关于 WordPress 主循环介绍的课程非常重要,你需要彻底明白之后才能继续学习。 下面开始这篇课程。首先还是打开 XAMPP,“tutorial”主题文件夹,浏览器并在浏览器地址栏输入:http://localhost/wordpress,最后打开 index.php。 第1步:使用 the_content() 函数显示日志内容 在日志标题代码下面输入:<?php the_content(); ?>。 保存并刷新浏览器,现在在日志标题下面看到了一些文本: 刚才发生什么了? 我们使用了 PHP 函数 the_content() 调用了 日志的内容。现在,日志的内容只是一长行的文本,一直到窗口的右边,因为我们还没有样式化它。还记得最开始说到的 style.css 这个文件吗?我们以后用它来控制所有页面元素的显示和布局。 我们在 WordPress 后台输入多篇多篇测试日志,就可以看到多篇日志一起被显示的样子: 返回浏览器,点击”查看”选择“页面源代码”,就会弹出一个源代码窗口,如果你使用的是 Internet Explorer,那么弹出的是记事本。 我使用的是 Firefox浏览器,下面是在 FireFox 中显示的样子: 你注意到 index.php 文件和它的源代码之间的区别了吗?所有的文本,图像和其他东西等所有上图展示的东西都是通过 the_content() 这个函数调用来的。是不是很有用?注意这些代码是不依赖具体的 WordPress 主题,我们应该自己的这些文本和图片进行编码和样式化。 还有,有没有注意到我圈出的开启和关闭的P标签。他们都没有在 index.php 文件中出现,但是他们在源代码中出现了。 P 标签,为什么和如何使用? 为什么 – 当我们输入日志的时候,每次跳过一行就是一个段落,这个时候需要一个方法去展示?我们可以通过 P (段落,paragraph)标签,每个段落会在 P 标签之间,这就是为什么段落之间有行距的原因, […]
WordPress 技巧:如何获取日志内容的第一段
如果日志没有填摘要,使用日志的第一段作为摘要是不错的选择,那么如何获取日志内容的第一段呢?可以使用下面的函数: function get_first_p($post){ //如果是使用 Windows Live Writer 这些工具写日志,可能使用<p>和</p>进行分段 if(preg_match(‘/<p>(.*)<\/p>/iU’,trim(strip_tags($post->post_content,”<p>”)),$matches)){ return $matches[1]; } else { //如果直接在 WordPress 写日志,使用换行符(\n)来分段 $post_content = explode(“\n”,trim(strip_tags($post->post_content))); return $post_content [‘0’]; } } 标签:WordPress 技巧
WordPress 技巧:如何获取日志内容的第一段
如果日志没有填摘要,使用日志的第一段作为摘要是不错的选择,那么如何获取日志内容的第一段呢?可以使用下面的函数: function get_first_p($post){ //如果是使用 Windows Live Writer 这些工具写日志,可能使用<p>和</p>进行分段 if(preg_match(‘/<p>(.*)<\/p>/iU’,trim(strip_tags($post->post_content,”<p>”)),$matches)){ return $matches[1]; } else { //如果直接在 WordPress 写日志,使用换行符(\n)来分段 $post_content = explode(“\n”,trim(strip_tags($post->post_content))); return $post_content [‘0’]; } } 标签:WordPress 技巧
WordPress 技巧:通过 ID 快速获取日志内容
如果已经知道 ID,我们一般可以通过下面的代码获取日志内容: $post = get_post($post_id); $post_content = $post->post_cotent; 其实我们可以通过 get_post_field 这个函数更简单更快速的方式获取日志内容: $post_content = get_post_field(‘post_content’, $post_id); 实际上这个函数还可以用来快速获取日志的其他字段,详细可以参考 get_post_field 函数的 codex 页面。 标签:WordPress 技巧

