From d7dbe7fee362d587dfc334135d9581b6216a4295 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sun, 23 Nov 2025 04:13:56 +0000
Subject: [PATCH] =Timeline block, and feed block updated. DataStore.js refactored to not block rendering

---
 inc/helpers/breadcrumbs.php |   37 +++++++++++++++++++++++--------------
 1 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/inc/helpers/breadcrumbs.php b/inc/helpers/breadcrumbs.php
index 4a42118..81cb9b8 100644
--- a/inc/helpers/breadcrumbs.php
+++ b/inc/helpers/breadcrumbs.php
@@ -1,6 +1,7 @@
 <?php
 
 use JVBase\managers\CacheManager;
+use JVBase\utility\Features;
 
 if (!defined('ABSPATH')) {
 	exit;
@@ -12,7 +13,7 @@
  */
 function jvbGetCrumbs():array
 {
-    $cache = CacheManager::for('breadcrumbs', MONTH_IN_SECONDS);
+    $cache = CacheManager::for('breadcrumbs', MONTH_IN_SECONDS)->connectTo('all');
     $key = get_queried_object_id();
     $crumbs = $cache->get($key);
 	$crumbs = false;
@@ -31,19 +32,27 @@
 
     //taxonomies extra
     if (is_tax()) {
-        switch ($obj->taxonomy) {
-            case BASE.'type':
-                $type = 'artist';
-                break;
-            default:
-                $type = jvbNoBase($obj->taxonomy);
-                break;
-        }
-        $directory = jvbDirectories($type);
-        $crumbs[] = [
-            'name'  => $directory['title'],
-            'url'   => $directory['url']
-        ];
+		$tax = jvbNoBase($obj->taxonomy);
+		$config = Features::getConfig($tax, 'term');
+		if (count($config['for_content']) === 1) {
+			$contentConfig = JVB_CONTENT[$config['for_content'][0]];
+			$crumbs[] = [
+				'name'	=> $contentConfig['breadcrumb']??$contentConfig['plural'],
+				'url'	=> get_post_type_archive_link(jvbCheckBase($config['for_content'][0])),
+			];
+			$crumbs[] = [
+				'name'	=> 'By '.$config['singular'],
+				'url'	=> false,
+			];
+		}
+		if (Features::forTaxonomy($tax)->has('directory')){
+			$directory = jvbDirectories($tax);
+			$crumbs[] = [
+				'name'  => $directory['title'],
+				'url'   => $directory['url']
+			];
+		}
+
         $crumbs = array_merge($crumbs, jvbGetBreadcrumbTermHierarchy($obj));
 
     }

--
Gitblit v1.10.0