PluginProbe ʕ •ᴥ•ʔ
WP Popular Posts / trunk
WP Popular Posts vtrunk
4.0.8 4.0.9 4.1.0 4.1.1 4.1.2 4.2.0 4.2.1 4.2.2 5.0.0 5.0.1 5.0.2 5.1.0 5.2.0 5.2.1 5.2.2 5.2.3 5.2.4 5.3.0 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.4.0 5.4.1 5.4.2 5.5.0 5.5.1 6.0.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.1.0 6.1.1 6.1.2 6.1.3 6.1.4 6.2.0 6.2.1 6.3.0 6.3.1 6.3.2 6.3.3 6.3.4 6.4.0 6.4.1 6.4.2 7.0.0 7.0.1 7.1.0 7.2.0 7.3.0 7.3.1 7.3.2 7.3.3 7.3.4 7.3.5 7.3.6 7.3.7 7.3.8 7.4.0 trunk 2.3.7 3.0.0 3.0.1 3.0.2 3.0.3 3.1.0 3.1.1 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 4.0.0 4.0.1 4.0.10 4.0.11 4.0.12 4.0.13 4.0.2 4.0.3 4.0.5 4.0.6
wordpress-popular-posts / src / Compatibility / Polylang / Polylang.php
wordpress-popular-posts / src / Compatibility / Polylang Last commit date
Polylang.php 1 year ago
Polylang.php
65 lines
1 <?php
2 /**
3 * Reloads plugin's .mo file when Polylang is present.
4 *
5 * @package WordPressPopularPosts
6 * @subpackage WordPressPopularPosts/Compatibility
7 * @author Hector Cabrera <me@cabrerahector.com>
8 */
9
10 namespace WordPressPopularPosts\Compatibility\Polylang;
11
12 use WordPressPopularPosts\Compatibility\Compat;
13
14 class Polylang extends Compat
15 {
16 /**
17 * Admin settings.
18 *
19 * @since 7.2.0
20 * @var array
21 * @access protected
22 */
23 private $config;
24
25 /**
26 * Construct.
27 *
28 * @param array $settings
29 */
30 public function __construct($settings)
31 {
32 $this->config = $settings;
33 }
34
35 /**
36 * Hooks into init to load current textdomain.
37 */
38 public function init()
39 {
40 if ( function_exists('PLL') ) {
41 add_action('init', [$this, 'load_textdomain']);
42 }
43 }
44
45 /**
46 * Loads current textdomain.
47 */
48 public function load_textdomain() {
49 // This is basically a "hack" and should be removed in the future
50 // if/when we figure out why Polylang doesn't load WPP's mo files
51 // while WPML does automatically.
52
53 $locale_file = WP_LANG_DIR . '/plugins/wordpress-popular-posts-' . get_locale() . '.mo';
54
55 if (
56 ! is_admin()
57 && ! $this->config['tools']['ajax']
58 && file_exists($locale_file)
59 ) {
60 unload_textdomain('wordpress-popular-posts');
61 load_textdomain('wordpress-popular-posts', $locale_file);
62 }
63 }
64 }
65