Recherche avancée

Médias (91)

Autres articles (47)

  • Qualité du média après traitement

    21 juin 2013, par

    Le bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
    Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

Sur d’autres sites (6341)

  • Evolution #3983 : Injecter automatiquement spip.css ?

    17 août 2017, par b b

    Je ne comprends pas, cette feuille de style est bien insérée par la dist depuis inclure/head :

    https://zone.spip.org/trac/spip-zone/browser/_core_/plugins/dist/inclure/head.html#L28

    Quelle est l’intention/intérêt de basculer l’insertion de cette inclure vers le pipeline ? (cela pourrait avoir des effets de bord sur les autres squelettes que la dist)

  • Anomalie #3882 : Ancres des notes de bas de page pour les URL arborescente

    11 mai 2021, par cedric -

    Ça marche chez moi (tm) en prod depuis des années, avec un squelette Z (donc le head et les #NOTES ne sont pas du tout dans un même fichier), donc non, c’est un peu plus compliqué que ça
    La fonction page_base_href() est appelée dans https://git.spip.net/spip/spip/src/branch/master/ecrire/public/evaluer_page.php#L96 donc pour chaque inclusion, et aussi avant l’affichage final https://git.spip.net/spip/spip/src/branch/master/ecrire/public.php#L157

    Mais de fait, en relisant le code il semble qu’on puisse être mis en echec si le base est inséré trop tot, car ensuite ça ne fonctionne plus
    Peux tu essayer ce patch ?

    $ git diff ecrire/public/assembler.php
    diff —git a/ecrire/public/assembler.php b/ecrire/public/assembler.php
    index a7dcd82044..224999f281 100644
    
    — - a/ecrire/public/assembler.php +++ b/ecrire/public/assembler.php @@ -722,30 +722,36 @@ function page_base_href(&$texte) ) $head = substr($texte, 0, $poshead) ; $insert = false ; + $href_base = false ; if (strpos($head, ’<base’) === false) $insert = true ; else
    - // si aucun <base ...> n’a de href c’est bon quand meme ! + // si aucun <base ...> n’a de href il faut en inserer un + // sinon juste re-ecrire les ancres si besoin $insert = true ; include_spip(’inc/filtres’) ; $bases = extraire_balises($head, ’base’) ; foreach ($bases as $base)
    - if (extraire_attribut($base, ’href’)) + if ($href_base = extraire_attribut($base, ’href’)) $insert = false ; + break ;

    - if ($insert) + + if ($insert) include_spip(’inc/filtres_mini’) ; // ajouter un base qui reglera tous les liens relatifs
    - $base = url_absolue(’./’) ;
    - $bbase = "\n<base href=\"$base\" />" ;
    - if (($pos = strpos($head, ’’)) !== false)
    - $head = substr_replace($head, $bbase, $pos + 6, 0) ; + $href_base = url_absolue(’./’) ; + $base = "\n<base href=\"$href_base\" />" ; + if (($pos = strpos($head, ’’)) !==false) + $head = substr_replace($head, $base, $pos+6, 0) ; elseif (preg_match(",]*>,i", $head, $r))
    - $head = str_replace($r[0], $r[0] . $bbase, $head) ; + $head = str_replace($r[0], $r[0] . $base, $head) ;
    $texte = $head . substr($texte, $poshead) ; +
    + if ($href_base) // gerer les ancres $base = $_SERVER[’REQUEST_URI’] ; // pas de guillemets ni < dans l’URL qu’on insere dans le HTML

    ou si tu préfères le code intégral de la fonction corrigée :

    // https://code.spip.net/@page_base_href
    function page_base_href(&$texte) 
        static $set_html_base = null ;
        if (is_null($set_html_base)) 
            if (!defined(’_SET_HTML_BASE’))
                // si la profondeur est superieure a 1
                // est que ce n’est pas une url page ni une url action
                // activer par defaut
            
                $set_html_base = ((
                    $GLOBALS[’profondeur_url’] >= (_DIR_RESTREINT ? 1 : 2)
                    and _request(_SPIP_PAGE) !== ’login’
                    and !_request(’action’)) ? true : false) ;
             else 
                $set_html_base = _SET_HTML_BASE ;
            
        
    

    if ($set_html_base
    and isset($GLOBALS[’html’]) and $GLOBALS[’html’]
    and $GLOBALS[’profondeur_url’] > 0
    and ($poshead = strpos($texte, ’’)) !== false
    )
    $head = substr($texte, 0, $poshead) ;
    $insert = false ;
    $href_base = false ;
    if (strpos($head, ’<base’) === false)
    $insert = true ;
    else
    // si aucun <base ...> n’a de href il faut en inserer un
    // sinon juste re-ecrire les ancres si besoin
    $insert = true ;
    include_spip(’inc/filtres’) ;
    $bases = extraire_balises($head, ’base’) ;
    foreach ($bases as $base)
    if ($href_base = extraire_attribut($base, ’href’))
    $insert = false ;
    break ;


    if ($insert)
    include_spip(’inc/filtres_mini’) ;
    // ajouter un base qui reglera tous les liens relatifs
    $href_base = url_absolue(’./’) ;
    $base = "\n<base href=\"$href_base\" />" ;
    if (($pos = strpos($head, ’’)) !==false)
    $head = substr_replace($head, $base, $pos+6, 0) ;
    elseif (preg_match(",]*>,i", $head, $r))
    $head = str_replace($r[0], $r[0] . $base, $head) ;

    $texte = $head . substr($texte, $poshead) ;

    if ($href_base)
    // gerer les ancres
    $base = $_SERVER[’REQUEST_URI’] ;
    // pas de guillemets ni < dans l’URL qu’on insere dans le HTML
    if (strpos($base,"’") or strpos($base,’"’) or strpos($base,’<’))
    $base = str_replace(array("’",’"’,’<’),array("%27",’%22’,’%3C’), $base) ;

    if (strpos($texte, "href=’#") !== false)
    $texte = str_replace("href=’#", "href=’$base#", $texte) ;

    if (strpos($texte, "href=\"#") !== false)
    $texte = str_replace("href=\"#", "href=\"$base#", $texte) ;



  • Anomalie #2254 (Nouveau) : aide_index à la place de aide

    28 août 2011, par Johan .

    aide_index est présent dans : ligne 37 dans prive/squelettes/inclure/head.html ligne 150 dans ecrire/inc/presentation_mini.php et génère de mauvaise URL. Voici un patch qui corrige ces url ainsi que une chaîne de langue dans prive/squelettes/inclure/head.html et le ticket (...)