HEX
Server: Apache/2.4.65 (Debian)
System: Linux kubikelcreative 5.10.0-35-amd64 #1 SMP Debian 5.10.237-1 (2025-05-19) x86_64
User: www-data (33)
PHP: 8.4.13
Disabled: NONE
Upload Files
File: /var/www/Gosurya/WP2/wp-content/themes/my-listing/sections/listing-categories.php
<?php
$data = c27()->merge_options([
	'terms' => [],
	'taxonomy' => 'job_listing_category',
	'template' => 'template_1',
    'overlay_type' => 'gradient',
    'overlay_gradient' => 'gradient1',
    'overlay_solid_color' => 'rgba(0, 0, 0, .5)',
    'columns' => ['lg' => 3, 'md' => 3, 'sm' => 2, 'xs' => 1],
    'container' => 'container-fluid',
], $data);

$term_ids = array_column((array) $data['terms'], 'category_id');
$items = [];
$explore_link = c27()->get_setting( 'general_explore_listings_page' );

if ( $data['taxonomy'] === 'listing_types' ) {
	$types = get_posts( [
		'post_type' => 'case27_listing_type',
		'posts_per_page' => -1,
		'post_status=any',
		'post__in' => $term_ids,
		'orderby' => 'post__in',
	] );

	foreach ( $types as $type ) {
		if ( ! ( $type = \MyListing\Src\Listing_Type::get( $type ) ) ) {
			continue;
		}

		$items[] = [
			'name' => $type->get_plural_name(),
			'link' => add_query_arg( 'type', $type->get_slug(), $explore_link ),
			'image' => $type->get_default_cover(),
			'count' => '',
			'color' => '#f24286',
			'text_color' => '#fff',
			'icon_template_1' => sprintf( '<i class="%s"></i>', esc_attr( $type->get_settings()['icon'] ) ),
			'icon_template_2' => sprintf( '<i class="%s"></i>', esc_attr( $type->get_settings()['icon'] ) ),
		];
	}

} elseif ( taxonomy_exists( $data['taxonomy'] ) ) {
	$terms = (array) get_terms( [
		'taxonomy' => $data['taxonomy'],
		'hide_empty' => false,
		'include' => array_filter( $term_ids ) ? : [-1],
		'orderby' => 'include',
	] );

	if ( is_wp_error( $terms ) ) {
		return;
	}

	foreach ( $terms as $term ) {
		$term = new MyListing\Src\Term( $term );
		$image = $term->get_image();
		$items[] = [
			'name' => $term->get_name(),
			'link' => $term->get_link(),
			'image' => is_array( $image ) ? $image['sizes']['large'] : false,
			'count' => $term->get_count(),
			'color' => $term->get_color(),
			'text_color' => $term->get_text_color(),
			'icon_template_1' => $term->get_icon( [ 'background' => false, 'color' => false ] ),
			'icon_template_2' => $term->get_icon( [ 'background' => false ] ),
		];
	}
}


$itemSize = sprintf( 'col-lg-%1$d col-md-%2$d col-sm-%3$d col-xs-%4$d',
					  12 / absint( $data['columns']['lg'] ), 12 / absint( $data['columns']['md'] ),
					  12 / absint( $data['columns']['sm'] ), 12 / absint( $data['columns']['xs'] ) );
?>

<?php if ( ! $data['template'] || $data['template'] == 'template_1' ): ?>

	<section class="i-section discover-places">
		<div class="<?php echo esc_attr( $data['container'] ) ?>">
			<div class="row section-body">

				<?php foreach ( $items as $item ): ?>

					<div class="<?php echo esc_attr( $itemSize ) ?>">
						<div class="listing-cat" >
							<a href="<?php echo esc_url( $item['link'] ) ?>">
								<div class="overlay <?php echo $data['overlay_type'] == 'gradient' ? esc_attr( $data['overlay_gradient'] ) : '' ?>"
                         			 style="<?php echo $data['overlay_type'] == 'solid_color' ? 'background-color: ' . esc_attr( $data['overlay_solid_color'] ) . '; ' : '' ?>"></div>
								<div class="lc-background" style="<?php echo $item['image'] ? "background-image: url('" . esc_url( $item['image'] ) . "');" : ''; ?>">
								</div>
								<div class="lc-info">
									<h4 class="case27-secondary-text"><?php echo esc_html( $item['name'] ) ?></h4>
									<h6><?php echo esc_html( $item['count'] ) ?></h6>
								</div>
								<div class="lc-icon">
									<?php echo $item['icon_template_1'] ?>
								</div>
							</a>
						</div>
					</div>

				<?php endforeach ?>

			</div>
		</div>
	</section>

<?php endif ?>

<?php if ($data['template'] == 'template_2'): ?>

	<section class="i-section all-categories">
		<div class="<?php echo esc_attr( $data['container'] ) ?>">
			<div class="row section-body">

				<?php foreach ( $items as $item ): ?>

					<div class="<?php echo esc_attr( $itemSize ) ?> ac-category">
						<div class="cat-card" >
							<a href="<?php echo esc_url( $item['link'] ) ?>">
								<div class="ac-front-side face">
									<div class="hovering-c">
										<span class="cat-icon" style="background-color: <?php echo esc_attr( $item['color'] ) ?>;">
											<?php echo $item['icon_template_2']; ?>
										</span>
										<span class="category-name"><?php echo esc_html( $item['name'] ) ?></span>
									</div>
								</div>
								<div class="ac-back-side face" style="background-color: <?php echo esc_attr( $item['color'] ) ?>;">
									<div class="hovering-c">
										<p style="color: <?php echo esc_attr( $item['text_color'] ) ?>;">
											<?php echo esc_html( $item['count'] ) ?>
										</p>
									</div>
								</div>
							</a>
						</div>
					</div>

				<?php endforeach ?>

			</div>
		</div>
	</section>

<?php endif ?>

<?php if ($data['template'] == 'template_3'): ?>

	<section class="i-section">
		<div class="<?php echo esc_attr( $data['container'] ) ?>">
			<div class="row">

				<?php foreach ( $items as $item ): ?>

					<div class="<?php echo esc_attr( $itemSize ) ?> car-item">
						<a href="<?php echo esc_url( $item['link'] ) ?>">
							<div class="car-item-container">
								<div class="car-item-img" style="<?php echo $item['image'] ? "background-image: url('" . esc_url( $item['image'] ) . "');" : ''; ?>">
								</div>
								<div class="car-item-details">
									<h3><?php echo esc_html( $item['name'] ) ?></h3>
									<p><?php echo esc_html( $item['count'] ) ?></p>
								</div>
							</div>
						</a>
					</div>

				<?php endforeach ?>

			</div>
		</div>
	</section>

<?php endif ?>

<?php if ($data['template'] == 'template_4'): ?>

	<section class="i-section">
		<div class="<?php echo esc_attr( $data['container'] ) ?>">
			<div class="regions-featured row">

				<?php foreach ( $items as $item ): ?>

					<div class="<?php echo esc_attr( $itemSize ) ?> one-region">
						<a href="<?php echo esc_url( $item['link'] ) ?>">
							<div class="region-details">
								<h2 class="case27-secondary-text"><?php echo esc_html( $item['name'] ) ?></h2>
								<h3><?php echo esc_html( $item['count'] ) ?></h3>
							</div>
							<div class="region-image-holder">
								<div class="region-image" style="<?php echo $item['image'] ? "background-image: url('" . esc_url( $item['image'] ) . "');" : ''; ?>">
									<div class="overlay"></div>
								</div>
							</div>
						</a>
					</div>

				<?php endforeach ?>

			</div>
		</div>
	</section>

<?php endif ?>