WordPress 使用小技巧

wordpress 使用记录

如果您是录找以下内容,请看对应文章。


一台云服务器Windows篇:09、WordPress 中有:

  • 固定链接的配置
  • 禁用修订记录与自动保存
  • WP Mail SMTP的配置
  • sitemap与robots.txt

WordPress 插件

必备类

  1. Nginx Helper:清理 nginx 的 fastcgi/proxy 缓存或 redis-cache,WordPress的Nginx fastcgi_cache配置方法见:一台云服务器Windows篇:10、Nginx Web 缓存服务
  2. WP Mail SMTP:邮件发送,配置方法见:一台云服务器Windows篇:09、WordPress
  3. Simple Local Avatars:实现上传用户头像
  4. Simple Cloudflare Turnstile:人类验证器,可保护评论、表单、登录。
  5. Redirection:管理所有“301重定向”并且监视“404错误”

前端效果类

  1. WPForms Lite:表单
  2. WP Dark Mode:深色模式
  3. WPFront Scroll Top:滚动到页面顶部
  4. Code Block Pro:由 VS Code 引擎驱动的代码高亮
  5. PDF.js Viewer:与PDF Embedder相比各有优缺点,但都支持Nginx防盗链处理。
    • PDF Embedder单页显示,没有书签,手机上显示也没有问题;但无论web/手机都有个问题,pdf页面偏右了,左侧有空白,也可能主题原因。

后台管理类

  1. WP-Sweep:清理数据库中记录
  2. Media Cleaner:清理媒体库中未被引用的文件,但注意会把上传的用户头像、默认用户头像也给清理了,需要手工忽略。
  3. WP Statistics:访问统计
  4. Admin Menu Editor:插件安装多后,菜单很乱,就可以通过这个来调整了。调整后,后台菜单整洁了。
  5. Disable WP REST API:为未登录WordPress的访客禁用WP REST API。
    • WordPress REST API 默认是开放状态的,因为有很多程序都是基于Rest API实现的,所以直接禁用显示是不合适的,给WordPress Rest API 设置访问权限,来增加我们网站的安全性。
    • REST API Authentication for WP:如名称,提供不同的验证方法,保护 WP REST API 端点免受公共访问;基本功能免费,高级功能收费。
      • REST API Authentication for WP 与 Disable WP REST API 各有特点,便二选一就可以了。
  6. Filebird:在媒体管理器中,增加文件夹分类,免费版最多10个。

编辑器类

  1. LuckyWP Table of Contents:为您的文章或页面,自动或手工创建目录。使用方法见:一台云服务器Windows篇:09、WordPress
  2. Mammoth .docx converter:在文章或页面的编辑器里,可以使用从上传的docx文件中提取内容;使用下来,是很好的工具,就是对表格与链接支持的不友好。
    • 反向,将文章导出docx文件:在WORD中【文件–共享–发布至博客:打开现有文章–选中–另存为】,前提是/xmlrpc.php 可用。

插件:PDF.js Viewer 默认为手形工具与打开书签侧边栏

在 wp-content\plugins\pdfjs-viewer-shortcode\pdfjs\web\viewer.js 文件中【const defaultOptions = {】节点里,分别查找 cursorToolOnLoad 与 sidebarViewOnLoad 。

cursorToolOnLoad 将 value 的值由-1改为1后的代码:(手形工具值为1,文本选择工具是-1)

  cursorToolOnLoad: {
    value: 1,
    kind: OptionKind.VIEWER + OptionKind.PREFERENCE
  },

sidebarViewOnLoad 将 value 的值由-1改为2之后的代码:(页面的侧边栏值为1,关闭侧边栏是-1)

  sidebarViewOnLoad: {
    value: 2,
    kind: OptionKind.VIEWER + OptionKind.PREFERENCE
  },

PDF文件:快速WEB视图、Fast Web View

在adob reader、福昕的设置中配置后,再另存PDF文件时,PDF文件启用了。

WordPress 个性化调整

文章浏览时,段落首行自动缩进2个字符

网上教程,好多有问题,会把按钮上文字也缩进了。

在后台编辑主题的 style.css 文件:(最后面添加,缺点是主题更新要重新手工添加一次)

/* 文章段落首行缩进,但分栏里段落不做缩进(比如标签云的块),只对div的id有效。*/
.wp-block-post-content p {
    text-indent: 2em;
}
.wp-block-columns p {
    text-indent: 0em;
}

启用固定链接后,在文章中显示短链接。

默认是/?p=id方式,URL很短,固定链接的URL很长,各有优缺点。

  1. 在后台编辑主题的 functions.php 文件:(最后面添加,缺点是主题更新要重新手工添加一次)
// 在functions.php中添加简码支持:三行return,注释二个,只留一个。
add_shortcode('post_shortlink', 'post_shortlink_handler');
function post_shortlink_handler($atts) {
    $post_id = get_the_ID();
    $shortlink = home_url('/?p=') . $post_id;
//    return '短链接: <a href="' . esc_url($shortlink) . '">' . esc_html($shortlink) . '</a>';
    return '短链接: <a href="' . esc_url($shortlink) . '">blog.t725.cn/?p=' . esc_html($post_id) . '</a>';
//    return '短链接:blog.t725.cn/?p='. esc_html($post_id);
}
  1. 在文章或页面内容的模板编辑中插入简码块,输入:
[post_shortlink]

内联代码样式自定义

在 WordPress 后台转到:外观 -> 主题 -> 自定义 -> 额外CSS,把下面的 CSS 代码复制到里面:

  • 在主题的 style.css 文件中添加,无效。
  • 文章与评论中的内联代码样式,都会有效果。
/* 内联代码样式自定义 */
code {
    background-color: #FBFAF3;
    border-radius: 0.2rem;
    color: inherit;
    font-size: 100%;
    font-family: monospaced-font;
    padding: 0em 0.5em 0em 0.5em;
    text-decoration: none;
    white-space: nowrap;
}

修改上传文件最大的大小

Nginx:改完要重新加载配置

# 在 http/server/location 位置上,都支持添加
client_max_body_size 5m; 

php.ini:改完要重启php-cgi.exe

upload_max_filesize = 5M

在区块编辑器里上传文件,提示:抱歉,你无权上传此文件类型。

在区块编辑器里上传压缩包文件,出这个提示了;搜索了一下,有说改wp-config.php文件,或者改主题的functions.php文件,又或者安装Mime Types插件。

但还有一个办法:直接在【添加媒体文件】中上传文件,再到区块编辑器里选择这个文件就可以了。注意:要回到【媒体库】里,将这个文件与文章关联起来,否则这个文件,是孤立状态。

WordPress各类API的保护

关闭pingback与trackback

新增文章关闭pingback与trackback

历史文章关闭pingback与trackback

UPDATE wp_posts p SET p.ping_status='closed' WHERE p.ping_status <>'closed';

在Nginx中保护xmlrpc.php、phpinfo.php

如果自己也不打算使用,就简单了。

        location ^~ /xmlrpc.php {
            return 403;
        }
        location ^~ /phpinfo.php {
            return 403;
        }

基于白名单ip地址,放行静态资源的配置示例。(allow 与 deny 作用域 http / server / location / limit_except)

        location ^~ /xxx {
            include vhost/whitelist.conf;
            deny    all;
            root   C:/webData/WordPress;
            index  index.php index.html index.htm;
        }

conf/vhost/whitelist.conf文件内容,一行一个ip址址或ip段:

allow 1.2.3.4;
allow 192.168.13.0/24;

使用计划任务执行wp-cron.php

当有人访问您的网站时,WordPress 只会自动检查计划的作业。如果您的站点访问量低,那么您预定的帖子可能无法按时发布。如果您的网站流量很大,那么 wp-cron 将被频繁检查,这可能会影响您网站的性能。

  1. 在 wp-config.php 文件中,”stop editing” 的上面添加 DISABLE_WP_CRON
define( 'WP_DEBUG', false );
define( 'DISABLE_WP_CRON', true );
/* Add any custom values between this line and the "stop editing" line. */
  1. 计划任务中定期执行:
    • 先手工执行一次,确认成功。
    • 如果报错 curl: (60) SSL certificate problem: unable to get local issuer certificate 则使用 --insecure 替代 --ca-native 参数。
curl.exe --ca-native https://x.y.z/wp-cron.php?doing_wp_cron
if %errorlevel% NEQ 0 echo ERROR: curl.exe failed to execute >> %logFile%

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注