Mostrar post sticky mediante shortcode

Buenas, hoy os explicare como mostrar mediante un shortcode, las entradas marxacadas como fijas (sticky).

Lo primero será crear una entrada y marcarla como fija, en la parte de la dercha editaremos la visiblidad de la entrada:

Captura de pantalla 2015-05-18 a la(s) 11.13.08

Y la marcaremos como fija:

Captura de pantalla 2015-05-18 a la(s) 11.12.52

Luego iremos a al archivo functions de la plantilla que estemos usando y añadiremos el siguiente código:

 


function latest_sticky() { 
        /* obtener artículos destacados */
        $sticky = get_option( 'sticky_posts' );
        /* Ordenar , los má recientes arriba */
        rsort( $sticky );
        /* Obtener los últimos 5 (cambiar 5 por el número deseado) */
        $sticky = array_slice( $sticky, 0, 5 );
        /* Query destacados */
        $the_query = new WP_Query( array( 'post__in' => $sticky, 'ignore_sticky_posts' => 1 ) );
        // The Loop
        if ( $the_query->have_posts() ) {
            $return .= '<ul>';
            while ( $the_query->have_posts() ) {
                $the_query->the_post();
                $return .= '<li><a href="' .get_permalink(). '" title="'  . get_the_title() . '">' . get_the_title() . '</a><br />' . get_the_excerpt(). '</li>';
                
            }
            $return .= '</ul>';
            
        } else {
            // no posts found
    }
    /* reset */
    wp_reset_postdata();
    return $return; 
    } 
    add_shortcode('latest_stickies', 'latest_sticky');
//para usar el shortcode [lastest_stickies]

Si lo queremos usar en un widget debemos añadir a finar este código:

add_filter('widget_text', 'do_shortcode');

Información básica sobre protección de datos: Responsable: Wemcor Servicios Web, SL. Finalidad: desarrollar la actividad comercial y enviar comunicaciones comerciales a los usuarios que lo autoricen. Legitimación: Consentimiento del interesado. Destinatarios: Wemcor y proveedores legitimados externos. Derechos: Acceder, rectificar y suprimir los datos, así como otros derechos como se explica en la información adicional. También se puede instar reclamación ante la Agencia Española de Protección de Datos.

Deja un comentario

Artículo añadido al carrito.
0 artículos - 0,00