Extensión:CSS

From mediawiki.org
This page is a translated version of the page Extension:CSS and the translation is 94% complete.
MediaWiki extensions manual
CSS
Release status: stable
Implementation Parser function
Description Proporciona una función de analizador para agregar archivos CSS, artículos o reglas en línea a los artículos.
Author(s)
Latest version 3.5.0
MediaWiki >= 1.31.0
License GNU General Public License 2.0 or later
Download
Example organicdesign.nz
  • $wgCSSPath
  • $wgCSSIdentifier
Quarterly downloads 153 (Ranked 46th)
Translate the CSS extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

La extensión CSS permite incluir hojas de estilo CSS en artículos específicos. El CSS puede estar en otro artículo, un archivo o pueden ser reglas definidas directamente en la función del analizador.

Uso

Por ejemplo, si usted tiene un artículo CSS llamado "MyStyles.css", que son los estilos que se pretenden usar con el artículo "MyFancyUserPage", deberá añadir la siguiente función del analizador al último,

{{#css:MyStyles.css}}

Si, por otro lado, "MyStyles.css" fuera un archivo en el directorio /wiki/skins, entonces se incluiría como se muestra a continuación. Tenga en cuenta que el archivo debe ser una ruta absoluta con una barra diagonal inicial para distinguirlo del título de un artículo.

{{#css:/skins/MyStyles.css}}

Alternativamente, las reglas CSS pueden ser directamente incluidas dentro de la función del analizador (en línea) como en el siguiente ejemplo,

{{#css:
  body {
    background: yellow;
    font-size: 20pt;
    color: red;
  }
}}

Instalación

  • Descargue y extraiga los archivos en el directorio «CSS» dentro del directorio extensions/ existente.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CSS
  • Añada el siguiente código a su $LocalSettings (preferiblemente al final):
    wfLoadExtension( 'CSS' );
    
  • Configurar como sea necesario.
  • Yes Hecho – Navegue a Special:Version en su wiki para verificar que la apariencia se haya instalado correctamente.

Configuración

Opcionalmente, puede establecer la URL base para archivos externos.

$wgCSSPath = false;  # Por defecto, relativo a $wgScriptPath
$wgCSSPath = '';  # Relativo a la raíz de su servidor
$wgCSSPath = 'https://example.org/stylesheets';  # Relativo a un sitio diferente

Usar como reemplazo de PageCSS

Hay una Extension:PageCSS anterior (ahora archivada) que usaba etiquetas de ‎<css> y ‎</css> en lugar de la función de analizador #css:. Esta extensión puede hacer la mayoría de las cosas que esas extensiones proveen, pero el sintaxis es incompatible. Una manera de evitar romper páginas existentes que todavía usan las etiquetas ‎<css> antiguas es usar tanto Extension:CSS y Extension:NewPageCSS en el mismo wiki.

Una solución alternativa (si usted quiere usar solo esta extensión, pero tener contenido existente que espera a Extension:PageCSS) es salvar esta función de código auxiliar como un archivo PHP e incluirlo desde su LocalSettings.php para reasignar <css> a #css:

<?php

// Stub to remap <css></css> tags to {{#css:}} parser function extension

// Para uso cuando se instala https://www.mediawiki.org/wiki/Extension:CSS para reemplazar Extension:NewPageCSS en wikis existentes.

$wgHooks['ParserFirstCallInit'][] = 'wfCSSParserStubInit';
 
// Engancha nuestra función de devolución de llamada en el analizador
function wfCSSParserStubInit( Parser $parser ) {

        // Cuando el analizador ve la etiqueta <css>, ejecuta el código wfCSSTagRender (abajo) para invocar el analizador {{#css:}}.
        $parser->setHook( 'css', 'wfCSSTagRender' );
        return true;
}
// Ejecuta la etiqueta $ccs
function wfCSSTagRender( $input, array $args, Parser $parser, PPFrame $frame ) {

        // Stub function, just redirect the user-provided input text blindly to the {{#css:}} parser function to re-parse it as wikitext
        $output = $parser->recursiveTagParse('{{#css:' . $input . '}}', $frame);
        return $output;
}

Hasta este punto, la extensión anterior PageCSS (o NewPageCSS) puede ser removida de su configuración; <css> ahora va a #css: y (si usted tiene esta extensión CSS ya funcionando) va a comportarse de la misma manera que otras extensiones lo han hecho siempre.

Problemas al cambiar el color o fondo de una página específica

Usar la función del analizador para usar el CSS desde otra página no funciona para cambiar el color o fondo de la página, si embargo, usar la función del analizador en una sola página por sí mismo permite cambiar el fondo. Para superar este problema, es posible cargar el CSS vía transclusión, que no causa el problema de fallar al cargar el cambio al fono de la página.

Errores

Vea la página de discusión.

Vea también