PluginProbe ʕ •ᴥ•ʔ
WP Popular Posts / 7.1.0
WP Popular Posts v7.1.0
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 / Rest / Endpoint.php
wordpress-popular-posts / src / Rest Last commit date
Controller.php 1 year ago Endpoint.php 1 year ago PostsEndpoint.php 1 year ago TaxonomiesEndpoint.php 1 year ago ThemesEndpoint.php 1 year ago ThumbnailsEndpoint.php 1 year ago ViewLoggerEndpoint.php 1 year ago WidgetEndpoint.php 1 year ago
Endpoint.php
70 lines
1 <?php
2 namespace WordPressPopularPosts\Rest;
3
4 use WordPressPopularPosts\Translate;
5
6 abstract class Endpoint extends \WP_REST_Controller {
7
8 /**
9 * Plugin options.
10 *
11 * @var array $config
12 * @access private
13 */
14 protected $config;
15
16 /**
17 * Translate object.
18 *
19 * @var \WordPressPopularPosts\Translate $translate
20 * @access private
21 */
22 protected $translate;
23
24 /**
25 * Initializes class.
26 *
27 * @param array
28 * @param \WordPressPopularPosts\Translate
29 */
30 public function __construct(array $config, Translate $translate)
31 {
32 $this->config = $config;
33 $this->translate = $translate;
34 }
35
36 /**
37 * Registers the endpoint(s).
38 *
39 * @since 5.3.0
40 */
41 abstract public function register();
42
43 /**
44 * Sets language/locale.
45 *
46 * @since 5.3.0
47 */
48 protected function set_lang(?string $lang)
49 {
50 // Multilang support
51 if ( $lang ) {
52 $current_locale = get_locale();
53 $locale = null;
54
55 // Polylang support
56 if ( function_exists('PLL') ) {
57 $lang_object = PLL()->model->get_language($lang);
58 $locale = ( $lang_object && isset($lang_object->locale) ) ? $lang_object->locale : null;
59 }
60
61 // Reload locale if needed
62 if ( $locale && $locale != $current_locale ) {
63 $this->translate->set_current_language($lang);
64 unload_textdomain('wordpress-popular-posts');
65 load_textdomain('wordpress-popular-posts', WP_LANG_DIR . '/plugins/wordpress-popular-posts-' . $locale . '.mo');
66 }
67 }
68 }
69 }
70