Unfortunately my php skills are pretty lacking, but in doing some research, I believe there is a way to do what I'm requesting. Looking at the filter modules available, there is clearly a way to use some logic on the fields associated with a user profile. In my particular case, I want to filter a registration field 'name' to prevent the use of "WhateverTheyPutHere" in that field. Again, my issue is that every spammer I get is using a different IP, email, and username, but name, location, and about are all identical.
I believe the correct approach would be to build a plugin that utilizes the filter_profile module, however I think this could rather easily be applied as a core hack to the qa-include\qa-filter-basic.php file (with the recognition that an update would overwrite it). This statement already exists in qa-filter-basic.php, and I'm hoping someone with better php skills than myself can advise what needs to be added to this section to achieve the results I want:
function filter_profile(&$profile, &$errors, $user, $oldprofile)
{
foreach ($profile as $field => $value)
$this->validate_length($errors, $field, $value, 0, QA_DB_MAX_PROFILE_CONTENT_LENGTH);
}
I was thinking something along the following lines, but I couldn't get it to function correctly (no errors, just nothing happens that I can see):
if (preg_match("WhateverTheyPutHere", $field['name'])) {
echo 'Not today!'; //obviously this doesn't really block anything, it would just print...did I mention I'm not php proficient?
}