n('publish_post', $article_id, get_post($article_id)); $log_data['stats']['published_drafts']++; $log_messages[] = " 📝 草稿已发布"; } } else { // 已发布文章:更新 $post_data = array( 'ID' => $article_id, 'post_modified' => current_time('mysql'), 'post_modified_gmt' => current_time('mysql', 1) ); $result = wp_update_post($post_data); if ($result && !is_wp_error($result)) { do_action('post_updated', $article_id, get_post($article_id), get_post($article_id)); $log_data['stats']['updated_posts']++; $log_messages[] = " 🔄 文章已更新"; } } $log_messages[] = "✅ 文章处理完成"; } // 更新处理进度 $log_data['processed_count']++; $log_data['processed_ids'][] = $article_id; $log_data['current_article_id'] = $article_id; $this->write_log_file($log_data); wp_send_json_success(array( 'process_data' => $log_data, 'log_messages' => $log_messages )); } if ($step === 'finish') { // 完成处理,返回统计信息但保留日志文件 $log_data = $this->read_log_file(); $stats = $log_data['stats']; // 标记任务为已完成,但保留日志文件 $log_data['status'] = 'completed'; $log_data['completion_time'] = time(); $this->write_log_file($log_data); wp_send_json_success($stats); } } // 检查文章是否包含付费下载内容 private function has_paid_download_content($post_id) { $content = get_post_field('post_content', $post_id); // 检查常见的付费下载关键词 $paid_keywords = array( '付费下载', '付费资源', '下载链接', '百度网盘', '网盘下载', '资源下载', '付费内容', '会员下载', 'VIP下载', '下载地址' ); foreach ($paid_keywords as $keyword) { if (strpos($content, $keyword) !== false) { return true; } } return false; } // 检查文章的设置状态 private function check_article_status($post_id) { // 检查Members权限设置 $members_role = get_post_meta($post_id, '_members_access_role', true); $has_members = false; if (!empty($members_role)) { if (is_array($members_role)) { $has_members = in_array('um_custom_role_2', $members_role); } else if (is_string($members_role)) { $unserialized = maybe_unserialize($members_role); if (is_array($unserialized)) { $has_members = in_array('um_custom_role_2', $unserialized); } } } // 检查付费阅读设置 $pay_type = get_post_meta($post_id, 'posts_zibpay_pay_type', true); $has_pay = ($pay_type == '1'); // 检查是否已有付费下载内容 $has_paid_content = $this->has_paid_download_content($post_id); return array( 'has_members' => $has_members, 'has_pay' => $has_pay, 'has_paid_content' => $has_paid_content, 'both_set' => ($has_members && ($has_pay || $has_paid_content)), 'needs_processing' => (!$has_members || (!$has_pay && !$has_paid_content)) ); } // 检查是否为排除的文章 private function is_excluded_post($post) { return in_array($post->post_title, $this->excluded_titles); } } // 初始化插件 new BulkMembersPermissionNew(); ?>
Warning: Cannot modify header information - headers already sent by (output started at /www/wwwroot/xxm2161.com/wp-content/plugins/bulk-members-permission.php:828) in /www/wwwroot/xxm2161.com/wp-includes/sitemaps/class-wp-sitemaps-renderer.php on line 126
https://xxm2161.com/wp-sitemap-posts-post-1.xmlhttps://xxm2161.com/wp-sitemap-posts-post-2.xmlhttps://xxm2161.com/wp-sitemap-posts-post-3.xmlhttps://xxm2161.com/wp-sitemap-posts-post-4.xmlhttps://xxm2161.com/wp-sitemap-posts-post-5.xmlhttps://xxm2161.com/wp-sitemap-posts-post-6.xmlhttps://xxm2161.com/wp-sitemap-posts-post-7.xmlhttps://xxm2161.com/wp-sitemap-posts-post-8.xmlhttps://xxm2161.com/wp-sitemap-posts-post-9.xmlhttps://xxm2161.com/wp-sitemap-posts-post-10.xmlhttps://xxm2161.com/wp-sitemap-posts-post-11.xmlhttps://xxm2161.com/wp-sitemap-posts-post-12.xmlhttps://xxm2161.com/wp-sitemap-posts-post-13.xmlhttps://xxm2161.com/wp-sitemap-posts-post-14.xmlhttps://xxm2161.com/wp-sitemap-posts-post-15.xmlhttps://xxm2161.com/wp-sitemap-posts-post-16.xmlhttps://xxm2161.com/wp-sitemap-posts-post-17.xmlhttps://xxm2161.com/wp-sitemap-posts-post-18.xmlhttps://xxm2161.com/wp-sitemap-posts-post-19.xmlhttps://xxm2161.com/wp-sitemap-posts-post-20.xmlhttps://xxm2161.com/wp-sitemap-posts-page-1.xmlhttps://xxm2161.com/wp-sitemap-taxonomies-category-1.xmlhttps://xxm2161.com/wp-sitemap-users-1.xml