The user picks time in a select box, and we expect they pick a time
in the site's timezone so the saved cron expression is in the site's timezone.
When we calculate the next run date, we do it in the site's timezone and
to get UTC time, we convert it.
[MAILPOET-6142]
The previous method was relying on the idea that product pages would not
trigger the `the_content` filter since they don't have to render the
content. Testing revealed that this idea was unreliable.
In one instance WordPress was triggering `the_content` when attempting
to filter the excerpt, even though the excerpt was empty.
This changes the detection method to a much more direct inspection of
the post's content.
MAILPOET-5859
The current logic for form rendering assumes that a single product page
will trigger the filter `the_content`. This is not always true. In cases
where the product has no description, WooCommerce does not render the
description tab at all, which is where that filter usually fires (in my
testing).
This change ensures that we still give these forms a chance to render on
such pages.
MAILPOET-5859
When loading an email post in the editor we need to attach MailPoet
specific data like associated newsletter entity id, email type etc.
This is done using register_rest_field function.
So far we only send the associated entity ID but there is also a method `saveEmailData` that will
be used to save MailPoet specific email data.
[MAILPOET-5365]
We need to add a warning so that we know for sure
that this piece of risky code gets reviewed by a human and consciously ignore the warning
[MAILPOET-5245]
The WooCommerce Shop page is a special kind of page. It’s basically a post archive.
The Shop page is a placeholder for a post type archive for products. It may render differently than other pages in your install.
https://woocommerce.com/document/woocommerce-pages/#section-4
It doesn’t have any content and WooCommerce core team is also removing the the-content filter from the Shop listing page hence why we are unable to hook into the the-content filter we use for other parts of the codebase
MAILPOET-4663