https://github.com/hawaii-interactive-ch/ead-xml-importer
Import and manage EAD XML data in WordPress.
https://github.com/hawaii-interactive-ch/ead-xml-importer
ead wordpress wordpress-plugin
Last synced: 29 days ago
JSON representation
Import and manage EAD XML data in WordPress.
- Host: GitHub
- URL: https://github.com/hawaii-interactive-ch/ead-xml-importer
- Owner: Hawaii-Interactive-CH
- License: gpl-2.0
- Created: 2025-01-21T16:21:00.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-08T06:56:02.000Z (about 1 year ago)
- Last Synced: 2025-05-08T07:35:37.440Z (about 1 year ago)
- Topics: ead, wordpress, wordpress-plugin
- Language: PHP
- Homepage:
- Size: 136 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# EAD XML Importer for WordPress
WordPress plugin to import EAD (Encoded Archival Description) XML files into custom post types.
## Features
- Import EAD XML files from URLs
- Convert EAD XML to custom post types
- Support for ACF repeater fields
- Fallback for non-ACF installations
- Automated imports via WP Cron
- Customizable field mappings
## Requirements
- WordPress 5.0 or higher
- PHP 7.4 or higher
- Optional: Advanced Custom Fields Pro plugin
## Installation
1. Download the plugin zip file
2. Upload to your WordPress site
3. Activate the plugin
4. Configure settings under Settings > EAD XML Importer
## Usage
### Manual Import
```php
use EAD_XML_Importer\DataLoader;
// Create a new loader instance
$loader = new DataLoader('https://example.com/ead.xml');
// Convert XML to array/json
$data = $loader->convert();
// Import to custom post type
$loader->populateCustomPostType('archive');
// Show import results as HTML
$loader->htmlTable();
```
### Automated Import
Configure your XML sources in the WordPress admin under Settings > EAD XML Importer.
## Development
### Building from Source
1. Clone the repository
2. Create a new branch for your feature
3. Make your changes
4. Test thoroughly
5. Create a pull request
## Contributing
1. Fork the repository
2. Create your feature branch
3. Commit your changes
4. Push to the branch
5. Create a new Pull Request
## Plugin Structure
```bash
ead-xml-importer/
├── admin/
│ ├── handlers/
│ │ └── data-handler.php
│ └── templates/
│ ├── admin-template.php
│ └── sections/
│ ├── ead-fetch.php
│ └── ead-settings.php
├── assets/
│ ├── css/
│ │ └── admin.css
│ └── js/
│ └── admin.js
├── includes/
│ ├── class-admin-page.php
│ ├── class-data-loader.php
│ ├── class-loader.php
│ └── class-logger.php
├── utils/
│ └── plugin-update-checker
├── languages/
├── logs/
├── index.php
├── ead-xml-importer.php
├── uninstall.php
├── README.md
└── readme.txt
```
## License
GPLv2 or later