PluginProbe
YayMail – WooCommerce Email Customizer / 4.4.5
YayMail – WooCommerce Email Customizer v4.4.5
4.4.6 4.4.5 4.4.4 4.4.3 4.4.2 4.4.1 trunk 1.9.6 2.1.4 2.1.5 3.2.2 3.2.6 3.2.7.1 3.2.8.1 3.2.9 3.3 3.3.1 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4 3.4.1 All 57 releases
yaymail / src / TemplatePatterns / PatternsLoader.php

PatternsLoader.php in YayMail – WooCommerce Email Customizer 4.4.5, at src/TemplatePatterns/PatternsLoader.php

40 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace YayMail\TemplatePatterns;
4
5 use YayMail\TemplatePatterns\PatternService;
6 use YayMail\Utils\Helpers;
7 use YayMail\Utils\SingletonTrait;
8
9 /**
10 * @method static PatternLoaders get_instance()
11 */
12 class PatternsLoader {
13 use SingletonTrait;
14
15 /**
16 * @var PatternService
17 */
18 public $service;
19
20 private function __construct() {
21
22 $this->service = PatternService::get_instance();
23
24 $dir = new \DirectoryIterator( Helpers::get_plugin_path() . '/src/TemplatePatterns/Patterns' );
25 foreach ( $dir as $fileinfo ) {
26 if ( ! $fileinfo->isDot() ) {
27 $file_name = $fileinfo->getFilename();
28 $class_name = basename( $file_name, '.php' );
29 $class = 'YayMail\\TemplatePatterns\\Patterns\\' . $class_name;
30 if ( class_exists( $class ) ) {
31 $this->service->register( $class::get_instance() );
32 }
33 }
34 }
35
36 do_action( 'yaymail_register_patterns', $this->service );
37 }
38
39 }
40