Ekstensi:CSS

This page is a translated version of the page Extension:CSS and the translation is 100% complete.
Ekstensi MediaWiki
CSS
Status rilis stabil
Implementasi Fungsi parser
Deskripsi Menyediakan sebuah fungsi parser untuk menambahkan berkas CSS, artikel CSS, atau aturan baris CSS ke dalam artikel
Perancang awal
Versi terbaru 3.5.0
MediaWiki >= 1.31.0
Lisensi Lisensi Publik Umum GNU 2.0 atau lebih baru
Unduh
Contoh organicdesign.nz
  • $wgCSSPath
  • $wgCSSIdentifier
Quarterly downloads 160 (Ranked 44th)
Terjemahkan ekstensi CSS jika tersedia di translatewiki.net
Masalah Tugas terbuka · Laporkan kekutu

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

  • Unduh dan letakkan berkas-berkasnya di dalam sebuah direktori yang bernama CSS di folder extensions/ Anda.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CSS
  • Tambahkan kode berikut di bagian bawah LocalSettings.php Anda:
    wfLoadExtension( 'CSS' );
    
  • Atur konfigurasi seperlunya.
  •   Selesai – Telusuri ke Special:Version di wiki Anda untuk memastikan ekstensinya berhasil dipasang.

Atau Anda bisa memilih mengatur URL basis untuk berkas eksternal.

Selain itu, Anda juga bisa menetapkan URL dasar untuk berkas eksternal.

$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 Extension:PageCSS 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 Extension:NewPageCSS 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. Untuk mengatasi masalah ini, CSS bisa dimuat melalui transklusi, yang tidak menyebabkan masalah gagal memuat perubahan ke latar belakang halaman.

Bugs

Lihat halaman pembicaraan

Lihat pula