Fossnovena Perpetual Register Manager
A comprehensive WordPress plugin for managing and displaying the Perpetual Register with CSV import functionality.
★ 0stars
0forks
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/kajianil/fossnovena-register/archive/refs/heads/main.zipA comprehensive WordPress plugin for managing and displaying the Perpetual Register with CSV import functionality.
Features
- CSV Import: Upload CSV files with drag-and-drop support
- Three Operation Modes:
- Replace All: Delete existing records and import new data
- Append New: Add only new records (skip existing IDs)
- Update & Append: Update existing records and add new ones
- Data Validation: Automatic CSV validation and error checking
- Preview & Analysis: Review data before importing
- Backup System: Automatic backups before each import
- Restore Functionality: Restore from previous backups
- Frontend Display: Clean, responsive display with shortcode
- Search Functionality: Search by name or date
- Alphabetical Sections: Optional A-Z section headers
- Upload History: Track all import operations
- Responsive Design: Works on all devices
Installation
- Upload the
fossnovena-register-pluginfolder to/wp-content/plugins/ - Activate the plugin through the 'Plugins' menu in WordPress
- Navigate to 'Perpetual Register' in the admin menu
CSV Format
Your CSV file should have the following structure:
id,entry,lifeStats,sort
34500,MOREIRA Wilfredo,(d.9/08/2022),MOREIRA Wilfredo
2938,MORLEY Luke Michael,(8/09/1917 - 8/02/1975),MORLEY Luke Michael
25525,MORRIS Jane,,MORRIS Jane
Column Descriptions:
- id: Unique identifier for each record (required)
- entry: Full name as it should appear (required)
- lifeStats: Birth/death dates or other life information (optional)
- sort: Name used for alphabetical sorting (required, defaults to entry if empty)
Usage
Admin Interface
-
Upload CSV:
- Navigate to 'Perpetual Register' → 'Upload CSV'
- Click or drag-and-drop your CSV file
- Select operation type
- Click 'Analyze & Preview'
- Review the analysis and preview
- Click 'Confirm & Import'
-
View History:
- Navigate to 'Upload History'
- View all past imports
- Restore from any previous backup
-
Settings:
- Configure display options
- Set items per page
- Enable/disable alphabetical sections
Frontend Display
Add the following shortcode to any page or post:
[perpetual_register]
Shortcode Parameters:
search="true"- Enable search functionalitysections="false"- Hide alphabetical section headersper_page="100"- Custom number of items per page
Examples:
[perpetual_register search="true"]
[perpetual_register sections="false" per_page="50"]
[perpetual_register search="true" sections="true"]
Operation Types Explained
Replace All
- Deletes ALL existing records in the database
- Imports ALL records from the CSV
- Use when: You have a complete, updated dataset
Append New
- Keeps all existing records
- Adds only records with NEW IDs (not in database)
- Skips records with IDs that already exist
- Use when: Adding new entries to existing register
Update & Append
- Updates records with existing IDs
- Adds records with new IDs
- Best of both worlds
- Use when: You have both updates and new entries
Technical Details
Database Tables
fossnovena_register:
- Stores all register entries
- Indexed on
sort_namefor fast alphabetical sorting - Unique constraint on
external_id
fossnovena_register_history:
- Stores upload history and backups
- Contains full JSON backup of data before each operation
Security Features
- Nonce verification on all AJAX requests
- Capability checks (only administrators can upload)
- File type validation (CSV only)
- Data sanitization on all inputs
- SQL injection prevention with prepared statements
Performance
- Database indexes for fast queries
- Optional pagination for large datasets
- Efficient alphabetical grouping
- Minimal AJAX requests
Requirements
- WordPress 5.8 or higher
- PHP 7.4 or higher
- MySQL 5.7 or higher
- Minimum 64MB PHP memory limit
Changelog
Version 1.0.0
- Initial release
- CSV import with three operation modes
- Frontend display with shortcode
- Search functionality
- Backup and restore system
- Upload history tracking
- Responsive design