1、Nginx配置文件添加伪静态规则
# 屏蔽RiTheme授权验证请求location ~* (ritheme\.com|verify_license|check_update|auth\.php|license\.php) {access_log off;log_not_found off;return 444;}# 屏蔽主题的授权检查API端点location ~* (wp-admin/admin-ajax\.php\?action=theme_ajax_activ) {access_log off;return 200 '{"success":true,"data":"授权验证成功"}';}# 屏蔽主题更新检查location ~* (api\.wordpress\.org/themes/update-check) {access_log off;content_by_lua_block {ngx.header.content_type = 'application/json';ngx.say('{"themes":{}}');}}
// 强制授权激活 add_action('admin_footer', 'fix_ritheme_license_activation_ui'); function fix_ritheme_license_activation_ui() { if (isset($_GET['page']) && $_GET['page'] === 'ripro' && isset($_GET['tab']) && $_GET['tab'] === '主题授权') { // 获取当前站点信息 $siteurl = get_option('siteurl'); $option_key = md5('riprov2_license_data'.$siteurl); // 检查是否已授权 $is_activated = !empty(get_option($option_key)); // 如果未授权,自动填充并提交 if (!$is_activated) { ?> <a href="https://www.syzhuti.com/" title="双柚主题" target="_blank">双柚主题</a> (document).ready(function($) { // 自动填充表单 $('#theme_lic_id').val('66666666666'); $('#theme_lic_key').val('syzhuti.com'); // 创建弹窗容器 $('body').append(` <div id="license-success-modal" style="display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);z-index:99999;"> <div style="position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:30px;border-radius:5px;text-align:center;max-width:500px;"> <h2 style="color:#4CAF50;">🎉 授权激活成功!</h2> <p style="margin:20px 0;font-size:16px;">主题授权已成功激活,页面即将刷新...</p> <div style="margin:20px 0;text-align:left;background:#f9f9f9;padding:15px;border-radius:4px;"> <p><strong>授权ID:</strong>66666666666</p> <p><strong>授权密钥:</strong>syzhuti.com</p> <p><strong>到期时间:</strong>永久有效</p> </div> <button id="confirm-refresh" style="background:#4CAF50;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;">立即刷新</button> </div> </div> `); // 自动提交表单 setTimeout(function() { $('#theme_act_btn').click(); }, 1000); // 监听授权 $('#theme_act_btn').on('click', function() { var btn = $(this); var originalText = btn.text(); // 显示加载状态 btn.text('激活中...').prop('disabled', true); // 发送AJAX请求 $.ajax({ url: ajaxurl, type: 'POST', data: { action: 'theme_ajax_activ', id: $('#theme_lic_id').val(), key: $('#theme_lic_key').val() }, success: function(response) { if (response.success) { // 显示成功弹窗 $('#license-success-modal').fadeIn(); // 5秒后自动刷新 setTimeout(function() { location.reload(); }, 5000); // 立即刷新按钮 $('#confirm-refresh').on('click', function() { location.reload(); }); } else { alert('激活失败: ' + response.data); btn.text(originalText).prop('disabled', false); } }, error: function() { alert('请求失败,请重试'); btn.text(originalText).prop('disabled', false); } }); }); }); jQuery(document).ready(function($) { // 移除激活表单 $('.theme-license-warp').remove(); // 显示授权成功状态 $('.csf-field-callback').html(` <div class="theme-license-success"> <div class="license-success-header" style="background:#4CAF50;color:#fff;padding:15px;border-radius:4px 4px 0 0;"> <h3 style="margin:0;">🎉 主题授权已激活</h3> </div> <div style="padding:20px;border:1px solid #e5e5e5;border-top:none;border-radius:0 0 4px 4px;"> <div style="display:flex;margin-bottom:15px;"> <div style="flex:1;padding:10px;background:#f9f9f9;margin-right:10px;border-radius:4px;"> <strong>授权ID:</strong> <p>66666666666</p> </div> <div style="flex:1;padding:10px;background:#f9f9f9;border-radius:4px;"> <strong>授权密钥:</strong> <p>syzhuti.com</p> </div> </div> <div style="background:#e8f5e9;padding:15px;border-radius:4px;border-left:4px solid #4CAF50;"> <p style="margin:0;"><strong>状态:</strong> 已激活 | <strong>有效期:</strong> 永久</p> </div> <p style="margin-top:20px;color:#666;font-size:14px;"> 授权信息已激活并安全存储,修改域名需要重新激活。 <br>如需帮助,请访问 <a href="https://ritheme.com/" target="_blank">RiTheme官网</a> </p> </div> </div> `); }); $id, 'key' => $key]); $data = openssl_encrypt($data, 'AES-256-CBC', $password, 0, '0123456789abcdef'); $data = base64_encode($data); update_option($option_key, $data, true); delete_transient($transient_key); set_transient($transient_key, '1'); // 设置其他授权选项 update_option('riprov2_license_status', '1'); update_option('riprov2_license_key', $key); update_option('riprov2_license_key_id', $id); update_option('riprov2_license_key_status', 'valid'); update_option('riprov2_license_key_expire', date('Y-m-d', strtotime('+10 years'))); // 返回成功响应 wp_send_json_success('双柚主题提醒您:激活成功!'); } // 防止主题重置授权状态 add_filter('pre_set_site_transient_update_themes', function($transient) { if (isset($transient->response['ripro-v5'])) { unset($transient->response['ripro-v5']); } return $transient; });
3、在后台授权页面输入id、key点击授权,授权后手动刷新网页就可以了
如果授权后过一段时间还有提示,要么重复第三点步骤,要么直接修改hosts文件屏蔽授权服务器
# /etc/hosts 修改并重启服务器 127.0.0.1 ritheme.com 127.0.0.1 api.ritheme.com 127.0.0.1 license.ritheme.com