Necesitaba una forma de filtrar el contenido de una página / publicaciones antes de que se cargara para poder agregar scripts al encabezado si hubiera un shortcode específico. Después de mucho buscar encontré esto en enlace
function has_my_shortcode($posts) {
if ( empty($posts) )
return $posts;
$found = false;
foreach ($posts as $post) {
if ( stripos($post->post_content, '[my_shortcode') )
$found = true;
break;
}
if ($found){
$urljs = get_bloginfo( 'template_directory' ).IMP_JS;
wp_register_script('my_script', $urljs.'myscript.js' );
wp_print_scripts('my_script');
}
return $posts;
}
add_action('the_posts', 'has_my_shortcode');
que es absolutamente brillante e hizo exactamente lo que necesitaba.
Ahora necesito extenderlo un poco más y hacer lo mismo para las barras laterales. Puede ser por un tipo de widget particular, código corto, fragmento de código o cualquier otra cosa que funcione para identificar cuándo se necesita cargar el script.
El problema es que no puedo averiguar cómo acceder al contenido de las barras laterales antes de que se cargue la barra lateral (el tema en cuestión tendrá varias barras laterales)