WP Manifestindependent plugin directory
manifest / users / nitage-client-hub

NitAGE Client Hub

A WordPress plugin for managing client hubs with branding assets, linktree functionality, and unbranded frontend views.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/gianfranco2605/nitage-client-hub/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Un plugin WordPress per creare aree riservate ("Hub") dedicate ai clienti. Permette di gestire branding personalizzato, caricamento loghi e link a risorse esterne con un'interfaccia scura, moderna e pulita.

Requisiti

  • WordPress: 6.0+
  • PHP: 8.2+
  • Composer: Per la gestione delle dipendenze

Installazione

⚠️ Importante per i Colleghi

La cartella /vendor/ è esclusa dal controllo di versione per Best Practice. Dopo aver clonato la repository, è necessario installare le dipendenze.

Metodo Consigliato: Make

Nel terminale, dalla root del plugin, eseguire:

make install

Questo comando eseguirà automaticamente composer install per scaricare le dipendenze e generare l'autoloader.

Metodo Alternativo: Composer

In alternativa, è possibile utilizzare direttamente Composer:

composer install

Funzionalità Principali

Custom Post Type

Gestione degli Hub tramite il menu "Client Hubs" nella dashboard di WordPress. Ogni Hub è un post personalizzato con funzionalità dedicate.

Branding Dinamico

  • Logo Cliente: Possibilità di caricare il logo del cliente tramite media library
  • Colore Primario: Impostazione di un colore primario personalizzato per i bordi delle card e gli effetti hover
  • Default: Colore oro (#d4af37) se non specificato

Link con Descrizione

Aggiunta di card con:

  • Titolo (label)
  • Icona (dashicons)
  • Descrizione opzionale
  • URL esterno

Le card sono organizzate in una griglia responsive e possono essere riordinate tramite drag & drop.

UI Professionale

  • Layout Centrato: Design moderno e pulito con contenuto centrato
  • Loghi: Dimensione fissa di 120px per garantire simmetria visiva
  • Tipografia: Testi bianchi su sfondo scuro (#050505) per massima leggibilità
  • Spaziature: Calibrate per creare un'esperienza visiva equilibrata
  • Responsive: Ottimizzato per desktop, tablet e mobile

URL Segreti

Generazione automatica di slug casuali (12 caratteri alfanumerici) per garantire la privacy degli Hub senza necessità di sistema di login. Ogni Hub ha un URL univoco e non indicizzato dai motori di ricerca.

Note per gli Sviluppatori

Standard di Codifica

Il codice segue gli standard di codifica di WordPress (WPCS):

  • I file delle classi seguono la convenzione class-nome-classe.php
  • Esempio: class-links-meta-box.php, class-hub-assets.php
  • Le classi utilizzano namespace PSR-4: NitAGE\ClientHub\

Struttura del Plugin

nitage-client-hub/
├── assets/
│   ├── css/
│   │   └── hub-style.css
│   ├── js/
│   │   ├── admin-list.js
│   │   └── hub-links.js
│   └── images/
│       └── logo-nitage.png
├── includes/
│   ├── Assets/
│   │   └── class-hub-assets.php
│   ├── Branding/
│   │   ├── class-branding-meta-box.php
│   │   └── class-client-hub-cpt.php
│   ├── Features/
│   │   └── class-links-meta-box.php
│   ├── class-loader.php
│   └── class-plugin.php
├── templates/
│   └── client-hub-template.php
├── composer.json
├── nitage-client-hub.php
└── README.md

Asset CSS e JS

Gli asset sono organizzati nella cartella /assets/:

  • CSS: /assets/css/hub-style.css - Stili principali del frontend
  • JS:
    • /assets/js/admin-list.js - Funzionalità per la lista degli Hub
    • /assets/js/hub-links.js - Gestione drag & drop dei link

Template Principale

Il template principale si trova in /templates/client-hub-template.php ed è caricato automaticamente quando viene visualizzato un post di tipo client_hub.

Autoloading

Il plugin utilizza Composer autoloading con classmap per caricare automaticamente tutte le classi. Dopo ogni modifica alla struttura delle classi, rigenerare l'autoloader con:

composer dump-autoload

Meta Fields

  • _client_branding_logo: ID dell'attachment del logo
  • _client_branding_primary_color: Colore primario in formato hex (#RRGGBB)
  • _nitage_hub_links: Array di link con struttura:
    [
        [
            'label' => 'Titolo Link',
            'url' => 'https://example.com',
            'description' => 'Descrizione opzionale'
        ]
    ]

Sviluppo

Comandi Make Disponibili

Il plugin include un Makefile con i seguenti comandi:

  • make install: Installa le dipendenze Composer e genera l'autoloader
  • make lint: Esegue PHPCS per verificare la conformità agli standard WordPress
  • make lint-fix: Esegue PHPCBF per correggere automaticamente i problemi di formattazione

Testing

Per verificare che il plugin funzioni correttamente:

  1. Creare un nuovo "Client Hub" dalla dashboard
  2. Caricare un logo e impostare un colore primario
  3. Aggiungere alcuni link con descrizioni
  4. Visualizzare l'Hub tramite il suo URL segreto

Supporto

Per domande o supporto, contattare il team NitAGE.


Sviluppato da NitAGE