Bobby, let me explain first how the Mass Mailing works.
- You compose a message via Admin Area > Users > Mass Mailing;
- The letters are sent to the database:
ow_mail table;
- Cron runs every 5 minutes and sends 50 letters per running;
- Letters are sent to the mail server queue;
- The mail server sends these letters by turn to the mail client server (Gmail, Yahoo, etc.)
- The mail client server sends the letter to the recipient's INBOX/SPAM (depending on the spam filter).
This works for Mass Mailing, Invitation and Activity Notifications features.
If we are talking about such letters like Email Verification, Welcome, etc. - these letters are sent directly to the mail server omitting the cron run. So, they do not depend on the cron.
In case you enable SMTP - all letters from the site will be sent by cron through the ow_mail table.
As you said - you successfully receive the Email Verification, Welcome, etc. letters - this means that the mail server works correctly and your IP/domain is not marked as SPAM distributor by the mail client servers.
Thus, we can suppose that this is the inner problem caused by cron or some problems with the queries execution.
Now, let's try to debug the problem. Here are several steps you need to perform:
1. Checking the cron.
- Disable SMTP feature;
- Go to phpMyAdmin >
ow_mail table;
- Check if this table is empty:
-- In case there are no rows - this means the cron runs;
-- In case there are a lot of rows - this means the cron does not run or some errors occurs while the cron running:
a) cron does not run
You need to log into your server through SSH and run the following commands:
-
service cron status (this command shows if the cron is running or not)
-
crontab -l (this command shows if there are cron commands configured) you should see the command you've provided in the post above:
wget -q -O /dev/null http://www.cprworldwidemedia.net/cprradio/ow_cron/run.php
you need to copy the URL and open it via browser. Please make sure that URL is correct. When we opened it or this URL:
http://www.cprworldwidemedia.net/ow_cron/run.php - we received the 404 Not Found page.
Please, also, make sure that the run.php file exists.
To be sure that cron will work correctly we suggest that you configure it locally, but not through wget. To do so, you need to follow these instructions:
https://docs.oxwall.org/install:cron#run-cron-locally
After you configured the cron, the number of rows in the
ow_mail table should be reduced.
b) some errors occurs while the cron running
You need to go to ow_log/ folder through FTP and check if the
cron_error.log file exists. If so, you need to open it and check into all errors logged in this file. You should eliminate all these errors.
2. Checking queries execution problem.
If none of these solutions helped, you need to check if there are some loops or queries issues.
- Go to phpMyAdmin >
ow_mail table;
- Truncate this table;
- Go to your site Admin Area;
- Create a new role:
mail test;
- Give this role to your test account;
- Go to Admin Area > Users > Mass Mailing section;
- Select the
mail test role (Total number should show 1 member);
- Compose the letter and click Send;
- Go back to phpMyAdmin > ow_mail table to check if the letter arrived;
- Wait for 5-10 minutes;
- Refresh the table;
-- In case the cron runs correctly and there are no any errors or problems with the queries execution, the letter should disappear from the table;
-- In case the letter will still show up after 10 minutes, this means something wrong with the cron and you should debug it once again using the instruction provided above.
Please perform all these steps and then get back to us with the results.