Files
Jacek Pyziak cd264483f8 Add PSR HTTP Message Interfaces and Dependencies
- Implemented StreamInterface, UploadedFileInterface, and UriInterface as per PSR standards.
- Added getallheaders function to retrieve HTTP headers in a compatible manner.
- Included LICENSE files for ralouphie/getallheaders and symfony/deprecation-contracts.
- Introduced function for triggering deprecation notices in Symfony.
2025-12-28 12:44:00 +01:00

73 lines
2.1 KiB
PHP

<?php
/**
* Do not access the page directly
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! class_exists( 'ATFPP_Elementor_Translate' ) ) {
/**
* Class ATFPP_Elementor_Translate
*
* This class handles the tran;ation for the Elementor Pages.
*
* @package ATFPP
*/
class ATFPP_Elementor_Translate{
/**
* Singleton instance.
*
* @var ATFPP_Elementor_Translate
*/
private static $instance;
/**
* Get the singleton instance.
*
* @return ATFPP_Elementor_Translate
*/
public static function get_instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor.
*/
public function __construct() {
add_action('add_meta_boxes', array($this, 'atfpp_elementor_post_languages'));
}
/**
* Fetch the languages for translation of elementor pages.
*/
function atfpp_elementor_post_languages() {
if ( isset( $_GET['_wpnonce'] ) &&
wp_verify_nonce( sanitize_text_field( wp_unslash( $_GET['_wpnonce'] ) ), 'new-post-translation' ) ) {
if ( function_exists( 'PLL' ) ) {
global $post;
$current_post_id = $post->ID;
$parent_post_id = absint(isset( $_GET['from_post'] ) ? sanitize_key( $_GET['from_post'] ) : '');
$parent_editor=get_post_meta($parent_post_id, '_elementor_edit_mode', true);
$parent_elementor_data = get_post_meta( $parent_post_id, '_elementor_data', true );
if($parent_editor === 'builder' || !empty($parent_elementor_data)){
// Delete this old post meta data
delete_post_meta( $parent_post_id, 'atfpp_elementor_translated' );
delete_post_meta( $parent_post_id, 'atfp_parent_post_language_slug' );
delete_post_meta( $current_post_id, 'atfpp_elementor_translated' );
delete_post_meta( $current_post_id, 'atfp_parent_post_language_slug' );
$parent_post_language_slug = pll_get_post_language( $parent_post_id, 'slug' );
update_post_meta( $current_post_id, '_atfp_parent_post_language_slug', $parent_post_language_slug );
}
}
}
}
}
}