Changeset 114796 in spip-zone


Ignore:
Timestamp:
Apr 4, 2019, 7:37:58 PM (8 months ago)
Author:
maieul@…
Message:

pouvoir rechercher hors les liens hors raccourcis [->]. Pour le moment on applique uniquement au champ de redirection virtuel de l'article

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/correction_liens_internes/trunk/correction_liens_internes_pipelines.php

    r114795 r114796  
    1515        if ($flux['args']['action'] == 'modifier') {
    1616                foreach ($flux['data'] as $champ => $valeur) {
    17                         $flux['data'][$champ] = correction_liens_internes_correction($valeur);
     17                        if ($champ != 'virtuel') {
     18                                $flux['data'][$champ] = correction_liens_internes_correction($valeur);
     19                        } else {
     20                                $flux['data'][$champ] = correction_liens_internes_correction($valeur, false);
     21                        }
    1822                }
    1923        }
     
    7579 * Parse un texte, à la recherche des liens erronnées, et les corriges
    7680 * @param string $texte
     81 * @param bool $raccourci_spip=true si on doit tester la présence du raccourci [->], false si on remplace directement les urls même hors raccourcis SPIP
    7782 * @return string le texte modifié
    7883 **/
    79 function correction_liens_internes_correction($texte){
     84function correction_liens_internes_correction($texte, $raccourci_spip = true){
    8085        // pas de liens, on s'en va...
    81         if (!is_string($texte) || strpos($texte, '->') === false) {
     86        if (!is_string($texte) || (strpos($texte, '->') === false && $raccourci_spip )) {
    8287                return $texte;
    8388        }
     
    99104        $objet = '';
    100105        $id_objet = 0;
    101         preg_match_all("#\[.*->($url_site.*)\]#U", $texte, $match, PREG_SET_ORDER);
     106        if ($raccourci_spip) {
     107                preg_match_all("#\[.*->($url_site.*)\]#U", $texte, $match, PREG_SET_ORDER);
     108        } else {
     109                preg_match_all("#($url_site.*(\s)?)#", $texte, $match, PREG_SET_ORDER);
     110        }
    102111        include_spip("inc/urls");
    103112
Note: See TracChangeset for help on using the changeset viewer.