From fd6dba3203655be2c9c33581f821f13c2510957c Mon Sep 17 00:00:00 2001 From: Amir Bagheri Date: Thu, 29 Oct 2026 16:47:01 +0330 Subject: [PATCH] fix: destination cards show a tour photo again vc_term_image_url() cached empty results for 12h and relied on an SQL meta comparison to find a tour with a photo; destination cards site-wide (homepage and region pages) were blank. Read the photo in PHP from up to 10 tours (primary, else first gallery image), use a fresh cache key, and expire empty results after an hour. Plugin 1.9.3. Co-Authored-By: Claude Opus 5.5 --- viator-collector.zip | Bin 182340 -> 182548 bytes .../includes/class-vc-taxonomies.php | 2 +- viator-collector/includes/helpers.php | 30 +++++++++++------- viator-collector/viator-collector.php | 4 +-- 4 files changed, 21 insertions(+), 15 deletions(-) diff --git a/viator-collector.zip b/viator-collector.zip index 3447623f642731631036bad72028e8cf48ffb342..d25d8aa99d4561491032f4aa4c557079a3623efa 100644 GIT binary patch delta 10288 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 'viator_tour', - 'posts_per_page' => 1, + 'post_status' => 'publish', + 'posts_per_page' => 10, 'fields' => 'ids', 'no_found_rows' => true, 'update_post_term_cache' => false, @@ -206,21 +212,21 @@ function vc_term_image_url( $term_id, $taxonomy = '' ) { 'terms' => $term_id, ), ), - 'meta_query' => array( - array( - 'key' => '_vc_primary_image_url', - 'value' => '', - 'compare' => '!=', - ), - ), ) ); - if ( ! empty( $query->posts ) ) { - $url = (string) get_post_meta( (int) $query->posts[0], '_vc_primary_image_url', true ); + foreach ( $query->posts as $post_id ) { + $url = (string) get_post_meta( (int) $post_id, '_vc_primary_image_url', true ); + if ( '' === $url ) { + $gallery = vc_json_decode_meta( get_post_meta( (int) $post_id, '_vc_gallery_image_urls', true ), array() ); + $url = $gallery ? (string) reset( $gallery ) : ''; + } + if ( '' !== $url ) { + break; + } } } - set_transient( $cache_key, $url, 12 * HOUR_IN_SECONDS ); + set_transient( $cache_key, $url, '' !== $url ? 12 * HOUR_IN_SECONDS : HOUR_IN_SECONDS ); return $url; } diff --git a/viator-collector/viator-collector.php b/viator-collector/viator-collector.php index b9a3cf8..c32f095 100644 --- a/viator-collector/viator-collector.php +++ b/viator-collector/viator-collector.php @@ -4,13 +4,13 @@ defined('ABSPATH') || exit; /** * Plugin Name: Viator Collector * Description: Import Viator tours using the Viator Partner API and display them with native WordPress post types, templates, and shortcodes. - * Version: 1.9.2 + * Version: 1.9.3 * Author: Amir Bagheri * License: GPL-2.0-or-later * Text Domain: viator-collector */ -define('VC_VERSION', '1.9.2'); +define('VC_VERSION', '1.9.3'); define('VC_PLUGIN_FILE', __FILE__); define('VC_PLUGIN_DIR', plugin_dir_path(__FILE__)); define('VC_PLUGIN_URL', plugin_dir_url(__FILE__));