Technical Requirements and Architecture

Current WordPress Analysis

Existing Site: https://feaa.info/wordpress/grownative/

  • WordPress version: [TO BE DETERMINED during audit]
  • Current plugins: [TO BE INVENTORIED]
  • Hosting provider: [TO BE DOCUMENTED]
  • Domain configuration: Subdirectory installation

Hosting Requirements

DECISION REQUIRED: Hosting Strategy

Option A: Enhance Current Hosting

  • Continue with existing hosting provider
  • Upgrade plan if needed for additional database requirements
  • Maintain subdirectory structure

Option B: Dedicated Hosting

  • Move to WordPress-specific hosting (WP Engine, Kinsta, etc.)
  • Better performance and backup capabilities
  • Easier staging environments

Current hosting capabilities needed:

  • [ ] MySQL database (minimum 5.7)
  • [ ] PHP 8.0+ support
  • [ ] SSL certificate
  • [ ] Regular backups
  • [ ] Staging environment capability

WordPress Plugin Architecture

Core Functionality Plugins

Required Plugins:

  1. Advanced Custom Fields Pro ($149/year)
    • Purpose: Structured plant data entry
    • Features: Custom post types, field groups, relationship fields
    • Alternative: Free ACF + Custom code (more development work)
  2. SearchWP ($99/year) OR FacetWP ($199/year)
    • Purpose: Advanced plant search and filtering
    • DECISION REQUIRED: SearchWP (simpler) vs FacetWP (more powerful filtering)
  3. WP User Frontend (Free + Pro $97/year)
    • Purpose: User-submitted plant information
    • Features: Frontend forms, user dashboards
  4. Ultimate Member (Free + Extensions)
    • Purpose: User profiles and community features
    • Features: Registration, profiles, user directories

DECISION REQUIRED: Additional Features

Community Features:

  • [ ] WP Review ($29) – Plant/method rating system
  • [ ] bbPress (Free) – Forum discussions
  • [ ] BuddyPress (Free) – Social networking features

Content Management:

  • [ ] WP All Import ($199) – Bulk plant data import
  • [ ] Duplicate Post (Free) – Template plant pages
  • [ ] Admin Columns (Free) – Better content management

Performance & SEO:

  • [ ] WP Rocket ($59/year) – Caching
  • [ ] Yoast SEO (Free) – Search optimization
  • [ ] Smush (Free) – Image optimization

Database Architecture

Custom Post Types Structure

Plants (Custom Post Type)
├── Standard WordPress Fields
│   ├── Title (Scientific Name)
│   ├── Content (General Description)
│   ├── Featured Image (Primary Plant Photo)
│   └── Excerpt (Brief Description)
├── Custom Taxonomies
│   ├── Plant Type (Tree, Shrub, Herb, Fern, etc.)
│   ├── Growth Habit (Spreading, Upright, Climbing, etc.)
│   ├── Conservation Status (Not Threatened, At Risk, etc.)
│   └── Suitable Regions (Northland, Auckland, Waikato, etc.)
└── Custom Fields (ACF)
    ├── Basic Information
    ├── Physical Characteristics
    ├── Growing Conditions
    ├── Propagation Information
    └── Cultural Information

DECISION REQUIRED: Data Complexity

Simple Approach:

  • Use ACF fields within single post type
  • Rely on taxonomies for categorization
  • Store user contributions as comments/separate posts

Advanced Approach:

  • Multiple related post types (Plants, Propagation Methods, Success Stories)
  • Custom database tables for complex relationships
  • More development complexity but better data structure

API Readiness for Future Mobile Apps

WordPress REST API Extensions

Standard WordPress REST API provides:

  • Plant post data retrieval
  • Taxonomy filtering
  • User authentication
  • Media/image access

Custom API Endpoints Needed:

// Example custom endpoints for mobile app
/wp-json/grownative/v1/plants/
/wp-json/grownative/v1/plants/{id}/propagation-methods
/wp-json/grownative/v1/search/plants?conditions=shade&type=tree
/wp-json/grownative/v1/user/success-stories

DECISION REQUIRED: API Scope

Basic API (Recommended for Phase 1):

  • Read-only access to plant database
  • Simple filtering and search
  • User authentication for future contributions

Advanced API:

  • Full CRUD operations via mobile app
  • Real-time synchronization
  • Offline capability support
  • Image upload from mobile

Development Environment

Local Development Setup

Required Tools:

  • Docker Desktop
  • Git version control
  • Code editor (VS Code recommended)
  • Claude Code (already installed)

Docker Configuration:

# docker-compose.yml structure
services:
  wordpress:
    image: wordpress:latest
    volumes:
      - ./themes:/var/www/html/wp-content/themes
      - ./plugins:/var/www/html/wp-content/plugins
      - ./uploads:/var/www/html/wp-content/uploads
  mysql:
    image: mysql:8.0
  phpmyadmin:
    image: phpmyadmin/phpmyadmin

DECISION REQUIRED: Development Workflow

Git Repository Structure:

grownative-nz/
├── wp-content/
│   ├── themes/grownative-child/
│   ├── plugins/grownative-custom/
│   └── uploads/
├── database/
│   └── seeds/
├── docker/
├── documentation/
└── deployment/

Branching Strategy:

  • main (production)
  • staging (staging environment)
  • develop (integration)
  • feature/* (individual features)

Security and Backup Strategy

Security Requirements

Essential Security Measures:

  • [ ] SSL certificate (HTTPS)
  • [ ] Regular WordPress updates
  • [ ] Plugin security audits
  • [ ] User permission management
  • [ ] Spam protection (Akismet)

Enhanced Security (Optional):

  • [ ] Wordfence (Free/Premium) – Firewall and malware scanning
  • [ ] Two-factor authentication for admin users
  • [ ] Login attempt limiting

Backup Strategy

DECISION REQUIRED: Backup Approach

Basic Backup:

  • Weekly automatic database backups
  • Monthly full site backups
  • Manual backups before major updates

Comprehensive Backup:

  • Daily automated backups
  • Real-time database replication
  • Version control for all custom code
  • Disaster recovery plan

Performance Considerations

Expected Load

Initial Launch:

  • ~50-100 plant species
  • ~10-50 active users
  • Basic traffic expectations

Growth Projections:

  • 500+ plant species within 2 years
  • 500+ registered users
  • Mobile app integration

DECISION REQUIRED: Performance Strategy

Basic Performance:

  • Standard WordPress caching
  • Image optimization
  • CDN for static assets

Advanced Performance:

  • Database optimization
  • Advanced caching (Redis/Memcached)
  • Load balancing preparation

Integration Requirements

External Services

Required Integrations:

  • Email delivery (for user notifications)
  • Google Analytics (traffic monitoring)
  • Search console (SEO monitoring)

Optional Integrations:

  • [ ] iNaturalist API (for plant observations)
  • [ ] Google Maps (for regional information)
  • [ ] Weather APIs (for growing conditions)
  • [ ] Social media sharing

DECISION REQUIRED: Third-Party Services

Email Service:

  • [ ] Built-in WordPress email (simple but unreliable)
  • [ ] Mailgun/SendGrid (reliable, ~$10/month)
  • [ ] Gmail SMTP (free but limited)

Analytics:

  • [ ] Google Analytics (free, comprehensive)
  • [ ] Simple Analytics (privacy-focused, paid)
  • [ ] WordPress stats only

Quality Assurance

Testing Strategy

Manual Testing:

  • User experience testing
  • Cross-browser compatibility
  • Mobile responsiveness
  • Content management workflows

Automated Testing:

  • Database backup/restore procedures
  • Plugin update compatibility
  • Performance monitoring

DECISION REQUIRED: Testing Scope

Basic Testing:

  • Manual testing of core features
  • User acceptance testing with small group

Comprehensive Testing:

  • Automated testing suite
  • Performance testing
  • Security testing
  • Load testing

Next Steps:

  1. Make decisions marked above
  2. Audit current hosting capabilities
  3. Inventory existing plugins and content
  4. Set up development environment
  5. Begin WordPress customization

Document Status: Draft for Review Technical Review Required: Yes