If you ever use a CMS for your site, make sure that you get latest version, and to customize it in such a way that logins and such are not completely default.
For example I once had a site hacked years and years ago because someone I sub-hosted was using PHPNuke, there was a vunerability that allowed the person in, and well... it was subpar shared hosting so you know how that goes. (normally secure provided people sharing were up on their game too)... you live and learn.
Half the time they either guess your password, use a known exploit, or for some reason you have an upload folder that allowed them to upload a .php file from which they could run from the folder (turning off execute permission to any upload folder usually fixes this, and even better, moving said folder outside of the web-accessible area).
For example I once had a site hacked years and years ago because someone I sub-hosted was using PHPNuke, there was a vunerability that allowed the person in, and well... it was subpar shared hosting so you know how that goes. (normally secure provided people sharing were up on their game too)... you live and learn.
Half the time they either guess your password, use a known exploit, or for some reason you have an upload folder that allowed them to upload a .php file from which they could run from the folder (turning off execute permission to any upload folder usually fixes this, and even better, moving said folder outside of the web-accessible area).