Rendre votre base de connaissances WordPress en direct

Si vous avez suivi cette série, vous avez maintenant un thème pour une base de connaissances avec une structure et un front-end. La dernière étape consiste à faire vivre la base de connaissances. 

Si les exigences de votre base de connaissances sont simples, vous n'avez pas à vous soucier de l'accès, des rôles ou de l'hébergement avant de rendre votre base de connaissances vivante. Il suffit de le rendre visible pour les moteurs de recherche, d'installer et de configurer un plugin SEO, et vous êtes prêt à partir. 

Toutefois, si vous devez héberger votre base de connaissances différemment ou en limiter l’accès, vous devrez apporter quelques modifications supplémentaires avant le lancement..

Dans ce didacticiel, nous examinerons certaines des considérations que vous devrez peut-être prendre en compte, ainsi que certaines des solutions correspondantes. Je couvrirai:

  • remplir la base de connaissances
  • créer des rôles d'utilisateur supplémentaires
  • restreindre l'accès à la base de connaissances aux utilisateurs connectés
  • hébergement de la base de connaissances localement

1. Remplir la base de connaissances

Il est peu probable que votre travail soit de constituer la base de connaissances si vous la créez pour un client. Ce dernier aura probablement un personnel interne expert en la matière, ou aura accès au matériel et aux informations. nécessaire pour remplir la base de connaissances.

Il est possible qu'ils commencent cela avant d'avoir terminé la génération finale du thème et que le client commence à renseigner la base de connaissances au stade bêta, demandant des ajustements à la version finale en fonction de son expérience..

Si tel est le cas, vous devez vous assurer que tout travail de développement effectué sur la version finale se trouve sur une copie distincte du site et que, lors du lancement de la base de connaissances, vous vous assurez de ne rien écraser dans la liste. base de données ou des fichiers dans le wp-uploads annuaire. Vous devrez peut-être également modifier les identifiants de page référencés dans le thème si le client crée et remplit ces pages..

Vous devrez peut-être également fournir une formation ou des conseils au client pour l'aider à remplir la base de connaissances, en particulier si vous avez effectué des personnalisations importantes à l'aide de taxonomies et de types d'article personnalisés.

Dans certains cas, vous devrez peut-être personnaliser l’administrateur de WordPress pour fournir une aide. Vous pouvez ajouter des widgets de tableau de bord supplémentaires au tableau de bord principal, supprimer les éléments inutiles et ajouter de l’aide aux écrans de modification de chaque type de publication..

2. Créer des rôles d'utilisateur

Si votre client a plusieurs employés qui accéderont à la base de connaissances de différentes manières, par exemple pour remplir ou afficher des sections spécifiques de celle-ci, vous devrez peut-être créer des rôles d'utilisateur supplémentaires..

Vous pouvez le faire par programme en utilisant le add_role () fonction, qui prend les paramètres suivants:

  • $ rôle est un nom unique pour le nouveau rôle.
  • $ display_name est le nom qui sera vu dans les écrans des utilisateurs.
  • $ capacités signifie les capacités pour ce rôle. 

Si les fonctionnalités du nouveau rôle diffèrent de celles de WordPress par défaut, vous devrez peut-être ajouter les vôtres, à l'aide de add_cap (). Vous pouvez alors utiliser if (current_user_can ($ capacité)) dans votre thème ou vos plugins pour définir un code qui ne fonctionnera que si l'utilisateur actuel dispose de la nouvelle fonctionnalité.

Une option alternative plus rapide consiste à utiliser un plugin pour gérer les rôles des utilisateurs. Le plug-in Membres est un plug-in populaire permettant de créer de nouveaux rôles à l'aide des fonctionnalités WordPress existantes. Avec ce plugin, vous pouvez créer des rôles personnalisés et sélectionner leurs fonctionnalités via l’administrateur de WordPress, comme indiqué dans la capture d’écran:

Si vous souhaitez aller plus loin et créer des fonctionnalités personnalisées, le plug-in Capability Manager Enhanced vous permet de créer de nouvelles fonctionnalités et de définir les actions que les utilisateurs dotés de ces fonctionnalités peuvent effectuer en relation avec différents types de publication. Vous pouvez ainsi restreindre l'accès à certaines parties de votre base de connaissances. :

3. Restreindre l'accès aux utilisateurs connectés

Si la base de connaissances est uniquement destinée à un usage interne par votre client ou votre équipe, vous devez limiter l'accès aux utilisateurs connectés ou, au contraire, restreindre l'accès à certaines parties du site aux utilisateurs connectés. Il y a quelques façons de le faire.

Messages privés

Pour restreindre l’accès à des pages et / ou à des publications spécifiques, assurez-vous qu’elles sont privées en sélectionnant Privé bouton radio au-dessus du Publier bouton dans l'écran de post-édition. 

Cela limite le site aux seuls éditeurs et administrateurs, ce qui peut ne pas être approprié si vous souhaitez autoriser les abonnés à afficher des publications privées. Cependant, vous pouvez utiliser le add_cap () fonction pour ajouter le read_private_posts capacité à des rôles d'utilisateur supplémentaires:

fonction tutsplus_add_private_cap () $ role = get_role ('subscriber'); $ role-> add_cap ('read_private_posts');  add_action ('admin_init', 'tutsplus_add_private_cap');

Notez que cela enregistrera les modifications apportées au rôle d'utilisateur dans la base de données. Veillez donc à annuler toutes les modifications apportées à la désactivation du thème ou du plug-in..

Si vous voulez faire cela sans ajouter de code, vous pouvez utiliser le plugin Membres pour ajouter le fichier read_private_posts capacité à autant de rôles que vous le souhaitez.

Masquer le site de tous les utilisateurs sauf les utilisateurs connectés

Quelques plugins disponibles forcent les utilisateurs à se connecter en tant qu'utilisateur avant de pouvoir accéder à votre site. J'ai tendance à utiliser le plug-in Force User Login, qui redirige simplement les utilisateurs qui ne sont pas déjà connectés à l'écran de connexion WordPress avant de pouvoir accéder au contenu. Une fois connectés, ils seront dirigés vers la page qu'ils recherchaient à l'origine..

Créer une zone du site protégée par mot de passe

Une autre option consiste à créer une zone du site réservée aux utilisateurs connectés, avec un écran de connexion comme écran principal. Il y a plusieurs façons de le faire.

La première consiste à utiliser un widget de connexion dans le pied de site pour permettre aux utilisateurs de se connecter, après quoi ils peuvent accéder à la section réservée..

Vous pouvez également créer une page avec un formulaire de connexion inclus, en utilisant le wp_login_form () une fonction. Si vous faites cela, c'est une bonne pratique de vérifier si les utilisateurs sont connectés avant d'afficher le formulaire, en utilisant le code suivant:

function tutsplus_login_form () if (is_user_logged_in ()) return "; return wp_login_form (array ('echo' => false));

Vous ajoutez ensuite le tutsplus_login_form Utilisez vos modèles de page selon vos besoins ou attachez-les à un crochet de votre thème, en utilisant éventuellement des balises conditionnelles pour l'afficher uniquement sur des pages ou des types de publication spécifiques. Dans vos modèles, vous pouvez ensuite vérifier si l'utilisateur est connecté avant d'afficher le contenu à l'aide du bouton if (is_user_logged_in) étiquette.

Si vous souhaitez utiliser un plugin pour cela, le plugin Membres vous permet de restreindre le contenu par rôle (par exemple aux abonnés)..

Vous pouvez également utiliser ces deux méthodes: un widget de connexion et un formulaire de connexion..

4. Hébergement de la base de connaissances localement

Si vous ou votre client n'autorisez l'accès à la base de connaissances qu'à des personnes co-localisées, il peut être préférable de l'héberger sur un serveur local..

Si vous ou votre client suivez cette voie, vous devrez vous assurer que le serveur répond à la configuration minimale requise pour l'hébergement de WordPress:

  • PHP version 5.2.4 ou supérieure
  • MySQL version 5.0.15 ou supérieure
  • Module Apache mod_rewrite (pour les liens permanents)

Vous ou votre client devrez vous assurer que cette information est mise à jour conformément aux exigences des futures versions de WordPress..

Bien que cela puisse sembler l'option la plus sûre, il présente un certain nombre d'inconvénients:

  • Si de nouvelles personnes rejoignent votre équipe travaillant à un autre endroit, elles ne pourront pas accéder à la base de connaissances..
  • Si un membre de votre équipe a besoin d'un accès en dehors du bureau, il ne pourra pas y accéder..
  • Vous devrez gérer votre serveur, résoudre les problèmes et le maintenir à jour, alors qu'avec l'hébergement Web votre fournisseur d'hébergement le fera pour vous..

En fin de compte, c'est à vous (ou à votre client) de choisir.

Résumé

Si votre base de connaissances doit comporter un contenu restreint, des rôles d'utilisateur supplémentaires ou un hébergement non standard, les conseils ci-dessus vous aideront à rendre ce déploiement aussi simple que possible. WordPress vous permet de créer des rôles et des fonctionnalités utilisateur, de limiter l’accès à tout ou partie du site et plus encore..

Le prochain défi consiste à le renseigner avec des informations utiles - une tâche peu enviable pour l'équipe de contenu.!