From ac444cba221832c012c0435fdc8339fe9f37febb Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Mon, 11 May 2026 18:35:04 +0000
Subject: [PATCH] =Some changes to the CRUD.js editing, timeline post configuration
---
inc/managers/DirectoryManager.php | 29 +++++++++++++++++++++++++----
1 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/inc/managers/DirectoryManager.php b/inc/managers/DirectoryManager.php
index 3be452e..1d5c15a 100644
--- a/inc/managers/DirectoryManager.php
+++ b/inc/managers/DirectoryManager.php
@@ -44,8 +44,8 @@
public function registerDirectories():void
{
- $singular = !empty(Site::getDirectorySingular())?:'Directory';
- $plural = !empty(Site::getDirectorySingular())?: 'Directories';
+ $singular = Site::getDirectorySingular()??'Directory';
+ $plural = Site::getDirectoryPlural()??'Directories';
$config = [
'labels' => [
'name' => $plural,
@@ -131,15 +131,36 @@
}
$config = $registrar->getConfig('directory');
-
$title = $config['title'];
+ //Bail early if we've already created the page
+ $existing = new WP_Query([
+ 'post_type' => BASE.'dash',
+ 'name' => sanitize_title($title),
+ 'posts_per_page' => 1,
+ ]);
+ if ($existing->have_posts()) {
+ $existing = $existing->posts[0];
+ $created[$directory] = $existing->ID;
+ $directories[$directory] = [
+ 'slug' => $existing->post_name,
+ 'title' => $existing->post_title,
+ 'ID' => $existing->ID,
+ 'url' => get_the_permalink($existing->ID),
+ 'page' => $existing->post_title,
+ 'description'=> $existing->post_excerpt,
+ 'type' => $type,
+ 'extra' => $config[$directory]['directory_extra']??[],
+ ];
+ continue;
+ }
+
$excerpt = implode(' ', $config['description']??[]);
$ID = wp_insert_post([
'post_type' => BASE.'directory',
'post_title' => $title,
'post_status' => 'publish',
'post_excerpt' => $excerpt,
- 'slug' => sanitize_title($title)
+ 'post_name' => sanitize_title($title)
]);
if (!is_wp_error($ID)) {
add_post_meta($ID, self::$type, $type);
--
Gitblit v1.10.0