Realizzazione Siti e Portali Web – Wordpress CODING – Mobile APP – Consulenze SEO – Web design – Ecommerce

WordPress: limitare il numero di post a seconda del ruolo

Può essere un’esigenza comune a varie tipologie di progetto quella di imporre dei limiti alla pubblicazione di articoli o post type per determinati ruoli utente. Prendiamo ad esempio il caso di portali wordpress che prevedono l’attivazione di sottoscrizioni a diversi ‘packages’ a costo cresente, ciascuno dei quali consenta la possibilità di inserire offerte e / o strutture in numero variabile.

In questo caso occorre per prima cosa distinguere i ruoli utente creando i ruoli necessari con la funzione add_role() :

successivamente alla creazione del ruolo possiamo definire le “capabilities” attribuite al ruolo “package1” definito da get_role():

con le quali definiamo quali sono le azioni che l’utente può eseguire (le custom capabilities sono state definite in precedenza nella creazione dei post_type)

Entrambi gli snippet di cui sopra vanno eseguite sull’hook “init”, quindi il codice completo è:

A questo punto avremo un ruolo utente a cui possiamo imporre determinati limiti:

In questo modo, verificato che l’utente ha raggiunto il limite massimo di articoli (o, come in questo caso i post type “aziende” e e “offerte” ) consentiti al ruolo, lo reindirizziamo alla pagina di elenco, aggiungendo un parametro in $_GET che ci consente di mostrare una notifica all’utente:

che viene dunque avvisato correttamente.

Ovviamente è possibile modificare le clausole condizionali a proprio piacimento, arrivando a definire in maniera capillare limiti anche per singoli utenti e adattare queste funzioni ad ogni esigenza progettuale.

 

Related posts

Leave a Comment

Lascia un commento

Your email address will not be published.




Top