Hi,
1. In the settings of the HikaShop configuration, you have the setting "Maximum emails sent per product", it's set by default to 5.
In the settings of the Hikashop WaitList notification Plugin via the Joomla plugins manager, you have the setting "Period". It's set by default to 7200.
This means that every 2 hours, the plugin will send 5 emails maximum per product restocked.
This is fine for a small website. If your website is bigger, at it seems to be the case, you should reduce the Period.
So for example, if you set the Period to 1, it will send 5 emails per product restocked each time the cron task is triggered. If you configured a cron task to be triggered once every 15 minutes in the Cron tab of the HikaShop configuration, it means that it will send 20 emails per restocked product per hour.
And with your own cron task (on your server or with another cron service than the one we provide from our server), you could trigger the cron every minute and send even more emails.
However, as I'll explain in my next point, I would recommend not sending too much waitlist notifications.
2. Doing this would lead to several problems:
- sending an email takes time. Around one second if fast because PHP needs to communicate with the email server. By default PHP has a max execution time of 60 seconds. So if the plugin were to send all the email at once, it would probably crash in the middle. So it's better to send the email notifications in several batchs and not all at once.
- if you send a lot of emails at once, you indeed risk having your emails flagged as spam so even without taking into account the max execution time of your PHP, I don't recommend that.
- even if you don't have an issue with the max execution time and with your emails being flagged as spam, notifying all the users at the same time is conceptually problematic for you because:
a - it means many people could come at the same time on your website, overloading it. For example, if you have a waiting list of several thousand people for a product, that means that you'll have several hundred users checking your website at the same time, and it could overload your server with too much requests in a small amount of time. So it's better to spread the sending of the emails. In fact, if you send a newsletter, it's the same problematic. It's usually better to spread out the sending than notifying tens of thousands of users at once. On our own website, we spread the sending of newsletters on several days for that same reason.
b - If you have hundreds of people on the waiting list and you only restock 10 units of your product, notifying all of them will cause problems: when many users access the website at the beginning , they'll see the product in stock and add it to the cart, start to go through the checkout, and only the first 10 will get the product, while the others will do all that for nothing as the product will be removed from their cart once the stock reaches 0 again. Worst, all the other users who will open the email later on will click on the link in the email but the product won't have stock anymore. So they won't be in the waitlist anymore and will not be able to purchase the product in the future. You've lost them.
So for all these reasons, it's better to sending the email notifications little by little. Not only for your server/website, but also for your customers.
3. There is no such option.