Lien automatique sur un mot

2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 11:13

Bonjour à tous,

J'aurais voulus savoir s'il existait un script ou autre a insérer sur son forum afin de mettre un lien sur des mots clés ?
Par exemple sur les mots "Forum" ajouter un lien vers mon forum ainsi, tous les messages ayant ce mot là auront tous un lien sur ce mot pointant vers une URL prédéfinie.

J'espère avoir été clair dans mes explications.
Merci à vous de votre aide. Smile


Dernière édition par Ejayremy le Lun 22 Aoû 2011 - 14:25, édité 1 fois
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 11:18



Bonjour

Par exemple
Forum

et le code associé
Code:
[url=http://www.ejayremy.fr/]Forum[/url]


Cordialement,
Lien automatique sur un mot 6ds2878Ge
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 11:22

Merci à toi ge80 mais je souhaiterais que ce genre de lien s'ajoute automatiquement lorsqu'un membre écris dans ton message un mot clé spécifique et que le lien s'ajoute donc automatiquement.
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 11:29

On peut utiliser la censure ou encore un script.

Avec l'outil censure de votre forum :
en censurant forum en
Code:
[url=http://www.ejayremy.fr/]Lien[/url]

Ou par javascript
Vous pouvez regarder l'excellent travail d'ETANA sur la censure avec script.
-> https://forum.forumactif.com/t311476-censure-des-messages-en-javascript
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 11:33

ge80 a écrit:On peut utiliser la censure ou encore un script.

en censurant [b]forum
Code:
 [/b] en [url=http://www.ejayremy.fr/]Lien[/url]

Vous pouvez regarder l'excellent travail d'ETANA
sur la censure par javascript.
-> https://forum.forumactif.com/t311476-censure-des-messages-en-javascript
J'ai essayé, il ya certains liens trop grand par rapport au nombre de caractère autorisé Sad
Plus cela m'affiche ce message :
Vous devez entrer un mot et son remplaçant
Le mot censuré ne doit pas être dans les mots qui le remplacent.
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 11:34

Vous pourriez utiliser un compresseur d'URL

Avec https://bitly.com/ par exemple
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 11:45

ge80 a écrit:Vous pourriez utiliser un compresseur d'URL

Avec https://bitly.com/ par exemple
Yes pas bête merci Very Happy
Par contre je ne peux pas mettre le même mots dans censure Confused
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 11:46

Non car cela serait la censure de la censure.
Enfin je n'ai pas essayé.
Le même mot avec le premier caractère en gras.
Par exemple -> Forum
Code:
[b]F[/b]orum
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 11:52

Je viens d'essayer mais ça ne fonctionne pas même avec CTRL+F5

J'essaie le script de Etana ( https://forum.forumactif.com/t311476-censure-des-messages-en-javascript ) mais je n'arrive pas a faire une redirection en gardant le mot a remplacer. Je modifie un mot mais ça affiche sur le message uniquement son lien. Je souhaite garder ce même mot mais en lien cliquable avec l'URL non visible.
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 11:55

Quelle est la chaine de remplacement utilisée avec le script d'ETANA ?
Il faut du HTML et non pas du BBcode)

Je n'ai pas compris pour le CTRL-F5 ?
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 12:04

le CTRL+F5 c'etait pour vider le cache et être certains du bon fonctionnement du script.

Sinon le code que je mets (et qui ne fonctionne pas c'est :
Code:
["html", /\[Ejayremy\](.*?)\[\/Ejayremy\]/g, '<a href=[url=http://www.ejayremy.fr[/url]</a>']
Est il bon ou j'ai fais un erreur ?
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 12:11

Il ne faut que des balises html sinon votre bbcode s'affichera dans la page (un CTRL F5) n'y changeant rien Wink.

Code:
["text", /forum/g, "<a href=\"http://www.ejayremy.fr\""><Lien>/a>"]




ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 12:16

Je copie exactement le code que tu as mis ou il ya des modifications a apporter ?
Je nage désolé, je commence a ne plus comprendre grand chose. lol

Je voudrais par exemple que sur le mot "Ejayremy" il soit appliqué automatiquement le lien "www.ejayremy." de façon a ce que ça donne ça : Ejayremy

Merci Smile
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 12:23

Donc le point de départ est un texte donc la balise Text dans le code

Puis tout doit être en html dans la chaine de remplacement pour que cela s'affiche.

Code:
["text", /Ejayremy/g, "<a href=\"http://www.ejayremy.fr\"><Lien>/a>"]

ceci devrait fonctionner ou je devrai faire des essais.


Enlever la censure normale et faire tout le tutoriel d'ETANA.


Dernière édition par ge80 le Lun 22 Aoû 2011 - 13:44, édité 1 fois
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 12:30

Merci pour ton aide mais ça ne remplace toujours pas le mot dans un message du forum Sad
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 12:34

Que voyez-vous ?
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 12:36

Je vois le mot dans un message mais sans lien dessus.
J'ai réessayé avec un autre mot/liens "test" et pareil, le message s'affiche avec le mot mais le lien pointant n'existe pas.

EDIT : Voici le code que je mets dans la partie HTML & JAVASCRIPT :
Spoiler:
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 12:41

Ok je pars manger et ensuite je ferai un essai.
C'est peut être les \" à remplacer par un simple "

ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 12:42

Ok, moi aussi je vais manger. bonne app et merci pour votre aide. Wink
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Lien automatique sur un mot

Message par ge80 Lun 22 Aoû 2011 - 14:09

Voici le code.

Testé et fonctionnel.
Pas de souci avec ejayremy à remplacer par <a href="http://www.ejayremy.fr">ejayremy</a> Wink


Code:
var censorship =
[
    ["html", /ejayremy/g, '<a href="http://www.ejayremy.fr">ejayremy</a>']
];

function censorNode(a) {
  if(a.nodeType == 3) {
    for(var b in censorship) {
      if(censorship[b][0] === "text") {
        a.nodeValue = a.nodeValue.replace(censorship[b][1], censorship[b][2])
      }
    }
  }else {
    if(a.nodeType == 1) {
      for(b in censorship) {
        a.hasAttribute(censorship[b][0]) && a.setAttribute(censorship[b][0], a.getAttribute(censorship[b][0]).replace(censorship[b][1], censorship[b][2]))
      }
    }
    if(a.hasChildNodes()) {
      a = a.childNodes;
      for(b = 0;b < a.length;b++) {
        censorNode(a[b])
      }
    }
  }
}
$(function() {
  $("div.postbody div" + ($("body#phpbb").length ? ".content div" : $("#ipbwrapper").length ? ".post-entry div:not(.clear)" : $("#pun-foot").length ? ".entry-content div div:not(.clear)" : "")).each(function() {
    censorNode(this);
    for(var a in censorship) {
      censorship[a][0] === "html" && censorship[a][1].test($(this).html()) && $(this).html($(this).html().replace(censorship[a][1], censorship[a][2]))
    }
  })
});
ge80

ge80
Membre actif

Masculin
Messages : 16167
Inscrit(e) le : 08/10/2006

http://www.tsi80.net/
ge80 a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Lien automatique sur un mot

Message par Ejayremy Lun 22 Aoû 2011 - 14:14

Un grand MERCI ! Ça fonctionne très bien Smile
Ejayremy

Ejayremy
Membre habitué

Masculin
Messages : 1038
Inscrit(e) le : 03/02/2006

https://ejayremy.1fr1.net/
Ejayremy a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum