J'aimerais créer un produit disponible dans la vitrine de Shopify, mais seulement accessible à l'administrateur de la boutique. Existe-t-il un moyen d'identifier si l'utilisateur actuel est un administrateur via liquide? Ou y a-t-il une autre solution pour cela. Merci! P>
6 Réponses :
Il n'y a pas. Vous pouvez peut-être essayer d'inspecter des cookies et des trucs pour voir s'il y a quelques informations d'identification qui vous feraient savoir si l'utilisateur est un administrateur, mais il serait fragile. P>
Cela nécessiterait également de rendre les objets, mais de les masquer via CSS. Ensuite, vous leur montreriez avec JS après avoir exécuté vos chèques. P>
Comme indiqué, ce serait probablement vraiment fragile. P>
Une autre approche serait d'utiliser comptes clients . Liquide fournit un objet Vous pouvez ajouter une balise spécifique à un utilisateur administrateur et utiliser liquide pour vérifier si Une balise est présente: p> et bien sûr, vous devez identifier votre produit comme "admin-admin ', par exemple en utilisant des balises: p> {{client}}} code>, qui est uniquement présent lorsqu'un utilisateur (client) est connecté.
Cette approche peut-elle être utilisée lorsque la fonction de connexion client n'est pas activée?
Vous pouvez l'essayer, mais je suppose que la fonctionnalité de connexion client doit être activée ("comptes sont facultatives" ou "comptes" sont requises ").
Si vous êtes connecté en tant qu'administrateur, lorsque vous rendant le Nous pouvons utiliser Note: strong> J'ai remarqué que la barre d'administration shopify ne remplit pas à tout moment (je pense que c'est un bug). Si votre barre d'administration Shopify n'est pas renseignée sur votre instance, cela ne fonctionnera pas. P> p> {{content_for_header}}}}}}} code> include, il contiendra un peu de javascript pour appuyer sur le contenu de la page vers le bas pour faire de la place pour la barre d'administration Shopify Admin.
capture code> pour stocker le code
{{content_for_header}} code> comme variable de liquide, puis utilisez l'opérateur code> contenant code> pour vérifier si
admin_bar_iframe code> existe dans la variable. p>
Il s'agit d'une version plus complète de celle fournie par Kyle.Starns ci-dessus (je ne peux pas y commenter à ce sujet parce que nouveau). L'une des principales instances où la barre d'administration ne charge pas est lors de la prévisualisation des thèmes. Voici le code modifié que j'ai utilisé (mis à jour en juin 2018 - comme Shopify édité de la manière dont nous aperçus des thèmes): Si vous utilisez Plus, vous avez également accès au < A HREF = "https://help.shopify.com/fr/aPi/reeferef/plus/user" rel = "Nofollow Noreferrer"> utilisateur via API . P> p>
EDIT: Cela semble ne pas continuer à fonctionner depuis une mise à jour de shopify.
Je sais que c'est tard, mais voici ce que j'ai utilisé et il a fonctionné correctement dans mes tests. Ceci est adapté à partir des réponses précédentes, mais permet de personnaliser les options de thème, etc. p>
Je viens de comprendre cette méthode qui fonctionne. (Fondamentalement la même chose que l'ancienne méthode, juste une autre solution!)
{% if content_for_header contains 'designMode' %}
<script>
console.log("You're an admin in design mode!");
</script>
{% endif %}
C'est une bonne solution. CIRCA 2021, vous voudrez rechercher «PreviewBarInject» plutôt que «AdminBarInjectorCor».