¿Cómo puedo añadir un evento jQuery OnClick al botón de Publicar entradas?
Quiero añadir un simple evento de confirmación al botón de Publicar entradas, para que cuando mi cliente pulse "Publicar" le pregunte si está seguro, pudiendo hacer clic en "Sí" o "cancelar" y la entrada se publique o no.
Soy nuevo en WordPress... o al menos solo he hecho programación de temas y plugins limitados. Encontré el código del metabox para el botón "Publicar" en edit-form-advanced.php
:
add_meta_box('submitdiv', __('Publicar'), 'post_submit_meta_box', null, 'side', 'core');
Pero para lograrlo, sospecho que necesitaré añadir el código jQuery en otro lugar - preferiblemente en mi tema.
Por razones específicas del sitio, no puedo añadir nuevos plugins a esta instalación, así que los cambios deben limitarse al archivo functions.php
de mi tema.
Puedes engancharte a las acciones del pie de página del post (basado en esta respuesta, no probado):
add_action( 'admin_footer-post-new.php', 'wpse_80215_script' );
add_action( 'admin_footer-post.php', 'wpse_80215_script' );
function wpse_80215_script()
{
if ( 'post' !== $GLOBALS['post_type'] )
return;
?>
<script>
document.getElementById("publish").onclick = function() {
if ( confirm( "¿Listo?" ) )
return true;
return false;
}</script>
<?php
}
Estas acciones son llamadas en wp-admin/admin-footer.php
:
do_action( "admin_footer-" . $GLOBALS['hook_suffix'] );
Este código puede usarse en un plugin (preferible) o en el functions.php
de tu tema.
Ver también:

Ok, agregué el código anterior en mi archivo functions.php y no pasó nada. ¿Es correcto asumir que el script js va en el archivo admin_footer? En este caso, primero probé el código agregando el fragmento completo anterior a functions.php...

También... algo que me confunde... no veo ningún archivo en wp-admin llamado admin_footer-post-new.php o admin_footer-post.php. Solo está admin-footer.php que parece un archivo bastante simple. ¿Esto podría hacer que mis hooks no funcionen?

Gracias. Ahora lo veo. Estaba poniendo todo en funciones. Enlaces informativos también.

Hay un plugin de WordPress para eso:
Confirm Publishing Actions es un plugin de WordPress que solicita al usuario que haga clic en un botón de confirmación (o cancelar) cada vez que intenta enviar, publicar, actualizar o eliminar una entrada de WordPress.
