WordPress自动写作神器内容质量提升方法

AI写作工具与WordPress集成基础配置

要实现WordPress自动写作并提升内容质量,首先需要正确配置AI写作工具与WordPress的集成。目前市场上主流的AI写作工具包括OpenAI的ChatGPT、DeepSeek、豆包、Gemini等,它们都提供了API接口,可以与WordPress无缝对接。

配置WordPress与AI写作工具的集成,需要以下步骤:

  1. 获取AI服务的API密钥
  2. 安装WordPress AI写作插件
  3. 配置API连接参数
  4. 设置写作模板和提示词
  5. 调整内容生成参数

以下是配置ChatGPT与WordPress集成的代码示例:


function add_chatgpt_api_settings() {
    add_options_page(
        'ChatGPT API Settings',
        'ChatGPT API',
        'manage_options',
        'chatgpt-api-settings',
        'chatgpt_api_settings_page'
    );
}
add_action('admin_menu', 'add_chatgpt_api_settings');

function chatgpt_api_settings_page() {
    ?>
    

ChatGPT API Settings

优化AI写作提示词提升内容质量

提示词是影响AI写作质量的关键因素。精心设计的提示词能够显著提升生成内容的相关性、准确性和可读性。以下是优化AI写作提示词的几种方法:

WordPress自动写作神器内容质量提升方法

明确内容结构和格式要求

在提示词中明确指定文章的结构和格式,可以帮助AI生成更有条理的内容。例如:


请撰写一篇关于WordPress SEO优化的文章,包含以下部分:
1. 引言(介绍WordPress SEO的重要性和基本概念)
2. 关键词优化策略(包括关键词研究、布局和密度控制)
3. 技术SEO优化(网站速度、移动适配、结构化数据等)
4. 内容优化技巧(标题、元描述、内部链接等)
5. 常见SEO插件推荐和配置
6. 结论(总结关键点并给出进一步学习的建议)

每个部分至少300字,使用H2标题分隔,并在适当位置添加项目符号列表。

指定写作风格和目标受众

明确指定写作风格和目标受众,可以使AI生成的内容更加符合预期:


请以专业但易懂的风格撰写一篇关于WordPress安全性的文章,目标受众是WordPress网站管理员和开发者。文章应包含实用的安全建议和最佳实践,避免过于技术性的术语,但在必要时提供简要解释。文章应具有权威性,同时保持友好和指导性的语调。

提供背景信息和上下文

向AI提供足够的背景信息和上下文,可以帮助生成更准确、更有深度的内容:


请撰写一篇比较WordPress和Joomla的文章。我正在为一个中小型企业选择内容管理系统,该企业需要一个易于使用、SEO友好且具有良好扩展性的解决方案。请从以下方面进行比较:易用性、SEO功能、扩展性、安全性和社区支持。请提供客观的分析,并针对我的需求给出建议。

内容质量评估与优化策略

即使使用了高质量的AI写作工具,生成的内容也需要经过评估和优化。以下是几种评估和优化AI生成内容质量的方法:

建立内容质量评分体系

建立一个多维度的内容质量评分体系,可以帮助系统性地评估AI生成的内容:

评估维度 评分标准 权重
相关性 内容是否与主题高度相关,是否满足用户搜索意图 30%
准确性 信息是否准确,是否有事实错误 25%
可读性 语言是否流畅,结构是否清晰,是否易于理解 20%
原创性 内容是否具有独特见解,是否避免了重复和抄袭 15%
SEO优化 是否包含适当的关键词,是否具有良好的结构化数据 10%

实施多轮内容优化流程

通过多轮优化,可以逐步提升AI生成内容的质量:

  1. 第一轮:生成初稿,关注内容的完整性和基本结构
  2. 第二轮:优化内容的逻辑性和连贯性,确保段落之间过渡自然
  3. 第三轮:增强内容的深度和独特性,添加专业见解和实用建议
  4. 第四轮:优化语言表达,提高可读性和吸引力
  5. 第五轮:进行SEO优化,确保内容符合搜索引擎要求

以下是实现多轮内容优化的代码示例:


function optimize_content_rounds($content, $round) {
    $api_key = get_option('chatgpt_api_key');
    $model = get_option('chatgpt_model', 'gpt-4');
    
    $prompt = '';
    
    switch($round) {
        case 1:
            $prompt = "请对以下内容进行第一轮优化,重点关注内容的完整性和基本结构:nn" . $content;
            break;
        case 2:
            $prompt = "请对以下内容进行第二轮优化,重点关注内容的逻辑性和连贯性,确保段落之间过渡自然:nn" . $content;
            break;
        case 3:
            $prompt = "请对以下内容进行第三轮优化,重点关注内容的深度和独特性,添加专业见解和实用建议:nn" . $content;
            break;
        case 4:
            $prompt = "请对以下内容进行第四轮优化,重点关注语言表达,提高可读性和吸引力:nn" . $content;
            break;
        case 5:
            $prompt = "请对以下内容进行第五轮优化,重点关注SEO优化,确保内容符合搜索引擎要求:nn" . $content;
            break;
        default:
            return $content;
    }
    
    $response = wp_remote_post('https://api.openai.com/v1/chat/completions', array(
        'headers' => array(
            'Content-Type' => 'application/json',
            'Authorization' => 'Bearer ' . $api_key
        ),
        'body' => json_encode(array(
            'model' => $model,
            'messages' => array(
                array(
                    'role' => 'user',
                    'content' => $prompt
                )
            ),
            'max_tokens' => 2000,
            'temperature' => 0.7
        ))
    ));
    
    if (is_wp_error($response)) {
        return $content;
    }
    
    $body = wp_remote_retrieve_body($response);
    $data = json_decode($body, true);
    
    if (isset($data['choices'][0]['message']['content'])) {
        return $data['choices'][0]['message']['content'];
    }
    
    return $content;
}

WordPress自动写作工作流优化

优化WordPress自动写作的工作流程,可以显著提高内容生成的效率和质量。以下是几种优化工作流的方法:

建立内容模板库

为不同类型的内容创建标准化的模板,可以提高AI生成内容的一致性和质量:


class Content_Template_Manager {
    private $templates = array();
    
    public function __construct() {
        $this->templates = array(
            'how_to_guide' => array(
                'title' => '如何{topic}:完整指南',
                'structure' => array(
                    'introduction' => '介绍{topic}的重要性和基本概念',
                    'step1' => '第一步:{description}',
                    'step2' => '第二步:{description}',
                    'step3' => '第三步:{description}',
                    'tips' => '实用技巧和注意事项',
                    'conclusion' => '总结关键点并给出进一步建议'
                )
            ),
            'product_review' => array(
                'title' => '{product_name}评测:优缺点分析',
                'structure' => array(
                    'introduction' => '介绍{product_name}及其市场定位',
                    'features' => '主要功能和特点',
                    'pros' => '优点分析',
                    'cons' => '缺点分析',
                    'comparison' => '与同类产品的比较',
                    'conclusion' => '总结评价和购买建议'
                )
            ),
            'listicle' => array(
                'title' => '{number}个提升{topic}的最佳方法',
                'structure' => array(
                    'introduction' => '介绍{topic}的重要性和提升的必要性',
                    'items' => array(
                        'title' => '方法{number}:{title}',
                        'content' => '详细描述该方法及其效果'
                    ),
                    'conclusion' => '总结关键点并鼓励读者尝试'
                )
            )
        );
    }
    
    public function get_template($template_name) {
        return isset($this->templates[$template_name]) ? $this->templates[$template_name] : null;
    }
    
    public function generate_prompt_from_template($template_name, $variables) {
        $template = $this->get_template($template_name);
        
        if (!$template) {
            return null;
        }
        
        $prompt = "请根据以下模板撰写文章:nn";
        $prompt .= "标题:" . $this->replace_variables($template['title'], $variables) . "nn";
        $prompt .= "结构:n";
        
        foreach ($template['structure'] as $section => $description) {
            if (is_array($description)) {
                $prompt .= "- " . $this->replace_variables($description['title'], $variables) . ":" . $this->replace_variables($description['content'], $variables) . "n";
            } else {
                $prompt .= "- " . $section . ":" . $this->replace_variables($description, $variables) . "n";
            }
        }
        
        return $prompt;
    }
    
    private function replace_variables($text, $variables) {
        foreach ($variables as $key => $value) {
            $text = str_replace('{' . $key . '}', $value, $text);
        }
        return $text;
    }
}

实施自动化内容审核流程

建立自动化的内容审核流程,可以在内容发布前自动检查和优化内容质量:


class Content_Quality_Checker {
    private $api_key;
    private $model;
    
    public function __construct($api_key, $model = 'gpt-4') {
        $this->api_key = $api_key;
        $this->model = $model;
    }
    
    public function check_content_quality($content) {
        $checks = array(
            'readability' => $this->check_readability($content),
            'accuracy' => $this->check_accuracy($content),
            'originality' => $this->check_originality($content),
            'seo_optimization' => $this->check_seo_optimization($content)
        );
        
        return $checks;
    }
    
    private function check_readability($content) {
        $prompt = "请评估以下内容的可读性,并给出1-10的评分和改进建议:nn" . $content;
        
        $response = $this->send_api_request($prompt);
        
        return array(
            'score' => $this->extract_score($response),
            'feedback' => $this->extract_feedback($response)
        );
    }
    
    private function check_accuracy($content) {
        $prompt = "请检查以下内容中的事实准确性,指出可能存在的错误或不准确之处,并给出1-10的准确性评分:nn" . $content;
        
        $response = $this->send_api_request($prompt);
        
        return array(
            'score' => $this->extract_score($response),
            'feedback' => $this->extract_feedback($response)
        );
    }
    
    private function check_originality($content) {
        $prompt = "请评估以下内容的原创性,检查是否有明显的抄袭或重复内容,并给出1-10的原创性评分:nn" . $content;
        
        $response = $this->send_api_request($prompt);
        
        return array(
            'score' => $this->extract_score($response),
            'feedback' => $this->extract_feedback($response)
        );
    }
    
    private function check_seo_optimization($content) {
        $prompt = "请评估以下内容的SEO优化程度,包括关键词使用、结构化数据、元描述等方面,并给出1-10的评分和改进建议:nn" . $content;
        
        $response = $this->send_api_request($prompt);
        
        return array(
            'score' => $this->extract_score($response),
            'feedback' => $this->extract_feedback($response)
        );
    }
    
    private function send_api_request($prompt) {
        $response = wp_remote_post('https://api.openai.com/v1/chat/completions', array(
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $this->api_key
            ),
            'body' => json_encode(array(
                'model' => $this->model,
                'messages' => array(
                    array(
                        'role' => 'user',
                        'content' => $prompt
                    )
                ),
                'max_tokens' => 1000,
                'temperature' => 0.3
            ))
        ));
        
        if (is_wp_error($response)) {
            return 'Error: Unable to connect to API';
        }
        
        $body = wp_remote_retrieve_body($response);
        $data = json_decode($body, true);
        
        if (isset($data['choices'][0]['message']['content'])) {
            return $data['choices'][0]['message']['content'];
        }
        
        return 'Error: Invalid API response';
    }
    
    private function extract_score($response) {
        preg_match('/(d+)/10/', $response, $matches);
        return isset($matches[1]) ? intval($matches[1]) : 0;
    }
    
    private function extract_feedback($response) {
        $parts = explode('评分:', $response);
        return isset($parts[1]) ? trim($parts[1]) : $response;
    }
}

AI写作工具高级配置技巧

通过高级配置技巧,可以进一步提升AI写作工具的效果和质量。以下是几种高级配置方法:

自定义AI模型参数

调整AI模型的参数,可以控制生成内容的风格和质量:


class AI_Model_Configurator {
    private $default_config = array(
        'temperature' => 0.7,
        'max_tokens' => 2000,
        'top_p' => 1.0,
        'frequency_penalty' => 0,
        'presence_penalty' => 0
    );
    
    public function get_config_for_content_type($content_type) {
        $config = $this->default_config;
        
        switch($content_type) {
            case 'creative_writing':
                $config['temperature'] = 0.8;
                $config['top_p'] = 0.9;
                $config['frequency_penalty'] = 0.2;
                break;
            case 'technical_documentation':
                $config['temperature'] = 0.3;
                $config['top_p'] = 0.8;
                $config['frequency_penalty'] = 0.1;
                break;
            case 'marketing_content':
                $config['temperature'] = 0.6;
                $config['top_p'] = 0.9;
                $config['presence_penalty'] = 0.3;
                break;
            case 'news_article':
                $config['temperature'] = 0.4;
                $config['top_p'] = 0.8;
                $config['frequency_penalty'] = 0.2;
                break;
        }
        
        return $config;
    }
    
    public function generate_content_with_config($prompt, $content_type) {
        $config = $this->get_config_for_content_type($content_type);
        $api_key = get_option('chatgpt_api_key');
        $model = get_option('chatgpt_model', 'gpt-4');
        
        $response = wp_remote_post('https://api.openai.com/v1/chat/completions', array(
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $api_key
            ),
            'body' => json_encode(array_merge(array(
                'model' => $model,
                'messages' => array(
                    array(
                        'role' => 'user',
                        'content' => $prompt
                    )
                )
            ), $config))
        ));
        
        if (is_wp_error($response)) {
            return 'Error: Unable to generate content';
        }
        
        $body = wp_remote_retrieve_body($response);
        $data = json_decode($body, true);
        
        if (isset($data['choices'][0]['message']['content'])) {
            return $data['choices'][0]['message']['content'];
        }
        
        return 'Error: Invalid API response';
    }
}

实现多模型协作写作

结合多个AI模型的优势,可以生成更高质量的内容:


class Multi_Model_Collaboration {
    private $models = array(
        'chatgpt' => array(
            'api_key' => '',
            'endpoint' => 'https://api.openai.com/v1/chat/completions',
            'model' => 'gpt-4'
        ),
        'deepseek' => array(
            'api_key' => '',
            'endpoint' => 'https://api.deepseek.com/v1/chat/completions',
            'model' => 'deepseek-chat'
        ),
        'gemini' => array(
            'api_key' => '',
            'endpoint' => 'https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent',
            'model' => 'gemini-pro'
        )
    );
    
    public function collaborative_content_generation($prompt, $content_type) {
        $results = array();
        
        // Step 1: Generate initial content with ChatGPT
        $results['chatgpt'] = $this->generate_with_model('chatgpt', $prompt);
        
        // Step 2: Enhance with DeepSeek
        $enhancement_prompt = "请改进以下内容,增强其逻辑性和深度:nn" . $results['chatgpt'];
        $results['deepseek'] = $this->generate_with_model('deepseek', $enhancement_prompt);
        
        // Step 3: Refine with Gemini
        $refinement_prompt = "请优化以下内容的语言表达和可读性:nn" . $results['deepseek'];
        $results['gemini'] = $this->generate_with_model('gemini', $refinement_prompt);
        
        return $results['gemini'];
    }
    
    private function generate_with_model($model_name, $prompt) {
        $model = $this->models[$model_name];
        
        if ($model_name === 'gemini') {
            return $this->generate_with_gemini($model, $prompt);
        } else {
            return $this->generate_with_openai_compatible($model, $prompt);
        }
    }
    
    private function generate_with_openai_compatible($model, $prompt) {
        $response = wp_remote_post($model['endpoint'], array(
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $model['api_key']
            ),
            'body' => json_encode(array(
                'model' => $model['model'],
                'messages' => array(
                    array(
                        'role' => 'user',
                        'content' => $prompt
                    )
                ),
                'max_tokens' => 2000,
                'temperature' => 0.7
            ))
        ));
        
        if (is_wp_error($response)) {
            return 'Error: Unable to generate content with ' . $model['model'];
        }
        
        $body = wp_remote_retrieve_body($response);
        $data = json_decode($body, true);
        
        if (isset($data['choices'][0]['message']['content'])) {
            return $data['choices'][0]['message']['content'];
        }
        
        return 'Error: Invalid API response from ' . $model['model'];
    }
    
    private function generate_with_gemini($model, $prompt) {
        $response = wp_remote_post($model['endpoint'] . '?key=' . $model['api_key'], array(
            'headers' => array(
                'Content-Type' => 'application/json'
            ),
            'body' => json_encode(array(
                'contents' => array(
                    array(
                        'parts' => array(
                            array(
                                'text' => $prompt
                            )
                        )
                    )
                ),
                'generationConfig' => array(
                    'temperature' => 0.7,
                    'topK' => 40,
                    'topP' => 1.0,
                    'maxOutputTokens' => 2000
                )
            ))
        ));
        
        if (is_wp_error($response)) {
            return 'Error: Unable to generate content with Gemini';
        }
        
        $body = wp_remote_retrieve_body($response);
        $data = json_decode($body, true);
        
        if (isset($data['candidates'][0]['content']['parts'][0]['text'])) {
            return $data['candidates'][0]['content']['parts'][0]['text'];
        }
        
        return 'Error: Invalid API response from Gemini';
    }
}

WordPress自动写作效果监控与分析

监控和分析自动写作的效果,可以帮助持续优化内容质量和生成策略。以下是几种监控和分析方法:

建立内容效果追踪系统

追踪AI生成内容的表现,可以评估其质量和效果:


class Content_Performance_Tracker {
    public function track_content_performance($post_id) {
        $post = get_post($post_id);
        
        if (!$post || $post->post_status !== 'publish') {
            return;
        }
        
        $is_ai_generated = get_post_meta($post_id, '_is_ai_generated', true);
        
        if (!$is_ai_generated) {
            return;
        }
        
        $performance_data = array(
            'post_id' => $post_id,
            'post_title' => $post->post_title,
            'publish_date' => $post->post_date,
            'ai_model' => get_post_meta($post_id, '_ai_model', true),
            'content_type' => get_post_meta($post_id, '_content_type', true),
            'word_count' => str_word_count(strip_tags($post->post_content)),
            'views' => $this->get_post_views($post_id),
            'engagement' => $this->get_post_engagement($post_id),
            'seo_score' => $this->get_post_seo_score($post_id),
            'social_shares' => $this->get_post_social_shares($post_id)
        );
        
        $this->save_performance_data($performance_data);
    }
    
    private function get_post_views($post_id) {
        // 使用WordPress统计插件或自定义方法获取文章浏览量
        return get_post_meta($post_id, '_post_views_count', true) ?: 0;
    }
    
    private function get_post_engagement($post_id) {
        // 计算文章参与度(评论数、平均阅读时间等)
        $comments_count = get_comments_number($post_id);
        $avg_reading_time = get_post_meta($post_id, '_avg_reading_time', true) ?: 0;
        
        return array(
            'comments' => $comments_count,
            'avg_reading_time' => $avg_reading_time
        );
    }
    
    private function get_post_seo_score($post_id) {
        // 使用SEO插件获取文章SEO评分
        return get_post_meta($post_id, '_yoast_wpseo_score', true) ?: 0;
    }
    
    private function get_post_social_shares($post_id) {
        // 获取文章社交媒体分享次数
        return get_post_meta($post_id, '_social_shares_count', true) ?: 0;
    }
    
    private function save_performance_data($data) {
        global $wpdb;
        
        $table_name = $wpdb->prefix . 'ai_content_performance';
        
        $wpdb->insert(
            $table_name,
            array(
                'post_id' => $data['post_id'],
                'post_title' => $data['post_title'],
                'publish_date' => $data['publish_date'],
                'ai_model' => $data['ai_model'],
                'content_type' => $data['content_type'],
                'word_count' => $data['word_count'],
                'views' => $data['views'],
                'comments' => $data['engagement']['comments'],
                'avg_reading_time' => $data['engagement']['avg_reading_time'],
                'seo_score' => $data['seo_score'],
                'social_shares' => $data['social_shares'],
                'recorded_date' => current_time('mysql')
            ),
            array('%d', '%s', '%s', '%s', '%s', '%d', '%d', '%d', '%f', '%d', '%d', '%s')
        );
    }
    
    public function analyze_performance_data() {
        global $wpdb;
        
        $table_name = $wpdb->prefix . 'ai_content_performance';
        
        $results = $wpdb->get_results(
            "SELECT ai_model, content_type, 
            AVG(views) as avg_views, 
            AVG(comments) as avg_comments, 
            AVG(avg_reading_time) as avg_reading_time, 
            AVG(seo_score) as avg_seo_score, 
            AVG(social_shares) as avg_social_shares,
            COUNT() as post_count
            FROM $table_name
            GROUP BY ai_model, content_type
            ORDER BY avg_views DESC"
        );
        
        return $results;
    }
}

实现A/B测试优化策略

通过A/B测试不同的AI写作策略,可以找到最优的内容生成方法:


class AI_Content_A_B_Tester {
    public function run_ab_test($topic, $content_type) {
        // Strategy A: Standard prompt
        $strategy_a_prompt = $this->generate_standard_prompt($topic, $content_type);
        $strategy_a_content = $this->generate_content($strategy_a_prompt);
        
        // Strategy B: Enhanced prompt
        $strategy_b_prompt = $this->generate_enhanced_prompt($topic, $content_type);
        $strategy_b_content = $this->generate_content($strategy_b_prompt);
        
        // Create posts for A/B testing
        $post_a_id = $this->create_test_post($strategy_a_content, $topic . ' - Strategy A', 'strategy_a');
        $post_b_id = $this->create_test_post($strategy_b_content, $topic . ' - Strategy B', 'strategy_b');
        
        // Track performance
        $this->track_ab_test_performance($post_a_id, $post_b_id);
        
        return array(
            'post_a_id' => $post_a_id,
            'post_b_id' => $post_b_id
        );
    }
    
    private function generate_standard_prompt($topic, $content_type) {
        return "请写一篇关于{$topic}的{$content_type}。";
    }
    
    private function generate_enhanced_prompt($topic, $content_type) {
        return "请写一篇关于{$topic}的{$content_type}。文章应包含引言、主体和结论,语言流畅,逻辑清晰,内容详实。请确保文章具有实用价值,能够为读者提供有用的信息和见解。文章长度应在1000-1500字之间。";
    }
    
    private function generate_content($prompt) {
        $api_key = get_option('chatgpt_api_key');
        $model = get_option('chatgpt_model', 'gpt-4');
        
        $response = wp_remote_post('https://api.openai.com/v1/chat/completions', array(
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $api_key
            ),
            'body' => json_encode(array(
                'model' => $model,
                'messages' => array(
                    array(
                        'role' => 'user',
                        'content' => $prompt
                    )
                ),
                'max_tokens' => 2000,
                'temperature' => 0.7
            ))
        ));
        
        if (is_wp_error($response)) {
            return 'Error: Unable to generate content';
        }
        
        $body = wp_remote_retrieve_body($response);
        $data = json_decode($body, true);
        
        if (isset($data['choices'][0]['message']['content'])) {
            return $data['choices'][0]['message']['content'];
        }
        
        return 'Error: Invalid API response';
    }
    
    private function create_test_post($content, $title, $strategy) {
        $post_id = wp_insert_post(array(
            'post_title' => $title,
            'post_content' => $content,
            'post_status' => 'publish',
            'post_author' => get_current_user_id(),
            'post_category' => array(get_option('default_category'))
        ));
        
        if ($post_id && !is_wp_error($post_id)) {
            update_post_meta($post_id, '_ab_test_strategy', $strategy);
            update_post_meta($post_id, '_is_ai_generated', '1');
            update_post_meta($post_id, '_ai_model', get_option('chatgpt_model', 'gpt-4'));
        }
        
        return $post_id;
    }
    
    private function track_ab_test_performance($post_a_id, $post_b_id) {
        // Schedule daily performance tracking for A/B test posts
        if (!wp_next_scheduled('track_ab_test_performance_daily', array($post_a_id, $post_b_id))) {
            wp_schedule_event(time(), 'daily', 'track_ab_test_performance_daily', array($post_a_id, $post_b_id));
        }
    }
    
    public function get_ab_test_results($post_a_id, $post_b_id) {
        $strategy_a = get_post_meta($post_a_id, '_ab_test_strategy', true);
        $strategy_b = get_post_meta($post_b_id, '_ab_test_strategy', true);
        
        $results = array(
            $strategy_a => array(
                'post_id' => $post_a_id,
                'views' => get_post_meta($post_a_id, '_post_views_count', true) ?: 0,
                'comments' => get_comments_number($post_a_id),
                'avg_reading_time' => get_post_meta($post_a_id, '_avg_reading_time', true) ?: 0
            ),
            $strategy_b => array(
                'post_id' => $post_b_id,
                'views' => get_post_meta($post_b_id, '_post_views_count', true) ?: 0,
                'comments' => get_comments_number($post_b_id),
                'avg_reading_time' => get_post_meta($post_b_id, '_avg_reading_time', true) ?: 0
            )
        );
        
        return $results;
    }
}