Open main menu

Ekstensi:CSS

This page is a translated version of the page Extension:CSS and the translation is 87% complete.
Outdated translations are marked like this.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎español • ‎français • ‎português do Brasil • ‎中文 • ‎日本語
MediaWiki extensions manual
OOjs UI icon advanced.svg
CSS
Release status: stable
Implementation Parser function
Description Fungsi parser untuk menambahkan berkas CSS, artikel CSS, atau aturan baris CSS ke dalam artikel
Author(s) Aran Dunkley, Rusty Burchfield
Latest version 3.5.0 (2017-06-06)
MediaWiki 1.25+
Database changes No
License GNU General Public License 2.0 or later
Download
Example Organised Design
Translate the CSS extension if it is available at translatewiki.net
Check usage and version matrix.
Issues Open tasks · Report a bug

Ekstensi CSS memungkinkan stylesheet CSS agar dimasukkan ke dalam artikel tertentu. CSS yang akan dimasukkan bisa artikel lain, sebuah berkas, atau bisa aturan yang ditentukan langsung di dalam fungsi parser.

Pemakaian

Misalnya, jika Anda memiliki artikel CSS berjudul "StyleSheetsaya.css" yang sudah berisi gaya, Anda akan menambahkan sintaks fungsi parser berikut ke dalam artikel "HalamanCantiksaya" yang akan Anda beri gaya,

{{#css:MyStyles.css}}

Jika kasusnya "StyleSheetsaya.css" adalah sebuah berkas di direktori /wiki/kulit, maka cara menambahkannya seperti berikut. Catat: berkasnya harus benar-benar berupa path yang diawali slash untuk menunjukkan dia bukan judul artikel.

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

Alternatifnya, aturan CSS bisa langsung ditambahkan dalam fungsi parser (dalam baris) seperti contoh berikut,

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

Pemasangan

  • Download and place the file(s) in a directory called CSS in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
    wfLoadExtension( 'CSS' );
    
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

To users running MediaWiki 1.29 or earlier:

The instructions above describe the new way of installing this extension using wfLoadExtension(). If you need to install this extension on these earlier versions (MediaWiki 1.29 and earlier), instead of wfLoadExtension( 'CSS' );, you need to use:

require_once "$IP/extensions/CSS/CSS.php";

Atau Anda bisa memilih mengatur URL basis untuk berkas eksternal.

Optionally, you can set the base URL for external files.

$wgCSSPath = false;  # Default, relatif ke $wgScriptPath
$wgCSSPath = '';  # Relatif ke akar server Anda
$wgCSSPath = 'https://example.org/stylesheets';  # Relatif ke situs yang berbeda

Pemakaiannya sebagai ganti CSSHalaman

Terdapat Ekstensi:CSSHalaman dulunya (sudah diarsipkan) yang menggunakan tag <css> dan </css> bukannya fungsi parser #css:. Ekstensi ini bisa mengerjakan hampir semua yang disediakan ekstensi-ekstensi itu, tetapi sintaksnya sudah tidak kompatibel. Agar terhindar dari rusaknya halaman yang ada yang masih menggunakan tag tua <css>, caranya gunakan Extension:CSS dan Ekstensi:CSSHalamanBaru di wiki yang sama.

Solusi alternatif (jika Anda ingin menggunakan ekstensi ini, tetapi konten yang tersedia menggunakan Ekstensi:CSSHalaman): simpan fungsi rintisan ini berupa berkas PHP dan tambahkan dari LocalSettings.php Anda untuk memetakan kembali <css> menjadi #css:

<?php

// Rintisan untuk memetakan kembali tag <css></css> ke ekstensi fungsi parser {{#css:}}

// Untuk digunakan dalam instalasi https://www.mediawiki.org/wiki/Extension:CSS dalam rangka mengganti Ekstensi:CSSHalamanBaru pada wiki-wiki yang saat ini ada

$wgHooks['ParserFirstCallInit'][] = 'wfCSSParserStubInit';
 
// Pancing fungsi pemanggilan yang kita coba agar masuk ke dalam parser
function wfCSSParserStubInit( Parser $parser ) {

        // Ketika parser ini menemukan tag <css>, dia akan mengolah fungsi wfCSSTagRender rintisan (di bawah) untuk melibatkan parser {{#css:}}
        $parser->setHook( 'css', 'wfCSSTagRender' );
        return true;
}
// Pengolahan tag <css>
function wfCSSTagRender( $input, array $args, Parser $parser, PPFrame $frame ) {

        // Fungsi rintisan, cukup alihkan teks masukan dari pengguna asal-asalan ke fungsi parser {{#css:}} untuk mem-parse-nya kembali sebagai teks wiki
        $output = $parser->recursiveTagParse('{{#css:' . $input . '}}', $frame);
        return $output;
}

Sampai tahap ini, ekstensi CSSHalaman (atau CSSHalamanBaru) tadi mungkin dihapus dari konfigurasi Anda; <css> sekarang pergi ke #css: dan (jika Anda memilikinya dan sudah berjalan) perilakunya akan seperti semua ekstensi CSS.

Masalah pada pengubahan warna atau latar belakang halaman tertentu

Memanfaatkan fungsi parser untuk menggunakan CSS dari halaman lain tidak akan bekerja untuk mengubah warna atau latar belakang halaman, tetapi fungsi parser itu sendiri memungkinkan mengubah latar belakang halaman. Untuk menangani masalah ini, CSS dapat diunggah melalui transklusi, yang tidak mungkin gagal dalam mengubah latar belakang halaman.

Bugs

Lihat pula