¿Cómo Insertar Shortcodes en el Tema?
Tengo un plugin de bloqueo de contenido.
Para bloquear contenidos, estoy usando este shortcode:
[wp-like-locker] Tu contenido bloqueado aquí... [/wp-like-locker]
y necesito bloquear cada entrada en mi blog. ¿Cómo podría insertar estos shortcodes en el tema y bloquear?
¡Muchas, muchas, muchas gracias por tu respuesta y tiempo!
Puedes incluir shortcodes directamente en un tema usando do_shortcode
.
http://codex.wordpress.org/Function_Reference/do_shortcode
echo do_shortcode('[wp-like-locker] Tu contenido bloqueado aquí... [/wp-like-locker]');
Lo más probable es que quieras reemplazar el texto fijo "Tu contenido bloqueado aquí..." con la función que extrae el contenido del editor, como the_content
http://codex.wordpress.org/Function_Reference/the_content
Podría verse así:
// el loop
$content = get_the_content();
echo do_shortcode('[wp-like-locker]' . $content . '[/wp-like-locker]');

Sería más rápido y limpio escribir una función para hacer esto y agregarla en functions.php. Se vería así (no probado):
add_action( 'the_content', 'wpse49094_lock_content' );
function wpse49094_lock_content( $content ) {
if( in_the_loop() ) {
$content = do_shortcode( 'do_shortcode(\'[wp-like-locker]\' . $content . \'[/wp-like-locker]\'');
return $content;
}
}

Puedes usar do_shortcode() para evaluar tu shortcode.
Puedes colocar el siguiente código en single.php en tu tema de WordPress. Esto aplicará a todas tus publicaciones que estén usando la plantilla por defecto.
<?php
get_template_part( 'content', 'single' );
echo do_shortcode('[wp-like-locker]');
echo "Tu contenido bloqueado";
echo do_shortcode('[/wp-like-locker]');
?>

Este código es incorrecto. Revisa la página del Codex sobre do_shortcode()
para ver cómo manejar shortcodes de apertura-cierre.
