ExpressionEngine automatically creates a 'member' area on each standard installation, by default this is /member/
.
Looking at your site I would say the spam bots are registering through the generic /member/register
URL -> https://www.peopleplacestraining.org/member/register
In the ExpressionEngine control panel, under Members -> Preferences -> Profile Triggering Word
you can change the value from 'members' to something else, which change the URL of your automatically generated members pages. For example changing the triggering word to users
would make /users/register
the new valid URL -- This MAY help curb some spam.
But, I've noticed that you are using the /members/login
portion of the members templates, and if you change this then the Spam bots will detect your new triggering word and start spamming through that -- I've experienced this myself.
I have no good work around for this. You can set the Profile Triggering Keyword to #
which will disable it all together. Unfortunately this will also disable your current login pages.
My suggestion is to use Profile:Edit or another plugin from devot-ee.com to handle the login and forgot passsword features.
Update: as suggested by @peter-lewis you could block block the member area with .htaccessblock the member area with .htaccess
The other option is to hack the index.php
and simply exit();
whenever the $_SERVER['REQUEST_URI'] == '/members/register'
Good luck!