¿Desea agregar publicaciones fijas a páginas de archivo de tipo de publicación personalizada?
Colocar sus publicaciones personalizadas más importantes en la parte superior de la página ayudará a sus visitantes a encontrarlas más fácilmente. Pero de forma predeterminada, WordPress hace que la funcionalidad adhesiva esté disponible para publicaciones, pero no para otros tipos de publicaciones.
En este artículo, veremos cómo agregar publicaciones fijas en archivos de tipo de publicación personalizada de WordPress.
¿Por qué hacer que las publicaciones personalizadas de WordPress sean pegajosas?
Si crea contenido para su sitio web de WordPress con un formato diferente al de una publicación o página estándar, probablemente ya esté utilizando un tipo de publicación personalizada. Por ejemplo, si tiene un sitio web de reseñas de libros, es posible que haya creado un tipo de publicación de reseñas de libros.
Es posible que desee colocar su contenido más importante en la parte superior del archivo de tipo de publicación personalizada. Es una de las mejores formas de presentar contenido en profundidad y urgente, así como sus publicaciones personalizadas más populares.
Pero aunque WordPress ofrece una función de publicaciones adhesivas, esta no está disponible para tipos de publicaciones personalizadas.
Echemos un vistazo a cómo agregar una función adhesiva a sus páginas de archivo de tipo de publicación personalizada.
Agregar publicaciones fijas en tipos de publicaciones personalizadas
Primero deberá instalar y activar el Publicaciones adhesivas – Cambiar enchufar. Para obtener más detalles, consulte nuestra guía paso a paso sobre cómo instalar un complemento de WordPress.
En la activación, debe visitar el Configuración »Publicaciones fijas – Cambiar página para configurar el complemento. Simplemente marque la casilla junto a los tipos de publicaciones personalizadas que desea poder hacer pegajosas. Para este tutorial, verificaremos el tipo de publicación ‘Reseñas de libros’.
Después de eso, debe hacer clic en el botón ‘Guardar cambios’ en la parte inferior de la pantalla.
Ahora, cuando visite la página de administración para ese tipo de publicación personalizada, notará una nueva columna donde puede hacer que las publicaciones sean pegajosas. Todo lo que necesita hacer es hacer clic en la estrella junto a las publicaciones que desea destacar.
Ahora ha hecho que la publicación sea pegajosa. El problema es que WordPress solo muestra publicaciones fijas en la página de inicio. A continuación, veremos cómo mostrar publicaciones fijas en páginas de archivo.
Visualización de publicaciones fijas en archivos de tipo de publicación personalizados
Para mostrar sus publicaciones fijas en la parte superior de su página de archivo de publicaciones personalizadas, debe crear una nueva plantilla.
Para hacer esto, necesitará usar un cliente FTP o la opción de administrador de archivos en su panel de control de alojamiento de WordPress. Si no ha utilizado FTP antes, le recomendamos que consulte nuestra guía sobre cómo utilizar FTP para cargar archivos en WordPress.
Debe acceder a su sitio utilizando su cliente FTP o administrador de archivos, y luego ir a la /wp-content/themes/YOURTHEME/
carpeta. Por ejemplo, si usa el tema Twenty Twenty-One, entonces necesita navegar a /wp-content/themes/twentytwentyone/
.
A continuación, debe crear un nuevo archivo en esa carpeta con un nombre como archive-POSTTYPE.php
. Por ejemplo, si su tipo de publicación personalizada es ‘bookreviews’, debe crear un nuevo archivo llamado archive-bookreviews.php
.
Después de eso, debe encontrar el archivo archive.php en la misma carpeta. Simplemente copie el contenido de archive.php y péguelo en el nuevo archivo que creó.
El siguiente paso requiere que agregue código a sus archivos de tema. Si necesita ayuda para agregar código a su sitio, consulte nuestra guía sobre cómo agregar código personalizado en WordPress.
Cuando esté listo, debe agregar el siguiente código en el archivo functions.php de su tema o en un complemento específico del sitio.
function wpb_cpt_sticky_at_top( $posts ) {
// apply it on the archives only
if ( is_main_query() && is_post_type_archive() ) {
global $wp_query;
$sticky_posts = get_option( 'sticky_posts' );
$num_posts = count( $posts );
$sticky_offset = 0;
// Find the sticky posts
for ($i = 0; $i < $num_posts; $i++) {
// Put sticky posts at the top of the posts array
if ( in_array( $posts[$i]->ID, $sticky_posts ) ) {
$sticky_post = $posts[$i];
// Remove sticky from current position
array_splice( $posts, $i, 1 );
// Move to front, after other stickies
array_splice( $posts, $sticky_offset, 0, array($sticky_post) );
$sticky_offset++;
// Remove post from sticky posts array
$offset = array_search($sticky_post->ID, $sticky_posts);
unset( $sticky_posts[$offset] );
}
}
// Look for more sticky posts if needed
if ( !empty( $sticky_posts) ) {
$stickies = get_posts( array(
'post__in' => $sticky_posts,
'post_type' => $wp_query->query_vars['post_type'],
'post_status' => 'publish',
'nopaging' => true
) );
foreach ( $stickies as $sticky_post ) {
array_splice( $posts, $sticky_offset, 0, array( $sticky_post ) );
$sticky_offset++;
}
}
}
return $posts;
}
add_filter( 'the_posts', 'wpb_cpt_sticky_at_top' );
// Add sticky class in article title to style sticky posts differently
function cpt_sticky_class($classes) {
if ( is_sticky() ) :
$classes[] = 'sticky';
return $classes;
endif;
return $classes;
}
add_filter('post_class', 'cpt_sticky_class');
Este código mueve sus publicaciones fijas a la parte superior. Si su tema usa el post_class()
, luego también agrega una clase ‘adhesiva’ para que pueda diseñar sus publicaciones adhesivas usando CSS.
Así es como se ve el archivo de tipo de publicación personalizada Reseñas de libros en nuestro sitio de demostración. Antes de agregar el código, la publicación fija ocupaba el segundo lugar en la lista.
Ahora puede diseñar sus publicaciones fijas usando .sticky
clase en tu tema style.css
hoja de estilo. He aquí un ejemplo.
.sticky {
background-color:#ededed;
background-image:url('http://example.com/wp-content/uploads/featured.png');
background-repeat:no-repeat;
background-position:right top;
}
Aquí hay una captura de pantalla actualizada de nuestro sitio web de demostración.
Esperamos que este tutorial le haya ayudado a aprender a agregar publicaciones fijas en archivos de tipo de publicación personalizados de WordPress. También puede aprender cómo acelerar su sitio web de WordPress, o consultar la lista de 27 consejos para aumentar el tráfico de su blog.