[SPIP Zone] [Spip-zone-commit] r30312 - in /_plugins_/liens_sortants_ouvrants: liens_sortants_ouvrants.js liens_sortants_ouvrants_pipelines.php

en jquery, cela serait plus chic non ?
si le lien possède l'attribut spip_out .... faire qqchose ?

voir aussi:
http://plugins.dotaddict.org/dc2/details/External-Links

avec cette fonction

class extLinkPublic
{
    public static function publicHeadContent(&$core)
    {
        if (!$core->blog->settings->extlink_enabled) {
            return;
        }

        $url = $core->blog->getQmarkURL().'pf='.basename(dirname(__FILE__));
        echo
        '<script type="text/javascript">'."\n".
        "//<![CDATA[\n".
        '$(document).ready(function(){'."\n".
        '$("a[@href^=\"http\"]").each(function(i){$(this).not("[@href*=\""+document.domain+"\"]").not(":has(img)").after(" <a href=\""+$(this).attr("href")+"\" onclick=\"window.open(this.href); return false;\" style=\"border: none;\"><img src=\"'.$url.'/img/external.gif\" alt=\"\" title=\"'.__('Open this link in a new window').'\" /></a>");});});'."\n".
        "\n//]]>\n".
        "</script>\n";
    }
}

romy@tetue.net wrote:

Author: romy@tetue.net
Date: Wed Jul 29 13:11:14 2009
New Revision: 30312

Log:
Partons de cette contrib anonyme : Target automatique pour liens - SPIP-Contrib (dite « d’après un message de Régis »...)

Added:
    _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants.js
    _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants_pipelines.php

Added: _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants.js

--- _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants.js (added)
+++ _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants.js Wed Jul 29 13:11:14 2009
@@ -0,0 +1,16 @@
+var site = '#URL_SITE_SPIP';
+
+function targetLinks() {
+var str;
+var where;
+where="_blank";
+
+for(var i=0;i<=(document.links.length-1);i++) {
+ str=document.links[i].href;
+ if((str.search(site)==-1)&&((str.search('http://')!=-1)
+ ||(str.search('www.')!=-1)
+ ||(str.search('ftp://')!=-1))){
+ document.links[i].target=where;
+ }
+}
\ No newline at end of file

Added: _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants_pipelines.php

--- _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants_pipelines.php (added)
+++ _plugins_/liens_sortants_ouvrants/liens_sortants_ouvrants_pipelines.php Wed Jul 29 13:11:14 2009
@@ -0,0 +1,8 @@
+<?php
+
+function liens_sortants_ouvrants_insert_head($flux) {
+ $flux .= '<script src="'._DIR_PLUGIN_LIENS_SORTANTS_OUVRANTS.'liens_sortants_ouvrants.js" type="text/javascript"></script>';
+ return $flux;
+}
+
+?>
\ No newline at end of file

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit
  
--
_________________________________________
http://www.erational.org

en jquery, cela serait plus chic non ?
si le lien possède l'attribut spip_out .... faire qqchose ?

http://www.jquery.info/spip.php?article1

$('a.spip_out').attr('target','_blank');

-- Fil

Le 29 juil. 2009 à 17:01, Fil a écrit :

en jquery, cela serait plus chic non ?

Certainement, mais mes compétences en la matière ne sont très médiocres.
Pour l'instant je n'ai fait qu'ouvrir le répertoire, déposé l'idée de base et je suis en train de rédiger la doc détaillée...

si le lien possède l'attribut spip_out .... faire qqchose ?

Nan, y'a déjà un plugin qui fait ça très bien (http://plugins.spip.net/Liens-spip_out-ouvrants) mais je veux attraper TOUS les liens externes d'une part, et leur coller d'autres trucs, pour qu'ils soient d'une accessibilité pas trop nulle malgré leur abominable target blank.

Idéalement, si je savais faire, je modifierais la génération des liens sortants SPIP pour y coller un picto « lien externe » (mais pas l'ouverture, qui resterait en JS tout pourri). Mais ce sera pour une autre version du plugin.

:slight_smile:

--
Romy