AccueilFAQRechercherMembresGroupesS'enregistrerConnexion

Forum de graphisme, codage et game design proposant des tutoriels, astuces, libres services et commandes dans les domaines de l'infographie amateur, de l'intégration web (HTML et CSS essentiellement) ainsi que dans la conception de RPG sur forum.


    Comment cibler une variable précise des informations du profil ?

    Partagez
    avatar
    Nely Suglisse
    FémininAge : 22Messages : 66

    le Ven 12 Aoû 2016 - 16:06

    Bonjour à vous !

    Je suis à la recherche de quelqu'un qui pourrait me dire comment cibler précisément une variable dans la variable. C'est pas très clair dit comme ça, alors procédons avec un exemple en image. :xD:

    Spoiler:


    Ceci est le profil figurant à côté des messages que l'on poste sur un forum, pour que vous visualisez la chose. Comme vous pouvez le voir, l'une des informations, à savoir l'équipe pokémon du personnage, ne présente pas de "nom du champ :" mais seulement les images qui ont été ajouté par le joueur. C'est précisément ce que je cherche à faire moi aussi, virer cette information peu élégante et inutile pour ce que je veux coder, la dissimuler, ou peu importe comment cela est possible.

    Problème, dans la template, l'ensemble de ces informations provenant du profil est regroupé en une seule et unique variable, ne me permettant pas de travailler sur l'une d'elle précisément. Du coup, ma question c'est comment faire, et comment également supprimer ce texte gênant ?


    Merci d'avance à ceux qui pourront me répondre. :culte:


    Dernière édition par Nely Suglisse le Sam 13 Aoû 2016 - 21:01, édité 1 fois
    avatar
    Nihil Scar Winspeare
    Messages : 4790

    le Sam 13 Aoû 2016 - 9:28

    Coucou <3

    Merci d'ouvrir une discussion dans le laboratoire là dessus, car personnaliser différemment les champs de profil... On ne peut pas directement. Du coup c'est le genre de chose où il y a "plein" de manières de faire :hum:

    Une des techniques est rapidement expliqué dans ce problème : Comment isoler une partie de la description du profil?
    @Nihil Scar Winspeare a écrit:Il y a une petite solution en CSS, si l'ordre de tes champs est toujours le même. Tu peux voir un problème similaire ici :)
    En gros, en HTML on affiche tous les champs du profil, et ensuite visuellement, en CSS, on en masque certains :)
    Un petit tuto sur les nth-child => https://la-cascade.io/nth-child/

    Néanmoins cela demande une petite gymnastique d'esprit pour savoir quels champs sont obligatoires, dans quel ordre, etc :hum:

    Dans le forum que tu as donné un exemple, ils n'ont tout simplement pas mis de titre au champ et au niveau du contenu ils ont mis des balises bbcode image. Pour le BBCODE, cette astuce est expliquée par Onyx ici Comment mettre un lien/un smiley/un BBcode dans un champ du profil
    Et le fond noir derrière, c'est "du faux", c'est un bloc noir mis en dehors des champs du profil puis placée en css pour être derrière :bwaha:

    avatar
    Nely Suglisse
    FémininAge : 22Messages : 66

    le Sam 13 Aoû 2016 - 13:45

    Oh, je vois, je testerai tout ça une fois sur pc, merci pour les liens ! :)

    Concernant le champ, hé bien j'avais moi-même voulu laisser le champ libre en le créant, mais FA me l'a refusé et je n'ai pas pu le valider. :/

    Concernant le bloc... Haha, je sais faire, mais j'en oublie parfois ces petites choses toute bêtes, FA ça me donne un peu mal à la tête des fois xD

    Merci de ta réponse en tout cas, je vais essayer tout ça, et je repasserai à l'occasion si besoin ou pour ajouter quelques petits détails qui pourraient être utiles à d'autres !

    EDIT

    Alors tout bêtement, pour faire en sorte qu'il n'y ai pas le champ qui apparaisse, si ça intéresse certains. Partons de zéro pour ceux qui ne sont pas familier avec le panneau d'administration.

    D'abord vous devez allez Utilisateurs & Groupes > Profils, puis Champs du profil > Ajouter.
    Une fois là, attribuez les principales caractéristiques que vous souhaitez pour ce champs. Vous devez forcément le nommer, alors pour que l'attribut du champ n'apparaisse pas, sélectionnez Icône dans le menu déroulant pour le Type d'affichage. Sauf que vous allez laissez le champ de l'URL de l'image vide, tout simplement.

    Et nous obtenons bien le résultat en image de mon premier post.
    avatar
    Nihil Scar Winspeare
    Messages : 4790

    le Sam 13 Aoû 2016 - 19:07

    Ow, j'avais pas vu ton edit, j'allais préparer une petite astuce pour ça :han:
    Merci pour ton retour  :love:

    Spoiler:
    Hello <3

    Cette petite astuce vous permettra de masquer le titre des champs de profil de votre choix, petit exemple :


    on enlève les titres des 2 images

    Sans passer par du code, vous pouvez masquer le titre d'un champ en mettant pour "Type d'affichage" le choix "Icone"
    Chemin pour modifier un champ du profil : PA > Utilisateurs & Groupes > Profils


    Ici ce qui compte est seulement la partie entourée, le reste ce sont mes réglages

    Voici une astuce qui fonctionnera dans l'affichage du profil dans les sujets.
    Pour l'affichage du profil directement, le nom réapparaîtra si vous pouvez modifier le champ, sinon vous verrez toujours l'espace vide :)

    Contrairement au fait de mettre un espace vide (par exemple un espace insécable), cela ne laissera pas les 2 points seuls ^^)

    C'est la technique que forumactif utilise par exemple pour le champ "Sexe"

    Si vous utilisez d'autres techniques, n'hésitez pas à venir les partager ici, ou faire un retour d'expérience sur des choses que vous avez testé :hudada:

    avatar
    Nely Suglisse
    FémininAge : 22Messages : 66

    le Sam 13 Aoû 2016 - 20:59

    Haha, j'ai préféré éditer pour éviter le double-post. ^^

    Sinon, pour mettre un fond à une valeur précise dans le profil. Je n'ai pas réussi à jouer de la superposition et des propriétés de position pour le faire, j'ai néanmoins trouver un moyen. Tout d'abord, j'ai encadré les informations du profil avec une div, pour faire autre chose à la base, mais peu importe.

    Vous devez aller dans la template viewtopic_body, et encadrer d'une div les informations suivantes comme ceci (notez que si vous utilisez les fiches RP sur votre forum, la variable ne figure pas ci-dessous).

    Spoiler:


    Code:
    <div class="contenuprofile">{postrow.displayed.profile_field.LABEL}{postrow.displayed.profile_field.CONTENT}{postrow.displayed.profile_field.SEPARATOR}</div>

    Ensuite, pour que l'astuce fonctionne, la variable que vous voulez cibler doit forcément être la première dans votre liste, et donc apparaître quoiqu'il arrive dans le profil, car nous allons utiliser la propriété first-child, qui sélectionne le premier enfant d'un parent. Ici, le premier enfant de notre div. Appliquez-lui le style que vous souhaitez.

    Spoiler:

    Code:
    .contenuprofile:first-child { vos styles }

    Nous obtenons donc ceci :
    Spoiler:


    Pour utiliser cette technique en ciblant d'autres variables, il faut employer la technique du nth-child, comme dit plus haut. Toutefois, pour que cela fonctionne, il ne faut pas de décalage entre deux variables, c'est à dire que celles-ci doivent toujours avoir la même position lorsqu'elles s'affichent, sinon cela va décaler le sélecteur, et donc le CSS.
    Contenu sponsorisé


      La date/heure actuelle est Sam 18 Nov 2017 - 9:23