Cómo añadir código justo debajo de la etiqueta body de apertura en el framework Genesis
Necesitamos añadir dos fragmentos de código, uno justo debajo de la etiqueta de apertura body y otro justo antes de la etiqueta de cierre body. ¿Cuál es la mejor manera de hacer esto? Revisé wp_enqueue_script, pero parece que el contenido quedaría en la sección head.

¿Acaso abriste el archivo header.php
y le echaste un vistazo? Verás que se llama a genesis_before()
justo después de la etiqueta de apertura <body>
- sigue al conejo blanco y obtendrás:
function genesis_before() { do_action('genesis_before'); }
Y de manera similar para el pie de página. Así que...
add_action( 'genesis_before', 'soy_un_copiador_perezoso' );
add_action( 'genesis_after', 'soy_un_copiador_perezoso' );
function soy_un_copiador_perezoso() {
if ( current_filter() == 'genesis_before' )
echo '<script>party.start();</script>';
else
echo '<script>if ( cops.called() ) party.split();</script>';
}

Puedes utilizar un plugin como este para mostrar todos los hooks de Genesis: http://wordpress.org/plugins/genesis-visual-hook-guide/. Esto te permitirá encontrar rápidamente el hook correcto para modificar y lograr esto. Luego modifica el hook en el archivo de funciones. También puedes usar un plugin que te permita modificar fácilmente los hooks desde el wp-admin: http://www.studiopress.com/plugins/simple-hooks

Estabas en el camino correcto. wp_enqueue_script
toma un parámetro llamado in_footer que define si tu script debe cargarse antes del contenido de la página o al final del cuerpo de la página.
$in_footer: (booleano) (opcional) Normalmente los scripts se colocan en la sección
<head>
. Si este parámetro es verdadero, el script se coloca al final del<body>
. Esto requiere que el tema tenga el hookwp_footer()
en el lugar adecuado. Ten en cuenta que debes encolar tu script antes de que se ejecutewp_head
, incluso si se colocará en el pie de página. Por defecto:false
Aquí está la referencia en el codex: http://codex.wordpress.org/Function_Reference/wp_enqueue_script

Después de la etiqueta de apertura del body.
add_action( 'genesis_before', 'my_genesis_script' ); function my_genesis_script() { if ( current_filter() == 'genesis_before' ) echo '<script>parties.over();</script>'; }
Ganchos de acción estructurales
genesis_before: Este gancho se ejecuta inmediatamente después de la etiqueta de apertura en el código fuente del documento.
- Antes de la etiqueta de cierre del body:
Puedes agregar el script en Genesis > Configuración del Tema > Scripts de cabecera y pie de página e ingresar tu script que deseas que se muestre en wp_footer().
El gancho wp_footer() se ejecuta inmediatamente antes de la etiqueta de cierre en el código fuente del documento.

Por lo que sé, Brad, puedes eliminar la verificación de current_filter()
. En este caso, a menos que tengas condicionales dentro de tu función my_genesis_script()
, verificar si el filtro está adjunto al hook al que te estás enganchando es innecesario dentro de la función.

Una actualización para GenesisWP 3.3.1
Ir a header.php
?>
</head>
<?php
genesis_markup(
[
'open' => '<body %s>',
'context' => 'body',
]
);
if ( function_exists( 'wp_body_open' ) ) {
wp_body_open();
}
echo '<script>parties.over();</script>';
/**
* Se ejecuta inmediatamente después del hook 'wp_body_open'.
*
* @since 1.0.0
*/
do_action( 'genesis_before' )
