Extensión:CSS

From mediawiki.org
This page is a translated version of the page Extension:CSS and the translation is 88% complete.
Manual de extensiones de MediaWiki
CSS
Estado de lanzamiento: estable
Implementación Función del analizador
Descripción Proporciona una función de analizador para agregar archivos CSS, artículos o reglas en línea a los artículos.
Autor(es)
Última versión 3.5.0
MediaWiki >= 1.31.0
Licencia GNU Licencia Pública general 2.0 o posterior
Descarga
Ejemplo organicdesign.nz
  • $wgCSSPath
  • $wgCSSIdentifier
Descargas trimestrales 157 (Ranked 45th)
Traduce la extensión CSS si está disponible en translatewiki.net
Asuntos Tareas abiertas · Reportar un 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 tienes un artículo CSS llamado "MyStyles.css", que son los estilos que se pretenden usar con el artículo "MyFancyUserPage", deberás 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. Ten 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

  • Descarga y extrae los archivos en un directorio denominado «CSS» dentro de la carpeta extensions/.
    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ñade el siguiente código en la parte final de tu archivo LocalSettings.php :
    wfLoadExtension( 'CSS' );
    
  • Configurar como sea necesario.
  • Yes Hecho – Navega a Special:Version en el wiki para verificar que la extensión se haya instalado correctamente.

Configuración

Opcionalmente, puedes estableer la URL base para archivos externos.

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

Usar como reemplazo de PageCSS

Hay un Extension:PageCSS anterior (ahora archivado) 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 quieres 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 tu 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;
}

At this point, the prior PageCSS (or NewPageCSS) extensions may be removed from your configuration; <css> now goes to #css: and (if you have this CSS extension already up and running) will behave the way any of the other CSS extensions always have.

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

Using the parser function to use the CSS from another page does not work to change the color or background of the page, however, using the parser function on a single page by itself does allow the background to be changed. 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

Véase la página de discusión.

Véase también