Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function saveAjaxOrder()
- {
- global $wpdb;
- global $polylang;
- // get current language ##
- $pll_current_language = function_exists('pll_current_language') ? pll_current_language() : 'en' ;
- #echo 'Language: '.$pll_current_language.'<br /><br />';
- // get all available languages ##
- if ( isset ( $polylang ) ) {
- $pll_languages_list = $polylang->get_languages_list( array( 'fields' => 'slug' ) );
- } else {
- $pll_languages_list = array ( 0 => 'en' );
- }
- #var_export( $pll_languages_list ); echo '<br /><br />';
- // parge args ##
- parse_str( $_POST['order'], $data );
- if ( is_array( $data ) )
- {
- foreach( $data as $key => $values )
- {
- if ( $key == 'item' )
- {
- foreach( $values as $position => $id )
- {
- #echo 'ITEM / ID: '.$id.' / '.$position.' / ';
- #$wpdb->update( $wpdb->posts, array('menu_order' => $position, 'post_parent' => 0), array('ID' => $id) );
- // get item language, if different from current language, skip ##
- foreach ( $pll_languages_list as $data => $value ) {
- if ( function_exists( 'pll_get_post' ) ) {
- $partner_id = pll_get_post( $id, $value );
- #echo 'LAN '.$polylang->get_post_language( $partner_id )->slug.' / ';
- if ( $partner_id ) {
- #echo 'ITEM / ID: '.$partner_id.' / '.$position.'<br />';
- $wpdb->update( $wpdb->posts, array('menu_order' => $position, 'post_parent' => 0), array('ID' => $partner_id) );
- }
- } else {
- $wpdb->update( $wpdb->posts, array('menu_order' => $position, 'post_parent' => 0), array( 'ID' => $id ) );
- }
- }
- #echo '<br /><br />';
- }
- } else {
- foreach( $values as $position => $id )
- {
- #echo 'ITEM / ID: '.$id.' / '.$position.', ';
- $wpdb->update( $wpdb->posts, array('menu_order' => $position, 'post_parent' => str_replace('item_', '', $key)), array('ID' => $id) );
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement