Código
Puede usar o descargar la carpeta en GitHub
Archivo "arp-admin.js"
jQuery(document).ready(function($){
// Al pulsar Quick Edit: rellenar campos con los datos actuales
var wp_inline_edit = inlineEditPost.edit;
inlineEditPost.edit = function( post_id ) {
wp_inline_edit.apply(this, arguments);
var id = 0;
if (typeof(post_id) == 'object') {
id = parseInt(this.getId(post_id));
}
if (id > 0) {
var row = $('#post-' + id);
var prefijo = row.find('td.column-arp_ubicacion').data('arp-prefijo') || '';
// Pero podemos obtener el texto mostrado y tratarlo:
var text = row.find('td.column-arp_ubicacion').text().trim();
// Rellenar los campos del quick edit
var $edit_row = $('#edit-' + id);
// Si no encontramos el zone, rellenamos el area del quick edit global
$('#edit-' + id).find('select[name="arp_ubicacion_prefijo_qe"]').val('');
$('#edit-' + id).find('input[name="arp_ubicacion_lugar_qe"]').val('');
// Alternativa simple: si text tiene espacio, separar primer palabra como prefijo y resto lugar
if (text && text !== '—') {
var parts = text.split(' ');
// Buscamos si el primer token coincide con una de las opciones
var opciones = ['Reportando','Reportó','Reportaron','En','Desde'];
var first = parts[0];
var pref = '';
var lugar = text;
// Buscar coincidencia prefijo exacta o "En vivo desde"
var known = ['Reportando','Reportó','Reportaron','En vivo desde','Desde'];
for (var i=0;i<known.length;i++){
if (text.indexOf(known[i]) === 0) {
pref = known[i];
lugar = text.replace(known[i],'').trim();
break;
}
}
if (pref) {
$('#edit-' + id).find('select[name="arp_ubicacion_prefijo_qe"]').val(pref);
$('#edit-' + id).find('input[name="arp_ubicacion_lugar_qe"]').val(lugar);
} else {
$('#edit-' + id).find('input[name="arp_ubicacion_lugar_qe"]').val(text);
}
}
}
};
// Cuando se abre quick edit en la lista desde el botón "Quick Edit" estándar,
// WordPress clona la fila .inline-edit-row; por eso usamos evento click
$(document).on('click', '.editinline', function(){
var row = $(this).closest('tr');
var post_id = row.attr('id').replace('post-','');
var text = row.find('td.column-arp_ubicacion').text().trim();
var $inline = $('#edit-'+post_id);
if (!$inline.length) {
// quick edit global
var $qe = $('#the-list').find('tr.inline-edit-row');
$qe.find('select[name="arp_ubicacion_prefijo_qe"]').val('');
$qe.find('input[name="arp_ubicacion_lugar_qe"]').val('');
if (text && text !== '—') {
// intentar separar
var known = ['Reportando','Reportó','Reportaron','En vivo desde','Desde'];
var pref = '';
var lugar = text;
for (var i=0;i<known.length;i++){
if (text.indexOf(known[i]) === 0) {
pref = known[i];
lugar = text.replace(known[i],'').trim();
break;
}
}
if (pref) {
$qe.find('select[name="arp_ubicacion_prefijo_qe"]').val(pref);
$qe.find('input[name="arp_ubicacion_lugar_qe"]').val(lugar);
} else {
$qe.find('input[name="arp_ubicacion_lugar_qe"]').val(text);
}
}
}
});
});Archivo "autor-ubicacion-elementor.php"
Archivo "style.css"
Archivo "widget-autor.php"
Última actualización
¿Te fue útil?