PATH:
home
/
centosnipponia
/
public_html
/
sweetrich
/
wp-content
/
plugins
/
polylang
/
include
<?php /** * @package Polylang */ /** * Main Polylang class for REST API requests, accessible from @see PLL(). * * @since 2.6 */ class PLL_REST_Request extends PLL_Base { /** * @var PLL_Language|false|null A `PLL_Language` when defined, `false` otherwise. `null` until the language * definition process runs. */ public $curlang; /** * @var PLL_Filters|null */ public $filters; /** * @var PLL_Filters_Links|null */ public $filters_links; /** * @var PLL_Admin_Links|null */ public $links; /** * @var PLL_Nav_Menu|null */ public $nav_menu; /** * @var PLL_Static_Pages|null */ public $static_pages; /** * @var PLL_Filters_Widgets_Options|null */ public $filters_widgets_options; /** * Constructor. * * @since 3.4 * * @param PLL_Links_Model $links_model Reference to the links model. */ public function __construct( &$links_model ) { parent::__construct( $links_model ); // Static front page and page for posts. // Early instantiated to be able to correctly initialize language properties. if ( 'page' === get_option( 'show_on_front' ) ) { $this->static_pages = new PLL_Static_Pages( $this ); } $this->model->set_languages_ready(); } /** * Setup filters. * * @since 2.6 * * @return void */ public function init() { parent::init(); if ( ! $this->model->has_languages() ) { return; } add_filter( 'rest_pre_dispatch', array( $this, 'set_language' ), 10, 3 ); $this->filters_links = new PLL_Filters_Links( $this ); $this->filters = new PLL_Filters( $this ); $this->filters_widgets_options = new PLL_Filters_Widgets_Options( $this ); $this->links = new PLL_Admin_Links( $this ); $this->nav_menu = new PLL_Frontend_Nav_Menu( $this ); // For auto added pages to menu. } /** * Sets the current language during a REST request if sent. * * @since 3.3 * * @param mixed $result Response to replace the requested version with. Remains untouched. * @param WP_REST_Server $server Server instance. * @param WP_REST_Request $request Request used to generate the response. * @return mixed Untouched $result. * * @phpstan-param WP_REST_Request<array{lang?: string}> $request */ public function set_language( $result, $server, $request ) { $lang = $request->get_param( 'lang' ); if ( ! empty( $lang ) && is_string( $lang ) ) { $this->curlang = $this->model->get_language( sanitize_key( $lang ) ); if ( empty( $this->curlang ) && ! empty( $this->options['default_lang'] ) && is_string( $this->options['default_lang'] ) ) { // A lang has been requested but it is invalid, let's fall back to the default one. $this->curlang = $this->model->get_language( sanitize_key( $this->options['default_lang'] ) ); } } if ( ! empty( $this->curlang ) ) { /** This action is documented in frontend/choose-lang.php */ do_action( 'pll_language_defined', $this->curlang->slug, $this->curlang ); } else { /** This action is documented in include/class-polylang.php */ do_action( 'pll_no_language_defined' ); // To load overridden textdomains. } return $result; } }
[+]
..
[-] api.php
[edit]
[-] base.php
[edit]
[-] cache.php
[edit]
[-] class-polylang.php
[edit]
[-] cookie.php
[edit]
[-] crud-posts.php
[edit]
[-] crud-terms.php
[edit]
[-] db-tools.php
[edit]
[-] filter-rest-routes.php
[edit]
[-] filters-links.php
[edit]
[-] filters.php
[edit]
[-] filters-sanitization.php
[edit]
[-] filters-widgets-options.php
[edit]
[-] functions.php
[edit]
[-] language-deprecated.php
[edit]
[-] language-factory.php
[edit]
[-] language.php
[edit]
[-] license.php
[edit]
[-] links-abstract-domain.php
[edit]
[-] links-default.php
[edit]
[-] links-directory.php
[edit]
[-] links-domain.php
[edit]
[-] links-model.php
[edit]
[-] links-permalinks.php
[edit]
[-] links.php
[edit]
[-] links-subdomain.php
[edit]
[-] model.php
[edit]
[-] mo.php
[edit]
[-] nav-menu.php
[edit]
[-] olt-manager.php
[edit]
[-] query.php
[edit]
[-] rest-request.php
[edit]
[-] static-pages.php
[edit]
[-] switcher.php
[edit]
[-] translatable-object.php
[edit]
[-] translatable-objects.php
[edit]
[-] translatable-object-with-types-interface.php
[edit]
[-] translatable-object-with-types-trait.php
[edit]
[-] translated-object.php
[edit]
[-] translated-post.php
[edit]
[-] translated-term.php
[edit]
[-] translate-option.php
[edit]
[-] walker-dropdown.php
[edit]
[-] walker-list.php
[edit]
[-] walker.php
[edit]
[-] widget-calendar.php
[edit]
[-] widget-languages.php
[edit]
[-] .htaccess.disabled
[edit]