wordpress插件

插件列表

  • Akismet 反垃圾评论,需要申请 api key:https://akismet.com/signup/#personal
  • WP Super Cache:先装该插件,启动就可以了
  • Redis Object Cache:①需要设置 Redis 服务器,否则缓存刷新有问题 ,②多网站需要配置前缀。参考 插件 Redis Object Caches 设置 部分
  • WP Githuber MD: 一个为 WordPress 网站提供全功能 Markdown 语法的插件。
  • Disable XML-RPC-API:Lightweight plugin to disable XML-RPC API and Pingbacks,Trackbacks for faster and more secure website.关闭 Enable xml-rpc for Jetpack
  • Wordfence Security – Firewall & Malware Scan:安全插件
  • Table of Contents Plus: 文章目录
  • FileBird: 管理图片
  • WP Statistics: 统计分析: 启用缓存兼容,启用访问识别(Geoip 等),启用缓存兼容。对网页访问速度有影响。
  • Autoptimize: 可以压缩 html,去掉注释。与 WP Super Cache 插件无冲突。设置优化 JS,CSS,HTML, 可能导致不可预知的问题
  • Custom Taxonomy Order: 可以调整分类等的顺序
  • Companion Auto Update:本插件可自动更新所有插件、主题与 WordPress 内核。自动更新所有,可以启动每个插件的自动更新,不使用该插件
  • One User Avatar: 使用您媒体库的任一图像作为自定义用户头像,添加自定义默认头像。
  • Fixed Widget:使用 fixed widget 小工具插件来创建粘性窗口小工具,这些页面在向上或向下滚动页面时会停留在可见的屏幕区域中,从而提高转化率。
  • WP Mail SMTP
  • WPS Hide Login:通过更改登录 URL 并在未登录时阻止访问 wp-login.php 页面和 wp-admin 目录来保护您的网站
  • Yet Another Related Posts Plugin (YARPP):Adds related posts to your site and in RSS feeds, based on a powerful, customizable algorithm.
  • Google Analytics for WordPress by MonsterInsights:Google 网站分析插件,这之前需要在 Google Analytics 上添加网站。
  • Theme Check:检查主题,如果用的是 wordpress 官方主题,实际上可以不考虑安装。
  • Bulk Delete:批量删除帖子等

插件 WP Githuber MD

  • Markdown Extra
  • GFM 工作清单

插件 WP Githuber MD 任务列表显示异常

列表项目之间不能有空行,如下列表就会显示异常

- [ ] item1
- [ ] item2

- [] item3

插件 WP Githuber MD 代码 copy 显示异常

禁用 copy 功能

插件 Redis Object Caches 设置

插件 Redis Object Cache 不自动更新
1. 设置 wordpress
参考:https://github.com/rhubarbgroup/redis-cache/wiki/Configuration-Options

编辑 wp-config.php,

// WP_REDIS_MAXTTL (default: not set)
// Set maximum time-to-live (in seconds) for cache keys with an expiration time of 0.
define('WP_REDIS_MAXTTL', '360');

2. 设置 redis 并重启

  • 关闭 appendonly
  • 设置 appendfsync 为 no
  • 更改配置文件,并重启 redis
save ""

#save 900 1
#save 300 10
#save 60 10000

3.php 版本安装对应的 redis 插件

  1. wordpress 后台设置 redis 插件,flush cache

多网站插件 Redis Object Cache 设置,编辑 wp-config.php

define('WP_CACHE_KEY_SALT', ' 你的网站域名或其他特殊意义字符串,如 rm');
define('WP_REDIS_SELECTIVE_FLUSH', true);
  • 第一行是给 Redis 缓存一个独特的前缀,否则多站点时容易混乱
  • 第二行意义在于刷新 Redis 缓存时是否只刷新当前站点,false 代表刷新全部站点,设置为 true 即可。

公式测试

$$P1=5,P2=7,Q1=500,Q2=300,E=\\frac{\\frac{300-500}{(500+300)/2}}{\\frac{7-5}{(5+7)/2}}=\\frac{-200/400}{2/6}=-1.5 $$

$P1=5,P2=7,Q1=500,Q2=300,E=\\frac{\\frac{300-500}{(500+300)/2}}{\\frac{7-5}{(5+7)/2}}=\\frac{-200/400}{2/6}=-1.5 $

效果:

$$P1=5,P2=7,Q1=500,Q2=300,E=\frac{\frac{300-500}{(500+300)/2}}{\frac{7-5}{(5+7)/2}}=\frac{-200/400}{2/6}=-1.5 $$

$P1=5,P2=7,Q1=500,Q2=300,E=\frac{\frac{300-500}{(500+300)/2}}{\frac{7-5}{(5+7)/2}}=\frac{-200/400}{2/6}=-1.5 $

插件 WP Githuber MD 对 Mathjax 的支持并不好。

sql 转义导致高亮代码显示异常

不应该修改 sql 转义规则,而是修改前端的显示内容,主题的 single.php 文件添加如下代码:

js_html_escape.txt

插件 WP Githuber MD 的代码显示行号的问题

除非主题存在该问题,否则不用安装该插件。

参考 解决 Githuber MD 插件代码高亮不能正常工作的问题:

  • 安装 Enlighter - Customizable Syntax Highlighter 插件。
  • 在主题中添加 HTML 标签转换的 PHP 代码: 找到主题的 inc/theme-core.php 文件,打开之后将这段代码复制进去,保存即可。复制代码时主要把代码放在 <?php> 标签内。
function getPar($par,$str){$pieces = preg_split($par, $str,-1,PREG_SPLIT_DELIM_CAPTURE);
    $result ='';
    foreach($pieces as $piece){$result.=$piece;}
    return $result;
}
// 转换代码高亮器
function bTagFilter($content) {$pattern_full = '{(<pre><code class="language-[\s\S]*?">[\s\S]*?<\/code><\/pre>)}';
        $pattern_full1 ='{<pre><code class="language-[\s\S]*?">([\s\S]*?)<\/code><\/pre>}';
        $pattern_full2 ='{<pre><code class="language-([\s\S]*?)">[\s\S]*?<\/code><\/pre>}';
        // 使用短代码的正则分割字符串
        $pieces = preg_split($pattern_full, $content,-1,PREG_SPLIT_DELIM_CAPTURE);
        $new_content = '';
        // 遍历所有的字符串 含有段代码的字符串不做自动处理
        foreach($pieces as $piece) {if (preg_match($pattern_full, $piece, $matches)) {$code = $matches[0];
                $lug = getPar($pattern_full2,$piece);
                $code = getPar($pattern_full1,$piece);
                $code = '<pre class="EnlighterJSRAW" data-enlighter-language="'.$lug.'">'.$code.'</pre>';
                $new_content .= $code;
            } else {$new_content .= $piece;}
        }
    return $new_content;
}
add_filter('the_content', 'bTagFilter', 99);

wordpress 插件 WP Super Cache

WP Super Cache 插件提供两种主要的缓存模式

  1. 简单模式

不推荐。虽然在插件安装后默认推荐使用这样的方式,是因为启用这个缓存模式是最简单的,不需要服务器配置和规则,只要能够正常运行 WordPress 就可以了,因为这种缓存模式主要使用由 php 提供缓存。

  1. 专家模式

这是最快的方式,通过 Mod_Rewrite 模块向用户提供 WP Super Cache 生成的缓存文件,这样就直接绕过 WordPress php 从数据库中查询,可以说是速度杠杠的,如果你是 Apache 服务器则需要修改。htaccess 文件,Nginx 服务器也需要添加 Nginx 规则。

这种模式可以通过命令行删除缓存文件, 达到更新缓存文件的目的。

专家模式设置

参考: Nginx | WordPress.orgWP Super Cache Rules 部分, wordpress 后台设置为专家模式, 同时 nginx 的 server 配置文件添加:

# refer to https://wordpress.org/support/article/nginx/#wp-super-cache-rules ===>
# WP Super Cache rules.
# Designed to be included from a 'wordpress-ms-……' configuration file.

set $cache_uri $request_uri;

# POST requests and urls with a query string should always go to PHP
if ($request_method = POST) {set $cache_uri 'null cache';}

if ($query_string != "") {set $cache_uri 'null cache';}   

# Don't cache uris containing the following segments
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)") {set $cache_uri 'null cache';}   

# Don't use the cache for logged in users or recent commenters
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in") {set $cache_uri 'null cache';}

# Use cached or actual file if they exists, otherwise pass request to WordPress
location / {try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php?$args ;}    
# <===  refer to https://wordpress.org/support/article/nginx/#wp-super-cache-rules

如果网站启用了 https, 最后几行替换为:

location / {try_files /wp-content/cache/supercache/$http_host/$cache_uri/index-https.html $uri $uri/ /index.php?$args ;}

这里 try_files 对应的代码段放在 location / 里, 替换原来的 try_files 对应的值。

生成的缓存内容在类似目录下: ~/wp-content/cache/supercache/xxxx.com, 删除该目录下的所有文件相当于清空了缓存。

参考

插件 WP Statistics

该插件貌似和其他一些插件有冲突,数据显示差异很大。放弃。

GeoIP 无法更新,手动更新:

参考 https://github.com/wp-statistics/GeoLite2-Countryhttps://raw.githubusercontent.com/wp-statistics/GeoLite2-Country/master/GeoLite2-Country.mmdb.gz 手动下载文件,解压上传到 wp-content/uploads/wp-statistics/GeoLite2-Country.mmdb

参考 https://github.com/wp-statistics/GeoLite2-Cityhttps://github.com/wp-statistics/GeoLite2-City/raw/master/GeoLite2-City.mmdb.gz, 手动下载文件,解压上传

评论(没有评论)