1

我发现 WordPress 正在从我的主题中的模板执行代码,但实际上它不在使用该模板的页面上。

虽然这个模板不会在实时状态下使用(因为它只运行一个循环来创建数据)我想知道是否有其他人遇到过这个 - 除了在functions.php中推动所有内容之外,如何让WP停止包含/网站加载时运行模板?

我假设代码运行的原因是 WP 加载并正在寻找模板等是实际的 include(); 模板文件在某个时候?哪个导致循环运行?如果是这种情况,这是否意味着运行任何模板文件中的任何 php?

这是包含的模板中的代码(不包括 WP 模板标题),此代码正在任何未设置模板的页面上运行。get_base_question_meta是一个返回预构建数组的函数。

$users = get_users( array() );
$base_meta = get_base_question_meta();    
$new_meta = array();

foreach ($users as $user ){    
    if($user->data->ID == 1){
        continue;
    }       
    foreach ($base_meta as $question_group_id => $question_groups){     
        foreach ( $question_groups as $group_id => $sets ){     
            foreach ($sets as $set_id => $set ){
                foreach ($set as $question_id => $question ){
                    $new_meta[ $group_id ][ $set_id ][ $question_id ]  = (string)rand(1, 5);
                }
            }
        }       
    }    
    update_user_meta($user->data->ID, 'saved_answers', $new_meta);      
}
4

0 回答 0