From 9f672be1f7bb5f8462374ca4732d095d4f24685b Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Sun, 29 Mar 2026 23:11:13 +0000
Subject: [PATCH] =minor fixes upon uploading to server
---
inc/managers/SEO/ConfigManager.php | 49 +++++++++++++++++++++++++++++--------------------
1 files changed, 29 insertions(+), 20 deletions(-)
diff --git a/inc/managers/SEO/ConfigManager.php b/inc/managers/SEO/ConfigManager.php
index c66bba3..b16a675 100644
--- a/inc/managers/SEO/ConfigManager.php
+++ b/inc/managers/SEO/ConfigManager.php
@@ -1,6 +1,8 @@
<?php
namespace JVBase\managers\SEO;
+use JVBase\registrar\Registrar;
+
if (!defined('ABSPATH')) {
exit;
}
@@ -72,10 +74,35 @@
protected function getMetaFor(string $type): array
{
$default = $this->registry->getDefaultMetaValues();
+
+ // Check if content/taxonomy config has SEO meta defined
+ $configMeta = $this->getDefaultConfig($type, 'meta');
+ if (!empty($configMeta)) {
+ $configMeta = $this->normalizeMetaKeys($configMeta);
+ $default = array_merge($default, $configMeta);
+ }
+
return get_option($this->metaKey, $default);
}
/**
+ * Normalize content-defined meta keys to system keys
+ */
+ private function normalizeMetaKeys(array $meta): array
+ {
+ $map = [
+ 'title' => 'metaTitle',
+ 'description' => 'metaDescription',
+ ];
+
+ $normalized = [];
+ foreach ($meta as $key => $value) {
+ $normalized[$map[$key] ?? $key] = $value;
+ }
+ return $normalized;
+ }
+
+ /**
* Get default schema configuration for a type
*/
protected function getConfigFor(string $type): array
@@ -119,10 +146,8 @@
default:
// Try to find in content, taxonomy, or user configs
- $config = $this->findInConstants($type);
- if (array_key_exists('seo', $config) && is_array($config['seo'])) {
- $config = $config['seo'];
- }
+ $registrar = Registrar::getInstance($type);
+ $config = $registrar->getConfig('seo');
// If asking for archive config and none exists, provide default
if ($configType === 'archive' && !isset($config['archive'])) {
@@ -136,22 +161,6 @@
return $config[$configType] ?? [];
}
}
- /**
- * Find configuration in JVB constants
- */
- private function findInConstants(string $type): array
- {
- if (defined('JVB_CONTENT') && isset(JVB_CONTENT[$type])) {
- return JVB_CONTENT[$type];
- }
- if (defined('JVB_TAXONOMY') && isset(JVB_TAXONOMY[$type])) {
- return JVB_TAXONOMY[$type];
- }
- if (defined('JVB_USER') && isset(JVB_USER[$type])) {
- return JVB_USER[$type];
- }
- return [];
- }
public function resetConfig(): bool
{
--
Gitblit v1.10.0