我发现 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);
}