在主题或插件更新上运行的ajax操作是edit-theme-plugin-file
因此,您应该能够通过在wp_ajax_edit-theme-plugin-file
钩
add_action(\'wp_ajax_edit-theme-plugin-file\', \'log_cowboy_coders\');
function log_cowboy_coders() {
$user = get_current_user_id();
if (!empty($__POST[\'theme\'])) {
// Log that someone is editing a theme
} else if (!empty($__POST[\'plugin\'])) {
//log that someone is editing a plugin
}
if (!empty($__POST[\'file\'])) {
//log what file they are editing
}
}
该文件的全部更新内容也包含在POST数据中(
$__POST[\'newcontent\']
) 因此,如果在默认ajax操作运行之前运行函数,则可能会获得原始内容并保存两者之间的差异。