年中有 872 篇记录
2022年5月23日 -

之前方向有问题,用cat来做导航分类(新增、修改、删除自动同步到page和category),所以出了一个问题,当使用user_trailingslashit函数去除category目录的时候(当前页面类型为category)直接访问返回404错误,这个问题在登录wp后台后又自动没有了,于是使用get_pages()做页面导航,但是又存在访问文章页无法定位当前父级(上级)所属页面,在使用 category 作为导航的时候,直接使用 in_category 即可判断文章对应父级,但页面类型为page时无法使用 in_category 判断,,暂无解决方案。

Ps.

想一想还是用category做导航算了,毕竟还花了几天写分类页面同步来着..

2022年5月23日 -

2022年5月13日 -

看了很久的监控设备,感觉网上卖的都太普通了,变焦都假的,全是幌子。后来偶尔看到一个100块收一个坏掉的球机的视频,就是道路监控那种,那个光学变倍非常清晰感觉很是惊艳,于是萌生了给我也整一个的想法。后续就一直在咸鱼上关注这个东西,看来看去最后选了个大华 6 寸 200 万 sd-6a8240ub-hni (网上搜了下官网没有这个带 ub 的型号,应该是工程定制的,因为很多政府招标采购上都有)。这个球机主要参数有 40倍光学变倍,16倍数字变倍,支持>250m夜视激光补光,支持雨刷(雨刮器)、支持内存卡(无需录像机)及 ftp、nas 储存,支持手机app查看控制。这个球机二手价格在1k左右,带壁装支架,不含电源。后续购买了相应安装设备:AC24V3A大华球机电源(二手40多),wifi中继/ap/路由设备(200买了两个,一个插头版一个usb供电版,用作wifi转rj45网口)、15m网线(20多,方便球机联网牵线)、128g sd/tf 内存卡(60多,用于球机本地储存,后续打算把储存改到 nas 服务器上)等设备。
球机有很多根尾线,audio音频(拾音器/喇叭)、alarm(警报线路)、video(视频输出线路)、rs485(球机控制线路)、power(电源线/ac接线/地线)、rj45网口接线。其中主要的就是最后两个,电源线和网线,这两根线接好就可以初始化球机了。球机接线接软铜线的时候还当了一把电工,网上搜了下才发现接法还有些门道,后面一次成功点亮。
体验是非常不错的,因为之前在卖家发货之前就分享测试机使用了,首先光学变倍很清晰,大cmos就是不一样,真·一公里看清车牌,晚上激光夜视也很清晰(没有强光遮挡看5、600m完全没问题),变焦也很快,机子很重,大概12斤左右

Ps.

初始化球机遇到了很多问题,第一步就出错了:初始化球机首先需要将球机通电,同时将 rj45 网线一端接上球机,另一端接上电脑(注意是接到电脑上而不是路由器)之后再去修改球机连接到电脑的以太网 ip 为 192.168.1.xxx(xxx自定义,一般大于100)网关为 192.168.1.1,确认电脑与球机处于同一网段内后访问 192.168.1.108(大华默认初始化ip)进行下一步设置(就这第一步一直访问不了默认ip就搞了我好几个小时,到后面用工具检测甚至发现球机已经被初始化了,我都有点怀疑他们发货时都没给我初始化,因为默认ip界面都没进去过咋可能初始化的了呢?各种误导坑爹操作,一开始球机连接网线也没说是直连插电脑上,改ip网段本来是改连接球机的以太网ip网段,但让我改的是连接的wifi网段,的确不专业,后面还一度怀疑我ip没设置对,给我远程控制帮我设置,...),确认能在浏览器访问球机默认ip后就简单了,后面就是进入管理员设置默认ip段(192.168.1.108)为路由器网段(连上网后 cmd 输入 ipconfig 查看 ipv4 对应网段 xxx.xxx.xxx.xxx,注意网段设置访问要在路由器DHCP(一般为100-255,登陆路由器后台管理页面查看)起始值之间),以便后续联网访问球机(这一步需要将球机连接电脑的网线拔掉,然后插到路由器上,也就是将球机直连到路由器上来自动获取到刚刚设定的路由器ip段),修改球机ip段为路由器网段后记得把网络改回自动获取ip以便联网,然后使用新设置的路由器ip网段访问球机后台设置第三方平台接入即可。

2022年5月13日 -

2022年4月30日 -

突然发现网站打不开,但是偶尔又可以加载https(443)的资源,服务端 service nginx start返回 nginx: [emerg] bind() to 0.0.0.0:9699 failed (98: Address already in use),这个端口是我用来做seafile储存的,端口被占用应该是上次服务器全部重启部署的时候出现的,执行 sudo fuser -k 9699/tcp 后重启nginx服务即可。

Ps.

奇怪的是杀掉9699进程后,重启nginx服务后,执行 netstat -ltunp 依旧能看到9699进程在运行中,不同的是多了一个 80 绑定到 nginx:master,出现重复绑定 nginx master 端口的原因是我自己在 nginx 中自定义绑定了指定端口到 nginx 上..

2022年4月30日 -

2022年4月24日 -

今天回家在三环路的左侧靠边路上看到一只小猫,当时速度很快,而且看到小猫的时候已经从它身边经过了,当时车流量也有点大,车来车往的导致这只小猫被困在路边不敢动弹,非常无助… 我觉得当时这种情况会不会又是被车上的人遗弃的呢,哎..

Ps.

(如果能提前看到小猫的话我应该会开双闪下车戴上手套把小猫抓来放车上吧.. 戴手套是前车之鉴,之前救小猫被抓过..

2022年4月24日 -

2022年4月22日 -

有点无语,之前一直都是用文章分类在做站点导航,包括后续的功能函数都是围绕这个写的,现在发现页面导航貌似更方便些,很多写的功能在页面导航里都有.. 现在考虑要不要换成页面导航,还是说结合两者来做导航的问题

Ps.

蛋疼。。。

2022年4月22日 -

2022年4月19日 -

admin-ajax返回500错误的原因已找到,因为存在更新term分类时联动更新对应page页面,更新page页面时同步term分类数据的需求。
问题:更新term或page时无限转圈,后台查到返回500错误且一直重复请求。
原因:保存post(page)文章时更新 term 分类时由于wp文章草稿回档问题引发了无限循环更新(循环请求更新返回500错误但数据已更新的原因应该是,第一次匹配到指定更新数据,但第二次该数据已删除但请仍在请求更新所以返回500无限循环请求)。
方案:在 save_post 钩子内执行 wp_update_term 更新相关分类时,因为wp默认存在 revision 回档文章数据,所以在执行分类更新时需使用 wp_is_post_revision 判断当前更新 post_id 是否为存档文章,是则使用 remove_action 移除掉相关 hook 后再执行 wp_update_term 更新,然后再 add_action 添加该 hook!,否则直接执行 wp_update_term 更新分类。

Ps.

问题主要是没细看文档,更新分类 wp_update_term 钩子中貌似没有详细描述该循环问题,但更新文章 wp_update_post 钩子中文档里写了关于 Infinite loop 的相关说明,见:wp_update_post()、wp_update_term() WP新增/删除分类时候无限转圈已修复,未知原因:functions.php 尾部多余的“php开头/结尾符”.. 顺带一提:sitemap无法生成是原因是因为 sitemap.php 内使用相对路径“.././././”调用了 wp-load.php(需要使用wp的 get_option 函数所以需要加载wp文件)但在某些情况下无法正常获取到,所以出错了。(问题是这个原因是再另一个wp程序上测试出来的,因为另一个wp程序给我发错误邮件了,不知道为什么这个主题没有发送错误邮件,显示的是5.2版本开始就支持了..) 目前已实现创建/编辑/删除分类时同步数据到对应页面,创建分类时会自动创建对应name/slug页面,删除分类时将直接删除页面(默认分类没有回收站,所以当分类被删除时,对应页面将绕过回收站直接删除)。注意新建页面时不会创建对应分类,删除页面时会自动查询该页面是否存在已绑定的分类并删除(一般来说不建议通过页面来删除分类,会返回一个删除错误,即使已经正常删除页面及分类,目前该问题仍在解决中)

2022年4月19日 -