feat: style and filter cat with image

This commit is contained in:
MrRaph_
2025-05-23 10:19:06 +00:00
parent 20f9c31008
commit 7bdf28048c
3 changed files with 104 additions and 36 deletions

View File

@@ -101,6 +101,21 @@ class Elementor_Category_Grid_Widget extends \Elementor\Widget_Base {
]
);
// ----------------------------------------------------------------------
// Contrôle : Ne montrer que les catégories avec image
$this->add_control(
'hide_without_image',
[
'label' => esc_html__( 'Afficher uniquement catégories avec image', 'category-grid-widget' ),
'type' => \Elementor\Controls_Manager::SWITCHER,
'label_on' => esc_html__( 'Oui', 'category-grid-widget' ),
'label_off' => esc_html__( 'Non', 'category-grid-widget' ),
'return_value' => 'yes',
'default' => 'no',
'description' => esc_html__( 'Si activé, les catégories sans image seront masquées.', 'category-grid-widget' ),
]
);
// Contrôle : Trier par (critère de tri des catégories).
$this->add_control(
'order_by',
@@ -250,6 +265,11 @@ class Elementor_Category_Grid_Widget extends \Elementor\Widget_Base {
$image_url = wp_get_attachment_image_url( $thumbnail_id, $size );
}
// *** Nouveau filtre ***
if ( 'yes' === $settings['hide_without_image'] && empty( $image_url ) ) {
continue;
}
echo '<div class="category-card">';
// Rendre la carte cliquable vers l'archive de la catégorie.
echo '<a href="' . esc_url( $term_link ) . '">';