Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
PUM_WPML_Integration::remap_conditions( $conditions, null $new_lang = null )
Description Description
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Warning: foreach() argument must be of type array|object, string given in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 813
Warning: Array to string conversion in /mnt/data/home/502433.cloudwaysapps.com/rhbymdevka/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 808
Parameters Parameters
- $conditions
-
(Required)
- $new_lang
-
(Optional)
Default value: null
Return Return
(mixed)
Source Source
File: includes/integrations/class-pum-wpml.php
public static function remap_conditions( $conditions, $new_lang = null ) { if ( ! isset( $new_lang ) && empty( $_GET['lang'] ) ) { return $conditions; } if ( ! isset( $new_lang ) ) { $new_lang = $_GET['lang']; } foreach ( $conditions as $group_key => $group ) { foreach ( $group as $key => $condition ) { $target = $condition['target']; $tests = array( strpos( $target, '_selected' ) !== false, strpos( $target, '_ID' ) !== false, strpos( $target, '_children' ) !== false, strpos( $target, '_ancestors' ) !== false, strpos( $target, '_w_' ) !== false, ); if ( ! in_array( true, $tests ) ) { continue; } // Taxonomy if ( strpos( $target, 'tax_' ) === 0 ) { $t = explode( '_', $target ); // Remove the tax_ prefix. array_shift( $t ); // Assign the last key as the modifier _all, _selected $modifier = array_pop( $t ); // Whatever is left is the taxonomy. $type = implode( '_', $t ); } // Post by Tax elseif ( strpos( $target, '_w_' ) !== false ) { $t = explode( '_w_', $target ); // First key is the post type. $post_type = array_shift( $t ); // Last Key is the taxonomy $type = array_pop( $t ); } // Post Type else { $t = explode( '_', $target ); // Modifier should be the last key. $modifier = array_pop( $t ); // Post type is the remaining keys combined. $type = implode( '_', $t ); } // To hold the newly remapped selection. $selected = array(); foreach ( wp_parse_id_list( $condition['selected'] ) as $object_id ) { // Insert the translated post_id or the original if no translation exists. $selected[] = wpml_object_id_filter( $object_id, $type, true, $new_lang ); } // Replace the original conditions with the new remapped ones. $conditions[ $group_key ][ $key ]['selected'] = $selected; } } return $conditions; }
Expand full source code Collapse full source code View on Trac