Grav-plugin-admin: Lien "Modifier" du frontend

Créé le 21 nov. 2016  ·  9Commentaires  ·  Source: getgrav/grav-plugin-admin

Existe-t-il un moyen d'ajouter un simple lien "Modifier" sur toutes les pages frontales. Ce lien devrait vérifier si le plugin grav-plugin-admin est installé et si l'utilisateur dispose des autorisations appropriées.

question

Commentaire le plus utile

Merci à tous pour l'aide. Il y a peut-être une meilleure façon de le faire, mais voici ce que j'ai fini par faire dans mon partials / base.html.twig.

{% if config.plugins.admin.enabled and authorize(['admin.pages', 'admin.super']) %}
  {% if page.link == '/' %}
    {% set editPagePath = "/" ~ page.slug %}
  {% else %}
    {% set editPagePath = uri.path %}
  {% endif %}
  <a class="editpage" href="/admin/pages{{ editPagePath }}">Edit</a>
{% endif %}

et puis dans mon css

.editpage {
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 5px 6px;
  background: #F67E40;
  color: #fff;
  display: block;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
}

Ce serait bien si quelque chose comme ça était inclus par défaut dans tous les thèmes.

Peut-être que le plugin d'administration pourrait inclure une variable de page pour le lien d'édition? Cela aurait l'air beaucoup plus joli dans les modèles que le code que j'ai fourni.

Tous les 9 commentaires

Cela peut être implémenté directement dans votre thème, donc vous savez déjà que le plugin d'administration est installé, vous pouvez envelopper le lien dans un conditionnel {% if authorize(['admin.pages', 'admin.super']) %}

Salut @flaviocopes , j'ai suivi ce fil et je cherche à faire quelque chose d'assez similaire: déclencher un écran de connexion Grav lorsqu'un bouton est enfoncé et, si vous êtes connecté avec succès, exécutez du code Twig. Est-ce également possible, et si oui, y a-t-il un exemple dont je puisse tirer des leçons? Merci!

Peu importe @flaviocopes , quelqu'un vient de m'indiquer ce petit bijou: https://learn.getgrav.org/cookbook/general-recipes#create -a-private-area 🙂

Merci @flaviocopes. J'ai essayé d'ajouter
{% if authorize(['admin.pages', 'admin.super']) %} <a href="#">Edit</a> {% endif%}

à mon base.html.twig, mais cela n'a pas fonctionné. J'ai vidé le cache et je me suis connecté, puis j'ai vérifié ma page, mais aucun lien Modifier n'a été imprimé sur la page.

D'autres idées? Quelque chose comme ça devrait probablement être dans un thème de base comme Antimatière pour permettre aux éditeurs de passer rapidement à l'administrateur pour modifier la page?

Vous devrez être connecté au frontend avec un utilisateur administrateur. Être connecté à l'administrateur n'est pas suffisant par défaut car les sessions d'administration et frontend sont séparées.

@rhukster . Je me suis connecté à / admin en utilisant la connexion administrateur du site (c'est le seul utilisateur). Comment puis-je me connecter au frontend? Désolé, je suis nouveau sur Grav.

Utilisez le plugin Login, voir le readme sur https://github.com/getgrav/grav-plugin-login (https://github.com/getgrav/grav-plugin-login#login-page)

Clôture lorsque la question est répondue

Merci à tous pour l'aide. Il y a peut-être une meilleure façon de le faire, mais voici ce que j'ai fini par faire dans mon partials / base.html.twig.

{% if config.plugins.admin.enabled and authorize(['admin.pages', 'admin.super']) %}
  {% if page.link == '/' %}
    {% set editPagePath = "/" ~ page.slug %}
  {% else %}
    {% set editPagePath = uri.path %}
  {% endif %}
  <a class="editpage" href="/admin/pages{{ editPagePath }}">Edit</a>
{% endif %}

et puis dans mon css

.editpage {
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 5px 6px;
  background: #F67E40;
  color: #fff;
  display: block;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
}

Ce serait bien si quelque chose comme ça était inclus par défaut dans tous les thèmes.

Peut-être que le plugin d'administration pourrait inclure une variable de page pour le lien d'édition? Cela aurait l'air beaucoup plus joli dans les modèles que le code que j'ai fourni.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

maciejmatu picture maciejmatu  ·  3Commentaires

darkroastcreative picture darkroastcreative  ·  4Commentaires

WilliamMiceli picture WilliamMiceli  ·  4Commentaires

jundiya picture jundiya  ·  4Commentaires

wildafrica picture wildafrica  ·  4Commentaires