La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  HTML / CSS / XHTML
(Modérateurs: Shain, Netah, Lilian, lauryv, ToToMaStEr)
  Cherche outil de réécriture code source de mes balises <a> externes
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: Cherche outil de réécriture code source de mes balises <a> externes  (Lu 3485 fois)
Cherche outil de réécriture code source de mes balises <a> externes
« sur: le 20-05-2012 a 16:20:22 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Bonjour,

Je souhaiterais ré-écrire mes balises link (<a></a>), lorsqu'il s'agit de liens externes à mon site.

Précisément, je souhaiterais que tous les liens pointant vers l'extérieur aient une classe particulière. Comme il y en a beaucoup, je cherche un petit outil qui, s'il existe, soit capable de balayer le code source, en mode local, de toutes mes pages et de réécrire ces balises en y ajoutant cette classe.

Que tous les liens contenant une adresse avec http ou https, par exemple
<a title="Sujet" href="http://ici.com/sujet.html">Sujet</a>

devienne
<a class="external" title="Sujet" href="http://ici.com/sujet.html">Sujet</a>

Si un tel petit outil n'existe pas, il faudra y aller à la main, un par un, ce qui risque d'être long et sujet à des loupés.

Merci

Rapporter au modérateur  

Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #1 sur: le 20-05-2012 a 17:32:44 »
dandreaweb
P'tit nouveau
**

Hors-Ligne

Sexe: Male
Messages: 124



dandreaweb

Voir le Profil    WWW    E-Mail
Répondre avec citation

bonjour,
avec Notepad++ vous pouvez le faire il suffit d'aller dans : recherche -> rechercher -> remplacer. Là vous avez 2 champs l'un pour rechercher et l'autre pour remplacer. Une fois que vous avez rempli les champs désirés, vous cliquez sur remplacer tout.
a+

Rapporter au modérateur  

Réalisation de sites internet , localisation : 69
dandreaweb.com
siren:534146618
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #2 sur: le 21-05-2012 a 01:35:56 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Bonsoir dandreaweb

Merci pour la suggestion mais je ne vois pas comment faire une recherche / remplacement conditionnelle, la condition étant que le lien dans la balise <a> commence par http:// ou https://
Tous les autres liens doivent rester inchangés

Il y en a plusieurs centaines, probablement plus encore, tous différents, pointant vers des centaines de liens profonds sur ces centaines de sites différents (tous les "title" sont différents, tous les "href" sont différents, tous les "textes" des liens sont différents.

Mais il y a tellement d'options dans la fonction recherche/remplacement dans "find in files" que je loupe peut-être quelque chose... Les expressions régulières permettent des "if" ?

Merci

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #3 sur: le 22-05-2012 a 12:28:55 »
vieactu
Superactif
****

Hors-Ligne

Messages: 503





Voir le Profil
Répondre avec citation

Quel est ton but en l’occurrence ? Beaucoup de boulot pour pas grand chose...

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #4 sur: le 25-05-2012 a 11:27:35 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Bonjour,

C'est très simple :

  • Tous les liens internes à mon site (tous les liens sur mes pages qui pointent sur d'autres de mes pages, à l'intérieur de mon site) s'ouvrent dans top avec une class.

  • Tous les liens externes à mon site (tous les liens sur mes pages qui pointent vers des sites externes à mon site (ou des liens profonds vers des pages de ces sites externes) s'ouvrent dans blank avec une autre class.


Comme j'ai fais une boulette et que, pour l'instant, tous les liens ont la même tête, je cherche un outil qui m'éviterait de faire ce boulot à la main.

Merci

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #5 sur: le 25-05-2012 a 13:43:42 »
Franck K
Habitué
***

Hors-Ligne

Sexe: Male
Messages: 319



Développeur / Intégrateur Freelance

Voir le Profil    WWW    E-Mail
Répondre avec citation

dandreaweb a raison. Voici comment tu peux faire :


Dans le champs recherche tu tapes href="http
Danns le champs remplacer tu tapes class="myClass" href="http

Tu saisis ? Cela rajoutera class="myClass" devant l'attribut href si celui ci commence par http.

A supposer que les liens n'ont déjà pas d'attribut class.

Rapporter au modérateur  

Franck Kosellek - Développeur web en freelance depuis 2009 -
Expert E-commerce / Prestashop. Nephila Studio - PrestaStudio
SIRET 798 506 366 00011
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #6 sur: le 25-05-2012 a 15:43:58 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Bonjour,

Et oui... Si cela était si facile...

Mais je suis ce ceux qui renseignent l'attribut "title" qui se trouve entre l'ouverture la balise <a> et l'attribut "href".

Évidemment, il n'y a pas deux attributs "title" identiques.

Le principe des recherches/remplacements conditionnelles (dans le cas qui m'intéresse immédiatement - la balise <a>  - il faudrait ensuite le généraliser à d'autres balises et, peut-être, à d'autres langages de balises comme xml) serait :

Par exemple dans un onglet appelé "html"
Paramètre : ignorer la case (majuscules / minuscules) - Oui/Non
Paramètre : jeu de caractères (encodage) - dans une liste (unicode, iso-8859-1, windows-1252, x-mac-roman etc. ...)
Paramètres : rech/remp 1er uniquement, nombre d'occurences, tous, aucun (montrer seulement), soumettre un par un
Paramètre : répertoire de départ
Paramètre : page unique (nom de fichier) ou toutes les pages
Paramètre : inclure les sous-répertoires
Paramètre : ne traiter que les fichiers en (liste) .htm, .html, .php...

Recherches et remplacements à doubles conditions

[Recherches/Remplacements conditionnels - Condition 1]
Si Condition 1 vraie : (= ou <> ou > ou < ou <= ou >= ou Commence par ou contient ou Ne contient pas ou Se termine par)
Chaîne de caractères : aaaaaaaaaaa

dans mon cas on repère une balise <a> :
Condition "Commence par"
Chaîne de caractères "<a "


[Isoler le champ sur lequel on va travailler - chercher la balise de fermeture]
Chercher balise de fermeture "</a>".
Divers tests histoire d'éviter les erreurs de syntaxe et de circonscrire le travail à la balise elle-même et s'assurer que le code est bien un langage de balises).
Prévoir les cas d'erreur de syntaxe (pas de balise de fermeture donc on ne sait pas sur quoi on travaille...).
Exemple de balise de test, horrible mais syntaxiquement correcte, sur plusieurs lignes, avec des espaces aléatoires et un texte pouvant être confondu avec la balise de fermeture etc. ... - c'est un vrai piège ! Normalement on ne devrait jamais trouver un attribut "title" comme celui qui suit, mais les webmasters sont tellement "distraits" en écrivant avec les pieds !

<!-- balise de test -->
<a title = "</a> "guillemets""
href      =                "parla.html"
   target="_top">test<br>
suite<br>
ligne 3</a>

<!-- réécriture du code source -->
Depuis "<a " jusqu'à "</a>", dans un buffer, en supprimant les retours chariot et les espaces multiples, histoire de travailler dans un environnement syntaxiquement propre.

Donnerait, pour la balise de test ci-dessus :
<a title="&lt;/a&gt; &quot;guillemets&quot;" href="parla.html" target="_top">test<br>suite<br>ligne 3</a>

[Recherches/Remplacements conditionnels - Condition 2]
Si Condition 2 vraie : (= ou <> ou > ou < ou <= ou >= ou Commence par ou contient ou Ne contient pas ou Se termine par)
Chaîne de caractères : aaaaaaaaaaa

dans mon cas on repère une balise <a> qui n'est pas déjà classieuse :
Condition "<>"
Chaîne de caractères "<a class=""


[Recherches/Remplacements conditionnels - Condition 3]
Si Condition 3 vraie : (= ou <> ou > ou < ou <= ou >= ou Commence par ou contient ou Ne contient pas ou Se termine par)
Chaîne de caractères : aaaaaaaaaaa

dans mon cas on repère un attribut href externe avec :
Condition "Contient"
Chaîne de caractères "href="http"


[Alors, exécuter la fonction Recherches/Remplacements]

        recherche chaîne de caractères a
        remplace par chaîne de caractères b

        dans mon cas, ce serait :
        Chaîne de caractères a : "<a "
        Chaîne de caractères b : "<a class="external" "


        ré-écrire le code source de la page

        fin fonction rechercher / remplacer

      sinon fin condition 3

  sinon fin condition 2

sinon fin condition 1

Itérer dans la page jusqu'à sa fin

Ecrire la page

Soritr

__________________________
ps
Des trucs en plus à vérifier comme la longueur, en nombre de caractères, du texte du lien histoire de ne pas se trouver devant un buffer overflow etc. ...

Convertir les "chaîne de caractères" saisie dans le jeu de caractères interne puisque l'on travaille en code source - assez délicat à faire car il faut distinguer automatiquement ce qui relève du code de ce qui relève du texte - ici, par exemple, href="http doit rester "href="http" et ne pas être converti en "href=&quot;http". Ceci peut sans doute être laissé à l'appréciation de l'utilisateur dans sa zone de saisie, avec une case à cocher)


Je livre l'aspirine avec  !

Merci

« Dernière Édition: le 25-05-2012 a 17:18:11 par JeDoute » Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #7 sur: le 25-05-2012 a 16:35:13 »
Franck K
Habitué
***

Hors-Ligne

Sexe: Male
Messages: 319



Développeur / Intégrateur Freelance

Voir le Profil    WWW    E-Mail
Répondre avec citation

Dit moi juste 2 choses :

- Tes balises <a> ont elles déjà une classe attribuée ?
- Est ce que la seule chose que tu cherches à faire c'est d'ajouter une classe pour les <a> dont le href commence par "http" ?

Si les réponses sont non/oui ma solution marche toujours (qu'il y ai des attributs title ou non...)

Si les réponses sont oui/oui, il va te falloir parser chaque fichier avec un script un peu plus complexe que ça.

Rapporter au modérateur  

Franck Kosellek - Développeur web en freelance depuis 2009 -
Expert E-commerce / Prestashop. Nephila Studio - PrestaStudio
SIRET 798 506 366 00011
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #8 sur: le 25-05-2012 a 16:53:55 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Re, re, re, et areeeuh,

Peut être (sûrement) que je loupe quelque chose avec notepad++.

Allons-y : comment fais-je avec ça ?

<br>
<br>
<a title="Allez voir ce que j'en dis page 1" href="page_1_surlesite.html" target="_top">Lien interne 1</a><br>
<a title="Et &ccedil;a, je l'ai d&eacute;velopp&eacute; ici" href="page_2_surlesite.html" target="_top">Lien interne 2</a><br>
<a title="Lui, il en parle bien - Allez voir" href="https://sisite.org/page_x_ailleurs.html" target="_blank">Lien externe 1</a><br>
<a title="En savoir plus" href="http://site.com/page_y_ailleurs.html" target="_blank">Lien externe 2</a><br>
<a class="internal" title="Plein d'images sur la  page 3" href="page_3_surlesite.html" target="_top">Lien interne 3 classieux</a><br>
<a class="external" title="Que c'est b&ocirc; !" href="http://tresbosite.com/page_z_ailleurs.html" target="_blank">Lien externe 3 classieux</a><br>
<br>
<br>

Et encore, là, le code est correctement écrit (mais c'est le cas pour mon écriture (Adobe Golive CS2)

Merci

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #9 sur: le 25-05-2012 a 17:15:25 »
Franck K
Habitué
***

Hors-Ligne

Sexe: Male
Messages: 319



Développeur / Intégrateur Freelance

Voir le Profil    WWW    E-Mail
Répondre avec citation

Tu as déjà une classe external, je suppose que c'est cette classe que tu veux ajouter et donc on part du principe ou elles n'existent pas encore.

Tu fais un rechercher / remplacer.

Expression à rechercher : href="http
à remplacer par : class="external" href="http

Dit moi si tu obtiens ce que tu veux.

Rapporter au modérateur  

Franck Kosellek - Développeur web en freelance depuis 2009 -
Expert E-commerce / Prestashop. Nephila Studio - PrestaStudio
SIRET 798 506 366 00011
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #10 sur: le 25-05-2012 a 17:22:56 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Re Frank,

N'est pas idiot du tout ce que tu dis ! C'est même génial !

Pourquoi je cherche absolument à mettre la classe juste après la balise d'ouverture ?

Pourquoi faire simple quand on peut faire compliqué ?

Comment n'y ais-je pas pensé 

J'y vais de ce pas !

Je te tiens informé.

@+

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #11 sur: le 25-05-2012 a 17:39:22 »
JeDoute
Membre récent
*

Hors-Ligne

Messages: 7





Voir le Profil
Répondre avec citation

Et, en plus, cela fonctionne parfaitement !

C'est vexant !

Le risque de doublons, pour les quelques liens que j'avais commencé à retoucher manuellement, est géré par la fonction d'analyse syntaxique du code.

Super.

Merci

Rapporter au modérateur  
Re:Cherche outil de réécriture code source de mes balises <a> externes
« Répondre #12 sur: le 25-05-2012 a 19:40:40 »
Franck K
Habitué
***

Hors-Ligne

Sexe: Male
Messages: 319



Développeur / Intégrateur Freelance

Voir le Profil    WWW    E-Mail
Répondre avec citation

de rien 

Rapporter au modérateur  

Franck Kosellek - Développeur web en freelance depuis 2009 -
Expert E-commerce / Prestashop. Nephila Studio - PrestaStudio
SIRET 798 506 366 00011
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg