PluginProbe
MailPoet – Newsletters, Email Marketing, and Automation / 5.34.1
MailPoet – Newsletters, Email Marketing, and Automation v5.34.1
5.38.0 5.37.0 5.36.1 5.36.0 5.35.1 5.35.0 5.34.3 5.34.2 5.34.1 5.34.0 5.33.1 5.33.0 5.32.0 5.31.0 5.30.0 5.29.0 5.28.1 5.28.0 5.27.0 5.26.0 5.26.1 5.25.0 5.24.0 4.43.0 4.43.1 All 542 releases
mailpoet / lib / Cron / Workers / SendingQueue / Tasks / Shortcodes.php
Shortcodes.php
46 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing
2
3 namespace MailPoet\Cron\Workers\SendingQueue\Tasks;
4
5 if (!defined('ABSPATH')) exit;
6
7
8 use MailPoet\DI\ContainerWrapper;
9 use MailPoet\Entities\NewsletterEntity;
10 use MailPoet\Entities\SendingQueueEntity;
11 use MailPoet\Entities\SubscriberEntity;
12 use MailPoet\Newsletter\Shortcodes\Shortcodes as NewsletterShortcodes;
13
14 class Shortcodes {
15 /**
16 * @param string $content
17 * @param string|null $contentSource
18 * @param NewsletterEntity|null $newsletter
19 * @param SubscriberEntity|null $subscriber
20 * @param SendingQueueEntity|null $queue
21 */
22 public static function process($content, $contentSource = null, ?NewsletterEntity $newsletter = null, ?SubscriberEntity $subscriber = null, ?SendingQueueEntity $queue = null) {
23 /** @var NewsletterShortcodes $shortcodes */
24 $shortcodes = ContainerWrapper::getInstance()->get(NewsletterShortcodes::class);
25
26 if ($queue instanceof SendingQueueEntity) {
27 $shortcodes->setQueue($queue);
28 } else {
29 $shortcodes->setQueue(null);
30 }
31
32 if ($newsletter instanceof NewsletterEntity) {
33 $shortcodes->setNewsletter($newsletter);
34 } else {
35 $shortcodes->setNewsletter(null);
36 }
37
38 if ($subscriber instanceof SubscriberEntity) {
39 $shortcodes->setSubscriber($subscriber);
40 } else {
41 $shortcodes->setSubscriber(null);
42 }
43 return $shortcodes->replace($content, $contentSource);
44 }
45 }
46