IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    我的设备插件(WordPress 插件) — 就爱重复造轮子

    obaby发表于 2025-06-02 07:21:35
    love 0

    这个假期事情有点多,也就没回老家。主要是自己最近也不想回,好处就是有点时间可以折腾自己喜欢的东西。

    说的更直接点就是有时间瞎折腾,不过这第一次的效果并不是很好,例如录的视频,mic声音太小的,只能强行网上拉。录视频的时候发现原来的录屏工具注册失败了,变成了未授权。ScreenRecorderpro 7.0在双4k屏上尝试录制,直接崩溃了,升级到8.0发现注册没处理好,有的地方没搞。

    新版变成了64位的,懒得去修改二进制文件了,直接修改hosts屏蔽掉服务器校验:

    __int64 __fastcall CheckSNOnLine(unsigned int a1, unsigned int a2)
    {
      __int64 v2; // rdx
      __int64 v3; // rbx
      const WCHAR *v4; // rax
      const WCHAR *v5; // rax
      __int64 v6; // rdx
      __int64 v7; // rax
      __int64 WebContent; // rax
      __int64 v9; // rsi
      __int64 v10; // rdx
      __int64 v11; // rdx
      unsigned int vars44; // [rsp+44h] [rbp+44h]
      __int64 vars48; // [rsp+48h] [rbp+48h] BYREF
      __int64 vars50; // [rsp+50h] [rbp+50h] BYREF
      __int64 vars58; // [rsp+58h] [rbp+58h] BYREF
      __int64 vars60; // [rsp+60h] [rbp+60h] BYREF
      __int64 vars68; // [rsp+68h] [rbp+68h] BYREF
      __int64 vars70; // [rsp+70h] [rbp+70h] BYREF
      __int64 vars78; // [rsp+78h] [rbp+78h] BYREF
      int vars8C; // [rsp+8Ch] [rbp+8Ch] BYREF
      __int64 vars90; // [rsp+90h] [rbp+90h] BYREF
      __int64 vars98; // [rsp+98h] [rbp+98h] BYREF
      __int64 varsA0; // [rsp+A0h] [rbp+A0h] BYREF
      __int64 varsA8; // [rsp+A8h] [rbp+A8h] BYREF
      __int64 varsB0; // [rsp+B0h] [rbp+B0h] BYREF
      __int64 varsB8; // [rsp+B8h] [rbp+B8h] BYREF
    
      vars48 = 0;
      vars50 = 0;
      vars58 = 0;
      vars60 = 0;
      vars68 = 0;
      vars70 = 0;
      vars78 = 0;
      varsB8 = 0;
      varsB0 = 0;
      varsA8 = 0;
      varsA0 = 0;
      vars98 = 0;
      vars90 = 0;
      sub_7CDDB0(&varsA0);
      sub_7CC140(&varsB8, a1, a2);
      LOBYTE(v2) = 1;
      v3 = sub_59E6D0(&qword_59D078, v2);
      sub_59E980(v3, -2147483646);
      *(_DWORD *)(v3 + 44) = 131097;
      if ( (unsigned __int8)sub_59EB90(v3, varsB8, 0) )
      {
        sub_59F9E0(v3, &varsA8, L"LastTime");
        sub_59F9E0(v3, &varsB0, L"SN");
      }
      sub_59E940(v3);
      sub_434690(&vars78, varsB0);
      if ( !vars78 )
      {
        sub_59E980(v3, -2147483647);
        *(_DWORD *)(v3 + 44) = 131097;
        if ( (unsigned __int8)sub_59EB90(v3, varsB8, 0) )
        {
          sub_59F9E0(v3, &varsA8, L"LastTime");
          sub_59F9E0(v3, &varsB0, L"SN");
        }
        sub_59E940(v3);
      }
      sub_410F80(&vars70, L"*************:", varsA8);
      v4 = (const WCHAR *)sub_410B40(vars70);
      OutputDebugStringW(v4);
      sub_410F80(&vars68, L"--------------:", varsB0);
      v5 = (const WCHAR *)sub_410B40(vars68);
      OutputDebugStringW(v5);
      if ( (unsigned int)sub_411190(varsA8, varsA0) )
      {
        sub_434690(&vars60, varsB0);
        sub_40FF60(&varsB0, vars60);
        if ( varsB0 )
        {
          if ( (unsigned __int8)sub_7CB9B0() )
          {
            sub_7CC030(&vars58);
            sub_4110B0(&vars98, 3, L"http://gilisoft.com/webtools/livecheck/IsValidKey.php?key=", varsB0, vars58);
            sub_40F8B0(&vars90);
            if ( (unsigned int)sub_7CB9E0() )
            {
              sub_4106C0(&vars50, vars98, 0);
              v7 = sub_4105E0(vars50);
              WebContent = CURL_GetWebContent(v7, &vars8C);
              v9 = WebContent;
              if ( vars8C > 0 )
              {
                sub_410BA0(&vars90, WebContent);
                CURL_FreeBuffer(v9);
                sub_434690(&vars48, vars90);
                sub_40FF60(&vars90, vars48);
              }
            }
            else
            {
              sub_7CBA00(&vars90, vars98);
            }
            if ( (unsigned int)sub_411190(vars90, L"expired") )
            {
              *(_DWORD *)(v3 + 44) = 131103;
              if ( (unsigned __int8)sub_59EB90(v3, varsB8, 0) )
                sub_59F940(v3, L"LastTime", varsA0);
              sub_59E940(v3);
              LOBYTE(v11) = 1;
              (*(void (__fastcall **)(__int64, __int64))(*(_QWORD *)v3 - 32LL))(v3, v11);
              vars44 = -1;
            }
            else
            {
              *(_DWORD *)(v3 + 44) = 131103;
              if ( (unsigned __int8)sub_59EB90(v3, varsB8, 0) )
                sub_59F940(v3, L"SN", &dword_7CE3DC);
              sub_59E940(v3);
              LOBYTE(v10) = 1;
              (*(void (__fastcall **)(__int64, __int64))(*(_QWORD *)v3 - 32LL))(v3, v10);
              vars44 = 0;
            }
          }
          else
          {
            vars44 = -1;
          }
        }
        else
        {
          LOBYTE(v6) = 1;
          (*(void (__fastcall **)(__int64, __int64))(*(_QWORD *)v3 - 32LL))(v3, v6);
          vars44 = 0;
        }
      }
      else
      {
        sub_40C4B0(v3);
        vars44 = -1;
      }
      sub_40F8B0(&vars48);
      sub_40F900(&vars50);
      sub_40F990(&vars58, 5);
      sub_40F990(&vars90, 6);
      return vars44;
    }

    反正,能用就ok拉:

    今天上午,有点时间,有拿出上周搞的那个我的设备页面插件,这个东西其实最开始也是抄来的:

    抄作业–我的设备

    前端时间,看大家都更新了,开始基于post类型来做展示,每个设备都是个单页能回复评论,忘了在谁那里看的了。总觉得有些过去强大了,虽然也是个插件。

    最终还是决定自己找个轮子,于是就有了这个东西,使用插件生成的页面:

    https://h4ck.org.cn/my-devices

    整体页面样式沿用原来的,也不用在主题自定义添加css中添加样式了。新建页面,插入short code即可:

    # Baby Device Manager
    
    一个功能强大的WordPress设备管理系统插件,支持设备分组管理、设备信息管理、自定义排序、状态跟踪等功能。
    
    ## 功能特点
    
    - 设备分组管理
      - 创建和管理设备分组
      - 自定义分组排序
      - 分组描述信息
    - 设备管理
      - 添加/编辑/删除设备
      - 设备状态管理(在售、停售、已售出、维修中、已报废)
      - 设备图片和产品链接
      - 自定义设备排序
      - 设备描述信息
    - 前端展示
      - 响应式布局
      - 按分组分类显示
      - 支持多种排序方式
      - 美观的界面设计
      - 支持自定义每行显示设备数量(1-6个)
    - 其他功能
      - 图片管理:支持设备图片上传和显示
      - 产品链接:支持添加产品详情页链接
      - 状态跟踪:支持多种设备状态管理
      - 自定义排序:支持设备分组和设备的自定义排序
    
    ## 安装要求
    
    - WordPress 5.0 或更高版本
    - PHP 7.2 或更高版本
    - MySQL 5.6 或更高版本
    
    ## 安装方法
    
    1. 下载插件压缩包
    2. 在WordPress后台进入"插件 > 安装插件"页面
    3. 点击"上传插件"按钮,选择下载的压缩包
    4. 安装完成后点击"启用插件"
    
    ## 使用方法
    
    ### 管理界面
    
    1. 设备分组管理
       - 进入"设备管理 > 设备分组"
       - 添加新分组:填写分组名称、描述和排序值
       - 编辑现有分组:修改分组信息或删除分组
       - 排序值越小,显示越靠前
    
    2. 设备管理
       - 进入"设备管理 > 添加设备"
       - 填写设备信息:
         - 设备名称
         - 所属分组
         - 设备描述
         - 设备状态
         - 设备图片URL
         - 产品链接
         - 排序值
    
    ### 前端显示
    
    使用 shortcode 在页面或文章中显示设备列表:
    
    1. 基本用法
    ```
    【baby_devices】
    ```
    
    2. 按分组显示
    ```
    【baby_devices group="分组名称"】
    ```
    
    3. 按状态显示
    ```
    【baby_devices status="在售"】
    ```
    
    4. 自定义排序
    ```
    【baby_devices orderby="sort_order" order="ASC"】
    ```
    
    5. 组合使用
    ```
    【baby_devices group="厨房电器" status="在售" orderby="sort_order" order="ASC"】
    ```
    
    6. 自定义每行显示数量
    ```
    【baby_devices per_row="4"】
    ```
    
    ### Shortcode 参数说明
    
    - `group`:按分组名称筛选
    - `status`:按设备状态筛选
    - `orderby`:排序字段
      - `sort_order`:按自定义排序(默认)
      - `created_at`:按创建时间
    - `order`:排序方向
      - `ASC`:升序(默认)
      - `DESC`:降序
    - `per_row`:每行显示设备数量(1-6个,默认:3)
    
    ### 设置
    
    1. 在WordPress后台菜单中找到"设备管理 > 设置"
    2. 设置每行显示设备数量(1-6个)
    3. 点击"保存设置"按钮保存
    
    ## 注意事项
    
    1. 首次启用插件时会自动创建必要的数据表
    2. 删除插件时不会自动删除数据表,需要手动删除
    3. 建议定期备份数据库
    4. 图片URL需要是可访问的完整地址
    
    ## 更新日志
    
    ### 1.0.4
    - 修复状态按钮样式问题
    - 优化状态类名生成逻辑
    
    ### 1.0.3
    - 添加新的设备状态选项
    - 优化数据库表结构
    
    ### 1.0.2
    - 更新数据库表结构
    - 优化设备状态显示
    
    ### 1.0.1
    - 添加设备显示设置功能
    - 支持自定义每行显示设备数量
    
    ### 1.0.0
    - 初始版本发布
    - 支持设备分组管理
    - 支持设备信息管理
    - 支持自定义排序
    - 支持前端展示
    
    ## 技术支持
    
    如有问题或建议,请访问:
    - 官方网站:https://h4ck.org.cn
    - 问题反馈:https://h4ck.org.cn/contact
    
    ## 作者
    
    - obaby
    - 网站:https://h4ck.org.cn
    
    ## 许可证
    
    GPL v2 或更高版本

    需要使用英文的括号替换中文的方括号【】

    系统截图:

    项目地址:

    GitHub – obaby/Baby-Device-Manager: 一个功能强大的WordPress设备管理系统插件,支持设备分组管理、设备信息管理、自定义排序、状态跟踪等功能。

    插件zip包下载:

    https://www.123912.com/s/ucY7Vv-iwAAA?提取码:PjEH

    https://www.123865.com/s/ucY7Vv-iwAAA?提取码:PjEH

     

    The post 我的设备插件(WordPress 插件) — 就爱重复造轮子 appeared first on obaby@mars.



沪ICP备19023445号-2号
友情链接