Pregunta sobre All-in-One Video Gallery de Wordpress:

Ordenar categoría por recuento

Un usuario preguntó 👇

Hola,

He creado alguna categoría y subcategoría en mi sitio web. El valor predeterminado es mostrar la categoría. sobre cada video (class = «aiovg-link-category» alfabéticamente. En las páginas de categorías, encontré cómo cambiarlo contando en lugar del alfabeto. Pero en el resto no lo hice.

Gracias

(@wpvideogallery)

Hace 1 año, 4 meses

Aah. Lo sentimos, los enlaces de categoría que se muestran debajo de cada video no coinciden con las categorías ordenadas establecidas en la página de configuración del plugin. Prometo que nuestra próxima versión puede hacer esto. Por favor sea paciente.

(@maytro)

Hace 1 año, 4 meses

¿Y no puedo hacer eso en el lado del servidor? Soy un programador

(@wpvideogallery)

Hace 1 año, 4 meses

Todo lo que tiene que hacer es editar los siguientes archivos de plantilla,

/wp-content/plugins/all-in-one-video-gallery/public/templates/video-thumbnail.php
/wp-content/plugins/all-in-one-video-gallery/public/templates/video-thumbnail-image-left.php
/wp-content/plugins/all-in-one-video-gallery/public/templates/single-video.php

Puede encontrar que nuestros archivos de plantilla utilizan la función «get_the_terms» de WordPress para encontrar las categorías. Simplemente siga el tutorial aquí https://www.yukei.net/2016/04/use-get_the_terms-instead-of-wp_get_object_terms/ que proporciona los pasos precisos para cambiar el orden de las categorías.

¡Espero que esto te ayude!

Esta respuesta fue modificada hace 1 año, 4 meses.

(@maytro)

Hace 1 año, 4 meses

Hola, Perdón por mis mensajes, pero hay un problema con la función que proporcionas.

Aquí está mi código ahora. ¿Reconoces mi error?

// using get_the_terms()
 $categories = get_the_terms( get_the_ID(), 'aiovg_categories' );
// $popular_terms will be ordered alphabetically, so let's order by count
$categories = usort( $categories, function( $a, $b ){
    if ( $a->count < $b->count ) {
        return 1;
    }
    if ( $a->count > $b->count ) {
        return -1;
    }
    return 0;

} );  
// we only need slugs, so...
$categories = wp_list_pluck( $categories, 'names' );

            if ( ! empty( $categories ) ) {
                $meta = array();
                foreach ( $categories as $category ) {
                    $category_url = aiovg_get_category_page_url( $category );
                    $meta[]       = sprintf( '<a  href="%s" class="aiovg-link-category">%s</a>', esc_url( $category_url ), esc_html( $category->name ) );
                }
				

			
		   printf( '<div class="aiovg-category"><span class="aiovg-icon-folder-open"></span> %s</div>', implode( ', ', $meta ) );

			
                
            }

Encontré los siguientes errores: 1. Advertencia: se proporcionó un argumento no válido para foreach () en /home/media/public_html/materials/wp-includes/class-wp-list-util.php en línea 148

2.

Advertencia: se proporcionó un argumento no válido para foreach () en /home/media/public_html/materials/wp-content/plugins/all-in-one-video-gallery-premium/public/templates/video-thumbnail.php en línea 78

(@wpvideogallery)

Hace 1 año, 4 meses

Por favor, elimine su código y reemplácelo con la siguiente línea,

$categories = get_the_terms( get_the_ID(), 'aiovg_categories' );

como

$categories = wp_get_object_terms( get_the_ID(), 'aiovg_categories', array( 
'orderby' => 'count',
'order'   => 'DESC'
));

¡Con suerte, esto resolvió tu pregunta!

Esta respuesta fue modificada hace 1 año, 4 meses.

(@maytro)

Hace 1 año, 4 meses

¡Ahora está funcionando correctamente! Agradezco la ayuda.

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada.