Custom Functions ( Affect Admin ) [?]

/** * Handles the options in the language switcher nav menu metabox. * * @package Polylang */ jQuery( function ( $ ) { $( '#update-nav-menu' ).on( 'click', function ( e ) { if ( e.target && e.target.className && -1 != e.target.className.indexOf( 'item-edit' ) ) { $( "input[value='#pll_switcher'][type=text]" ).parent().parent().parent().each( function () { var item = $( this ).attr( 'id' ).substring( 19 ); $( this ).children( 'p:not( .field-move )' ).remove(); // remove default fields we don't need // item is a number part of id of parent menu item built by WordPress // pll_data is built server side with i18n strings without HTML and data retrieved from post meta // the usage of attr method is safe before append call. h = $( '' ).attr( { type: 'hidden', id: 'edit-menu-item-title-' + item, name: 'menu-item-title[' + item + ']', value: pll_data.title } ); $( this ).append( h ); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.append h = $( '' ).attr( { type: 'hidden', id: 'edit-menu-item-url-' + item, name: 'menu-item-url[' + item + ']', value: '#pll_switcher' } ); $( this ).append( h ); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.append // a hidden field which exits only if our jQuery code has been executed h = $( '' ).attr( { type: 'hidden', id: 'edit-menu-item-pll-detect-' + item, name: 'menu-item-pll-detect[' + item + ']', value: 1 } ); $( this ).append( h ); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.append ids = Array( 'hide_if_no_translation', 'hide_current', 'force_home', 'show_flags', 'show_names', 'dropdown' ); // reverse order // add the fields for ( var i = 0, idsLength = ids.length; i < idsLength; i++ ) { p = $( '

' ).attr( 'class', 'description' ); // p is hardcoded just above by using attr method which is safe. $( this ).prepend( p ); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.prepend // item is a number part of id of parent menu item built by WordPress // pll_data is built server side with i18n strings without HTML label = $( '