Módosítások

Hogyan tegyük széppé a MediaWikit?

7 016 bájt hozzáadva, 2008. szeptember 3., 21:51
+Login eltüntetése
* Csináljunk valahová A produkciós Wikik (wikipedia.org, mediawiki.org) nagyon sok sablont, beszúrt színes táblázatot használnak, amelyek nem csak szépek, de használatukkal egyrészt az oldalak szerkesztése is gyorsabb, másrészt az olvasó is könnyebben megérti. Ebben a szócikkben azt próbálom leírni, hogy miket csináltam én, hogy ez a Wiki így nézzen ki, ahogyan kinéz. == Syntax highlighting ==A MediaWikihez létezik egy [http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi GeSHi névre hallgató extension]. Ezt kell feltelepíteni a linken található leírás alapján. (Ne felejtsük el az összes php file-t letölteni!) Ha ezt megtettük, akkor az alábbi módon használhatjuk a kiterjesztést, pl. XML dokumentum kiemeléséhez:<pre><source lang="xml"<bekezdes id="1"> <text param="papparaparam">Helló világ</text> <kep source="file:///tmp/alma.png"/></bekezdes></source></pre>És ez így fog kinézni:<source lang="xml"><bekezdes id="1"> <text param="papparaparam">Helló világ</text> <kep source="file:///tmp/alma.png"/></bekezdes></source> == Szép táblázatok használata ==A wikipedia tartalmaz egy ún. "széptáblázat" (más néven: wikitable, prettytable) sablont, amely közönséges táblázatok csinosítását végzi. Ehhez viszont szükségünk van néhány változtatásra a [[MediaWiki:Common.css]] file-ban. # Elsőként készítsünk egy hivatkozást akárhová (pl. a saját lapunkra) egy hivatkozást ilyen néven: <nowiki>[[MediaWiki:Common.css]], forrás </nowiki>. Ezt szerkeszteni csak sysopként fogjuk tudni. Puskázzunk például a [http://meta.wikimedia.org/w/index.php?title=MediaWiki:Common.css&action=editWikiMedia oldaláról!]** Csak akkor fog működni a sysop-ok vagyunk# Mentsük el.** Csináljunk # Készítsünk egy sablont pl. ennek mintájárailyen néven: [[Template: Wikitable]] (<nowiki>[[Template:Wikitable]]</nowiki>)** Használjuk # Készítsük a táblázatainkat így: <nowikipre>{| {{Wikitablewikitable}} ! Egyik oszlop !! Másik oszlop|-| Egyik érték || Másik érték|-|}</nowikipre>* Ennek eredménye ez lesz:{| {{wikitable}}! Egyik oszlop !! Másik oszlop|-| Egyik érték || Másik érték|-|} == Szép figyelmeztetések és egyéb jelölések ==Ezeket a dolgokat a wikipedia Article Message Box-oknak nevezi. Számos sablont takar, és mindegyik sablon egy közös őst használ.=== Ikonok===Ha azt akarjuk, hogy a figyelmeztetések mellett ikonok is megjelenjenek, akkor ezeket fel kell tölteni a Wikibe. Egy csomó jó ikon található pl. itt: http://commons.wikimedia.org/wiki/Category:Indication_icons=== CSS ===Sajnos a fent leírt CSS módosítás még nem tartalmazza az '''ambox''' sablonhoz szükséges dolgokat.{{uncertain|Lehetséges, hogy ezt a lépést ki lehetne kerülni, ha a wikipediáról szednénk le a common.css -t?}}Ezért adjuk hozzá az alábbiakat a [[MediaWiki:Common.css]]-hez:<source lang="css">/* Article message box template styles */table.ambox { margin: 0 10%; /* Will not overlap with other elements */ border-collapse: collapse; background: #fbfbfb; border: 1px solid #aaa; border-left: 10px solid #1e90ff; /* Default "notice" blue */}table.ambox th.ambox-text, table.ambox td.ambox-text { /* The message body cell(s) */ padding: 0.25em 0.5em; /* 0.5em left/right */ width: 100%; /* Make all templates the same width regardless of text size */}table.ambox td.ambox-image { /* The left image cell * De mi az / padding: 2px 0px 2px 0.5em; /* 0.5em left, 0px right */ text-align: center; }table.ambox td.ambox-imageright { /* The right image cell */ padding: 2px 4px 2px 0px; /* 0px left, 4px right */ text-align: center; }table.ambox-notice { border-left: 10px solid #1e90ff; /* Blue *//* border-right: 10px solid #1e90ff; */ /* If you want two blue bars */}table.ambox-delete,table.ambox-serious { border-left: 10px solid #b22222; /* Red */}table.ambox-content { border-left: 10px solid #f28500; /* Orange */}table.ambox-style { border-left: 10px solid #f4c430; /* Yellow */}table.ambox-merge { border-left: 10px solid #9932cc; /* Purple */}table.ambox-protection { border-left: 10px solid #bba; /* Gray */}table.ambox.ambox-mini { /* small floating box variant */ float: right; clear: right; margin: 0 0 0 1em; width: 25%;}</source>=== ParserFunctions ===A sablonok működéséhez telepíteni kell a '''ParserFunctions''' MediaWiki extension-t. A leírásért lásd a [http://meta.wikimedia.org/wiki/ParserFunctions#Installation Wikimedia Meta oldalát]. === Sablonok ===El kell készíteni a "közös őst", az [[Template:ambox | Ambox sablon???sablont]] (lásd a hivatkozott lap forrását!) Ebben a sablonban kell definiálni, hogy hány féle üzenet lehet. Én ezeket az üzenettípusokat definiáltam (mindegyikhez létre kell hozni egy külön sablont!):* ''[[Template:TODO]]'': még nincs kész az adott szakasz vagy oldal* ''[[Template:STOP]]'': Állj és ne tovább!* Használjuk ''[[Template:INFO]]'': További érdekességek a tudomány és a technika világából...* ''[[Template:UNCERTAIN]]'': Hát, ebben nem vagyok egészen biztos...* ''[[Template:ATTENTION]]'': Figyelem!* ''[[Template:TRASH]]'': Elavult információk == PNG MIME-type bug ==Forrás: http://wwwgustavus.edu/gts/webservices/2007/06/18/fixing-broken-png-uploads-with-mediawiki/ A lényeg, hogy a feltöltött PNG file-ok hibás MIME-típussal tárolódnak, ezért nem jelennek meg a képek. A linkelt írás szerint a PHP-ből ki kell nyerni, hogy hol tartja a '''mime magic'''-et (ez RedHat alatt itt található: <code>/etc/httpd/conf/magic</code>, majd ehhez hozzá kellett adni az alábbi sorokat: # PNG images 1 string PNG image/pngEzután az Apache webszervert újra kell indítani, majd a hibás file-okat újból feltölteni.org == Szerkesztés linkek eltüntetése anonymous számára ==Számomra zavaró volt, hogy, noha anonymousnak nincs jogosultsága szerkeszteni, lépten nyomon "szerkesztés" linkekbe botlik az ember. Ezt a default skin módosításával lehet megszüntetni. === Szerkesztés TAB ===A felső tab-ok közül csak a "szerkesztés" feliratút kell törölni. Ehhez szerkesszük át a <code>skins/MonoBook.php</wikicode> file-t. A következő sort keressük meg benne: <source lang="php">foreach($this->data['content_actions'] as $key => $tab</Extensionsource> És cseréljük le erre:SyntaxHighlight_GeSHi MediaWiki syntax highlighting extension<source lang="php">foreach($this->data['content_actions']as $key => $tab) if(!($key=='edit') or ($this-t>data['loggedin']==1))</source> {{ATTENTION|Figyeljünk, hogy a sor elején található '''<code><?php</code>''' string megmaradjon!}} === Szakasz szerkesztés linkek ===Szintén a <code>skins/MonoBook.php</code> file-ban keressük meg azt a sort, amely a '''<code><nowiki><!-- Head scripts--></nowiki></code>''' kommentet tartalmazza.  Efölé szúrjuk be a következőt:<source lang="php"><?php if(!$this->data['loggedin']) { ?> <style> <!-- .editsection { display: none; } --> </style><?php } ?></source>== Sima "Login" link eltüntetése ==Keressük meg a következő részt az <code>includes/SkinTemplate.php</code> file-ban:<source lang="php"> $personal_urls['login'] = array( 'text' => wfMsg( $loginlink ), 'href' => self::makeSpecialUrl( 'Userlogin', 'returnto=' . $this->thisurl ), 'active' => $wgTitle->isSpecial( 'Userlogin' ) );</source>és helyette tegyük be ezt:<source lang="php"> $personal_urls['login'] = array();</source>[[Kategória:HOWTO]]

Navigációs menü