Журнал LinuxFormat - перейти на главную

LXF137:School1

Материал из Linuxformat
Перейти к: навигация, поиск
Школа LXF Обмен опытом и передовые идеи по использованию свободного ПО в образовании

Содержание

MediaWiki: Школь­ная эн­цик­ло­пе­дия

Хо­ти­те сде­лать эн­цик­ло­пе­дию дос­то­при­ме­ча­тель­но­стей род­ной шко­лы, ка­та­лог для книг или он­лайн-хра­ни­ли­ще до­маш­них за­да­ний? Алек­сандр Ка­зан­цев по­ка­жет, как за­ста­вить MediaWiki стать вам по­мощ­ни­ков в этом де­ле.

В школь­ной прак­ти­ке учи­тель ин­фор­ма­ти­ки часто стал­ки­ва­ет­ся с за­да­ча­ми соз­дания элек­трон­ных ре­сур­сов че­го-ли­бо, да и про­грам­ма тре­бу­ет обу­чать на­вы­кам соз­дания ка­та­ло­ги­зи­ро­ван­ных ре­сур­сов, сбо­ра и оформ­ления ин­фор­ма­ции в элек­трон­ном ви­де.

Конеч­но, мож­но все сде­лать в про­стом фай­ле элек­трон­ной таб­ли­цы, вы­ло­жить его на сайт и ска­зать, что это и есть тре­буе­мый элек­трон­ный ре­сурс (а до­ка­жи­те об­рат­ное), но все-та­ки луч­ше об­ра­тить­ся к спе­циа­ли­зи­ро­ван­ным про­грамм­ным сред­ствам. Что­бы по­нять, ка­кие про­грам­мы нам под­хо­дят, сфор­му­ли­ру­ем тре­бо­вания, предъ­яв­ляе­мые к эн­цик­ло­пе­ди­ям, ка­та­ло­гам и про­чим по­хо­жим «хранили­щам»:

  • ПО долж­но обес­пе­чи­вать струк­ту­ри­за­цию кон­тен­та.
  • Кон­тент дол­жен до­бав­лять­ся по ме­ре необ­хо­ди­мо­сти.
  • Кон­тент дол­жен лег­ко ре­ор­ганизо­вы­вать­ся.
  • ПО долж­но обес­пе­чи­вать гиб­кое раз­граничение досту­па и со­вме­ст­ную ра­бо­ту над ре­сур­сом.

99 % зна­ко­мых с ком­пь­ю­те­ром сра­зу восклик­нут: «Да мы же де­ла­ем Ви­ки­пе­дию!». Да, эта сво­бод­ная эн­цик­ло­пе­дия от­ве­ча­ет всем на­шим тре­бо­ваниям, но это го­то­вый пор­тал, а не про­грам­ма. Мы же да­лее рас­смот­рим ее «дви­жок», обес­пе­чи­ваю­щий дан­ную функ­цио­наль­ность, и ме­то­ды его улуч­шения и до­полнения. Мно­гие, на­вер­ное, уже по­ня­ли: речь идет о MediaWiki (http://www.mediawiki.org). Ес­ли вы еще не знае­те, что это та­кое, мо­же­те про­чи­тать об этом чуть ниже. Мы не бу­дем рас­смат­ри­вать в этой ста­тье про­цесс ра­бо­ты в MediaWiki, а оста­но­вим­ся толь­ко на ин­те­рес­ных и по­лез­ных мо­мен­тах, не из­вест­ных ши­ро­ко­му кру­гу чи­та­те­лей.

MediaWiki: Крат­кая справ­ка

Как напи­са­но на сай­те про­ек­та: «MediaWiki – это сво­бод­ное сер­вер­ное про­грамм­ное обес­пе­чение, рас­про­стра­няе­мое на усло­ви­ях ли­цен­зии GNU General Public License (GPL). Оно рас­счи­та­но на обес­пе­чение ра­бо­ты web-сай­та, спо­соб­но­го от­ве­чать на мил­лио­ны об­ра­щений в день. MediaWiki – чрез­вы­чай­но мощ­ная, мас­шта­би­руе­мая, функ­цио­наль­но раз­ви­тая про­грамм­ная реа­ли­за­ция ви­ки, ис­поль­зую­щая PHP для об­ра­бот­ки и ото­бра­жения ин­фор­ма­ции, хра­ня­щей­ся в вы­де­лен­ной ба­зе дан­ных MySQL.

На страницах MediaWiki ис­поль­зу­ет­ся спе­ци­аль­ный фор­мат – ви­ки­текст, по­это­му их с лег­ко­стью мо­гут ре­дак­ти­ро­вать поль­зо­ва­те­ли, незна­ко­мые с XHTML и CSS.

Когда поль­зо­ва­тель ре­дак­ти­ру­ет страницу, MediaWiki запи­сы­ва­ет ее в ба­зу дан­ных, не сти­рая пре­ды­ду­щие ва­ри­ан­ты страницы. Это по­зво­ля­ет лег­ко ан­ну­ли­ро­вать из­менения в слу­ча­ях ван­да­лиз­ма или спа­ма. MediaWiki так­же об­ра­ба­ты­ва­ет изо­бра­жения и фай­лы муль­ти­ме­диа, хранимые в фай­ло­вой систе­ме. Для боль­ших сай­тов ви­ки с мно­же­ством поль­зо­ва­те­лей, MediaWiki под­дер­жи­ва­ет кэ­ши­ро­вание и лег­ко сты­ку­ет­ся с про­кси-сер­ве­ром Squid. MediaWiki иде­аль­но под­хо­дит для соз­дания сай­тов спра­воч­ной и эн­цик­ло­пе­ди­че­ской на­прав­лен­но­сти, но с по­мо­щью рас­ши­рений вы мо­же­те сде­лать и но­во­ст­ной пор­тал, и да­же лич­ный блог.»

Про­стей­шая эн­цик­ло­пе­дия

Уста­но­ви­те MediaWiki, как напи­са­но во вклад­ке Шаг за ша­гом или восполь­зуй­тесь одним из го­то­вых ре­шений (Школь­ным сер­ве­ром или ком­плек­том ути­лит AdminSSH для Edumandriva). По­сле то­го, как MediaWiki встре­тит вас при­гла­шением на­чать ра­бо­ту, ука­жи­те поль­зо­ва­те­ля, от имени ко­то­ро­го вы бу­де­те на­пол­нять страницы. По умол­чанию лю­бой за­ре­ги­ст­ри­ро­ван­ный поль­зо­ва­тель мо­жет из­ме­нять лю­бые страницы, но вы мо­же­те за­щи­тить их от из­менения, за­дав со­от­вет­ствую­щие оп­ции. Так­же вы мо­же­те отнести поль­зо­ва­те­лей к оп­ре­де­лен­ным груп­пам и гиб­ко за­дать их пра­ва по от­но­шению к страницам. Но помните: ви­ки бы­ла при­ду­ма­на как сво­бод­ный ин­ст­ру­мент для со­вме­ст­ной ра­бо­ты, и гиб­кий ме­ханизм про­смот­ра из­менений и их от­ка­тов по­зво­лит вам не до­пустить ван­да­лиз­ма на страницах.

Зай­ди­те под вновь соз­дан­ным поль­зо­ва­те­лем, на­жми­те Прав­ка на за­глав­ной странице, уда­ли­те ее со­дер­жи­мое и вве­ди­те текст при­мер­но та­ко­го со­дер­жания:

== Школь­ная эн­цик­ло­пе­дия МОУ СОШ №4 ==
Это школь­ная эн­цик­ло­пе­дия
[[Файл:encilopedia.jpg]]
* [[О род­ной шко­ле]]
* [[О род­ном го­ро­де]]

Здесь ис­поль­зу­ет­ся ви­ки-раз­мет­ка. Под­робнее о ней мож­но про­честь на сайте http://www.mediawiki.org/wiki/Help:Formatting/ru, но мы вкрат­це раз­бе­рем, что оз­на­ча­ет напи­сан­ное. == по­ка­зы­ва­ет, что это за­го­ло­вок вто­ро­го уров­ня. Ре­ко­мен­ду­ет­ся не ис­поль­зо­вать за­го­лов­ки пер­во­го уров­ня, а на­чи­нать имен­но с двух зна­ков «рав­но». Ес­ли вы об­ра­ми­те за­го­ло­вок вот так: ===, то это бу­дет оз­на­чать за­го­ло­вок третье­го уров­ня. При на­ли­чии пре­ды­ду­ще­го за­го­лов­ка бо­лее вы­со­ко­го уров­ня вы по­лу­чи­те ав­то­ма­ти­че­ски вло­жен­ную за­го­ло­воч­ную струк­ту­ру страниц, и при доста­точ­но боль­шом объ­е­ме кон­тен­та MediaWiki сфор­ми­ру­ет для вас со­дер­жи­мое. Все, что на­хо­дит­ся внут­ри ско­бок [[]] – это внут­ренние ссыл­ки на кон­тент. В на­шем слу­чае это ссыл­ка на ри­су­нок и на две страницы ви­ки. * пе­ред страница­ми обо­зна­ча­ет мар­ки­ро­ван­ный спи­сок.

Со­храните страницу – вы уви­ди­те, что ри­су­нок ссыла­ет­ся на ка­кой-то файл; щелк­нув по этой ссыл­ке, вы смо­же­те за­гру­зить его. Ес­ли ок­но за­груз­ки фай­ла не вы­во­дит­ся, убе­ди­тесь, что в фай­ле LocalSettings.php раском­мен­ти­ро­ва­на стро­ка

$wgEnableUploads = true;

и ди­рек­то­рия image в MediaWiki доступ­на на запись. Ес­ли же вы на­жме­те, к при­ме­ру, на О род­ной шко­ле, MediaWiki пред­ло­жит вам соз­дать страницу с та­ким именем.

Вы мо­же­те гиб­ко на­стро­ить струк­ту­ру ва­шей эн­цик­ло­пе­дии, ис­поль­зуя ка­те­го­рии, объ­е­ди­няю­щие од­но­тип­ные ви­ды страниц. Что­бы ука­зать ка­те­го­рию (или ка­те­го­рии), вам нуж­но по­ста­вить в кон­це страницы запись ви­да

[[Ка­те­го­рия: Ис­то­рия]]

и в са­мый пер­вый раз соз­дать страницу ка­те­го­рии как обыкновен­ную ви­ки-страницу.

Те­перь, раз­местив эту стро­ку на осталь­ных страницах, ко­то­рые вы хо­ти­те отнести к ка­те­го­рии «Исто­рия», вы по­лу­чи­те струк­ту­ру, по­зво­ляю­щую бы­ст­ро най­ти од­но­тип­ные ма­те­риа­лы.

Вы так­же мо­же­те раз­местить ссыл­ку на страницу ка­те­го­рии, на­брав сле­дую­щую раз­мет­ку

[http://localhost/mediawiki/index.php/Ка­те­го­рия: Ис­то­рия Все стра­ни­цы ка­те­го­рии Ис­то­рия]

Та­ким об­ра­зом, в оди­ноч­ных скоб­ках раз­ме­ща­ют­ся внешние ссыл­ки.

Мож­но мно­го го­во­рить о ви­ки-раз­мет­ке, но в Ин­тернете по дан­ной те­ме есть доста­точ­но ин­фор­ма­ции, и оста­нав­ли­вать­ся под­роб­но на этом во­про­се мы не бу­дем. Уве­рен, что соз­дание про­стей­шей эн­цик­ло­пе­дии вы те­перь смо­же­те осво­ить са­мо­стоя­тель­но.

Сде­ла­ем кра­си­во

Про­стой тек­сто­вый вид раз­де­лов эн­цик­ло­пе­дии хоть и пред­став­ля­ет со­бой верх минима­лиз­ма, но не отличается осо­бой эсте­ти­чностью. Что­бы улуч­шить ото­бра­жение ка­те­го­рий и ста­тей ва­шей эн­цик­ло­пе­дии (а так­же уве­ли­чить функ­цио­наль­ность MediaWiki), мож­но восполь­зо­вать­ся мно­же­ством до­полнений и рас­ши­рений, ко­то­рые доступ­ны на странице http://www.mediawiki.org/wiki/Extension_Matrix/AllExtensions. Мо­ди­фи­ци­рован­ные вер­сии рас­ши­рений, о ко­то­рых пой­дет речь ниже, вы так­же смо­же­те най­ти на LXFDVD.

Да­вай­те пред­ста­вим на­шу эн­цик­ло­пе­дию в та­ком же ви­де, как моя Энц­ки­п­ло­пе­дия ПО на сай­те http://wiki.edumandriva.ru (http://edumandriva.ru/wiki/index.php/Эн­цик­ло­пе­дия_ПО). Для это­го мы бу­дем ис­поль­зо­вать мо­ди­фи­ци­ро­ван­ное рас­ши­рение NiceCategoryList, в ко­то­ром я до­ба­вил воз­мож­ность за­дания кар­ти­нок для ка­те­го­рий. Для его уста­нов­ки по­мести­те файл NiceCategoryList.php в ди­рек­то­рию extentsions ва­шей уста­нов­лен­ной MediaWiki и до­бавь­те в конец кон­фи­гу­ра­ци­он­но­го фай­ла LocalSettings.php (помните, что он на­хо­дит­ся в корне MediaWiki, обыч­но это /var/www/mediawiki/) сле­дую­щие стро­ки:

#Кра­си­вый спи­сок ка­те­го­рий
require_once(“$IP/extensions/NiceCategoryList.php”);

За­тем да­вай­те от­кро­ем ви­ки в брау­зе­ре и по­про­бу­ем мо­ди­фи­ци­ро­вать наш пре­ды­ду­щий при­мер. Для это­го вна­ча­ле на­до про­ду­мать струк­ту­ру. Пред­по­ло­жим, что на­ша эн­цик­ло­пе­дия бу­дет та­кой:

LXF137 110 2.jpg Толь­ко бо­ко­вая и верх­няя па­нель вы­да­ют, что это MediaWiki.

LXF137 110 3.jpg Ин­фор­ма­ция о ва­шем род­ном го­ро­де с Ви­ки­пе­дии — с HTMLets это воз­мож­но!

LXF137 110 1.jpg

То есть на за­глав­ной странице мы хо­тим уви­деть две ка­те­го­рии – «О род­ной шко­ле» и «О род­ном го­ро­де», ка­ж­дая из ко­то­рых со­дер­жит оп­ре­де­лен­ные страницы. Для это­го нуж­но соз­дать недостаю­щие ка­те­го­рии. Про­ще все­го это сде­лать, на­брав в брау­зе­ре стро­ки ви­да http://localhost/mediawiki/index.php/Ка­те­го­рия:О род­ной шко­ле и http://localhost/mediawiki/index.php/Ка­те­го­рия:О род­ном го­ро­де. По за­про­су соз­дай­те страницы ка­те­го­рий, со­дер­жи­мое ко­то­рых бу­дет сле­дую­щим

[[Ка­те­го­рия:Эн­цик­ло­пе­дия]]

В на­шем слу­чае Эн­цик­ло­пе­дия бу­дет корневой ка­те­го­ри­ей, от­но­си­тель­но ко­то­рой мы бу­дем стро­ить на­ше де­ре­во. Для это­го по­сле ри­сун­ка эн­цик­ло­пе­дии по­мести­те сле­дую­щую стро­ку

<ncl style=compact maxdepth=2 headstart=2 showcats=1 showarts=1 sort=0>Category:Эн­цик­ло­пе­дия</ncl>

Не за­бы­вай­те, что об­нов­ление струк­ту­ры про­ис­хо­дит толь­ко по­сле вы­полнения дей­ствия Прав­ка > Запи­сать из­менения для дан­ной страницы и что страница ка­те­го­рии Эн­цик­ло­пе­дия то­же долж­на быть соз­да­на.

Те­перь за­дай­те изо­бра­жения для ка­те­го­рий. Они ав­то­ма­ти­че­ски бу­дут маш­та­би­ро­ва­ны до раз­ме­ра 48 × 48 пик­се­лей, но вы мо­же­те из­менить его, по­пра­вив строч­ку

$output .= “[[Файл:”.$title.”.png|48 px]] “ . “<big>\n” . $link . “</big><br>\n”;

в рас­ши­ре­нии.

По­сле это­го мож­но за­дать необ­хо­ди­мые страницы. Для это­го так­же по­оче­ред­но от­кры­вай­те в брау­зе­ре стро­ки ви­да http://localhost/mediawiki/index.php/Имя_страницы, не за­бы­вая раз­ме­щать на страницах нуж­ную ка­те­го­рию, к ко­то­рой они от­но­сят­ся.

Ес­ли у вас MediaWiki вер­сии 1.16 или стар­ше, то дан­ное рас­ши­рение мо­жет не ра­бо­тать. Что­бы из­бе­жать это­го, вам нуж­но уста­но­вить ис­прав­лен­ную вер­сию NiceCategoryList.php.1.16, уб­рав в кон­це все до рас­ши­рения .php.

Све­дения из Ви­ки­пе­дии

Ва­ша эн­цик­ло­пе­дия уже име­ет струк­ту­ру, но по­ка не име­ет на­полнения. Или, до­пустим, вы хо­ти­те иметь ак­ту­аль­ное на­полнение, но у вас нет вре­мени его под­дер­жи­вать. С дру­гой сто­ро­ны, в Ви­ки­пе­дии ин­фор­ма­ция доста­точ­но ак­ту­аль­на, и по­че­му бы нам не восполь­зо­вать­ся ею?

И опять нам на по­мощь при­дут рас­ши­рения, а так­же тех­но­ло­гия AJAX (а имен­но биб­лио­те­ка Prototype), ко­то­рая по­зво­лит вы­вести со­дер­жи­мое без об­нов­ления страницы.

Ал­го­ритм на­ших дей­ствий та­кой: мы про­сим внешний PHP-скрипт «вы­та­щить» для нас нуж­ную страницу со стать­ей из Ви­ки­пе­дии (по умол­чанию в ка­че­стве за­го­лов­ка ста­тьи бе­рет­ся за­го­ло­вок ви­ки-страницы, но опять же вы са­ми мо­же­те по­пра­вить код «под се­бя»). Скрипт ска­чи­ва­ет нуж­ную страницу и вы­ре­за­ет от­ту­да толь­ко со­дер­жи­мое, от­но­ся­щее­ся к тре­буе­мой пред­мет­ной об­ласти. Да­лее это со­дер­жи­мое от­да­ет­ся на­зад на страницу ви­ки и ото­бра­жа­ет­ся на ней с по­мо­щью AJAX-биб­лио­те­ки.

Итак, при­сту­пим. Нам по­на­до­бят­ся: рас­ши­рение HTMLets (http://www.mediawiki.org/wiki/Extension:HTMLets); его вы долж­ны ска­чать для ва­шей вер­сии ви­ки (на LXFDVD мы так­же по­мести­ли его для вер­сий 0.15 и 0.16) и раз­ахи­ви­ро­вать в ди­рек­то­рию extensions, а так­же скрип­ты wikipedia.php и call_wiki.html, ко­то­рые нуж­но по­местить в ди­рек­то­рию htmlets в ва­шей уста­нов­ке ви­ки. Затем ско­пи­руй­те в ко­рень ва­шей ви­ки файл биб­лио­те­ки prototype.js: http://prototypejs.org/assets/2009/8/31/prototype.js. После этого от­ре­дак­ти­руй­те LocalSettings.php, до­ба­вив в него сле­дую­щие стро­ки:

$wgUseAjax = true;
# За­щи­щен­ный html, ко­то­рый по­зво­ля­ет вы­клю­чить RawHTML на­строй­ку
require_once( “$IP/extensions/HTMLets/HTMLets.php” );
$wgHTMLetsDirectory = “$IP/htmlets”;
$wgHTMLetsHack = “yes”;

Что­бы про­ве­рить, пра­виль­но ли вы все сде­ла­ли, соз­дай­те страницу с на­званием MediaWiki и по­смот­ри­те ре­зуль­тат по­сле ее со­хранения. По­сле это­го вам нуж­но бу­дет уста­но­вить код, вы­зы­ваю­щий внешние скрип­ты – для это­го нам и по­тре­бо­ва­лось рас­ши­рение HTMLets. Вы­бе­ри­те прав­ку толь­ко что соз­дан­ной страницы MediaWiki и до­бавь­те сле­дую­щую стро­ку:

<htmlet nocache=”yes”>call_wiki</htmlet><div id=”wiki_wiki”>
</div>

В мо­ем слу­чае ниче­го не про­изош­ло, и по­иск по странице об­су­ж­дения рас­ши­рения по­ка­зал на­ли­чие про­блем с PHP вер­сий 5.3.x. По­это­му, ес­ли у вас бу­дет та­кая же про­бле­ма, уста­но­ви­те вер­сию из trunk (она то­же есть на диске). Так­же про­верь­те, что в фай­ле htmlets/call_wiki.html пра­виль­но ука­за­ны пу­ти до биб­лио­те­ки prototype.js и скрип­та wikipedia.php.

Те­перь вы мо­же­те соз­да­вать страницы с со­дер­жи­мым, ко­то­рое бу­дет за­би­рать­ся с Ви­ки­пе­дии и ото­бра­жать­ся у вас, оста­ва­ясь все­гда све­жим и ак­ту­аль­ным. Что­бы по­нять, ка­кие име­на нуж­но да­вать страницам, доста­точ­но зай­ти на http://ru.wikipedia.org и вы­полнить по­иск по ин­те­ре­сую­ще­му вас тер­ми­ну. На­звание страницы ста­тьи и бу­дет необ­хо­ди­мым вам на­званием ви­кистраницы. Не за­бы­вай­те так­же от­но­сить дан­ные страницы к тре­буе­мым ка­те­го­ри­ям.

Твер­дая ко­пия

Хранить все дан­ные эн­цик­ло­пе­дии в элек­трон­ном ви­де хо­ро­шо, но иметь на ру­ках ее бу­маж­ную вер­сию еще луч­ше – вдруг в ва­шу шко­лу на­гря­нут «вы­со­кие» гости, и вы за­хо­ти­те пре­поднести им сюр­приз? Ду­мае­те, это нераз­ре­ши­мая за­да­ча, и вам при­дет­ся со­хра­нять все страницы, фор­ма­ти­ро­вать текст в ре­дак­то­ре, го­то­вить ма­кет и вы­во­дить его на пе­чать? Все опять же го­раз­до про­ще.

Фонд Wikimedia, ко­то­ро­му при­над­ле­жит Ви­ки­пе­дия, еще в про­шлом го­ду объ­я­вил инициа­ти­ву WikiPress, по­зво­ляю­щую лю­бо­му че­ло­ве­ку со­брать и рас­пе­ча­тать в ви­де книги ин­те­ре­сую­щие его ста­тьи. Са­мое глав­ное, что код про­грамм­но­го обес­пе­чения дан­ной инициа­ти­вы сво­бо­ден, и на его осно­ве бы­ло сде­ла­но рас­ши­рение Collection (http://www.mediawiki.org/wiki/Extension:Collection), по­зво­ляю­щее реа­ли­зо­вать по­хо­жую функ­цио­нальность у се­бя на сай­те. Да­вай­те по­смот­рим, как мож­но сде­лать та­кую ин­те­рес­ную и по­лез­ную вещь в на­шей эн­цик­ло­пе­дии и за­ра­бо­тать на этом выс­ший балл при про­вер­ке шко­лы.

Пер­вым де­лом вам, как обыч­но, нуж­но ска­чать рас­ши­рение под ва­шу вер­сию MediaWiki. Для это­го на странице рас­ши­рения вы­бе­ри­те Download snapshot в пра­вой таб­ли­це, а за­тем ука­жи­те вер­сию MediaWiki, ко­то­рая у вас уста­нов­ле­на. По ана­ло­гии с HTMLets, мы по­ло­жи­ли на диск вер­сии рас­ши­рения для 1.15, 1.16 и све­жий снимок вер­сии из ре­по­зи­то­рия раз­ра­бот­чи­ков (trunk) на слу­чай, ес­ли у вас не за­ра­бо­та­ют пре­ды­ду­щие. Да­лее рас­па­куй­те ар­хив с рас­ши­рением в ди­рек­то­рию extensions в MediaWiki и вклю­чи­те его, до­ба­вив сле­дую­щие стро­ки в LocalSettings.php:

#До­бав­ле­ние воз­мож­но­сти пе­ча­ти
require_once(“$IP/extensions/Collection/Collection.php”);
$wgCollectionFormats = array(
   'rl' => 'PDF',
   'odf' => 'ODT',
);
$wgCollectionNavPopups = true;

Ес­ли вы все сде­ла­ли пра­виль­но, в бо­ко­вой панели поя­вит­ся но­вый раз­дел – Пе­чать/экс­порт. Те­перь вы мо­же­те со­хранить лю­бую страницу в при­год­ном для пе­ча­ти ви­де или со­брать соб­ствен­ную книгу – для это­го вы­бе­ри­те пункт Соз­дать книгу > За­пустить книж­но­го масте­ра. По­сле это­го вам бу­дет пред­ло­же­но со­брать книгу из су­ще­ствую­щих ви­ки-страниц. Про­сто от­кры­вай­те нуж­ные вам ма­те­риа­лы и до­бав­ляй­те их в книгу. Когда за­кон­чи­те, про­сто на­жми­те По­ка­зать книгу и по­строй­те тре­буе­мую вам струк­ту­ру.

У это­го ре­шения есть три основ­ных ми­ну­са: невоз­мож­ность вли­ять на фор­мат вы­во­да (воз­мож­ность-то есть, но для это­го нуж­но ис­поль­зо­вать не уда­лен­ные сер­ве­ра Pediapress, а свои соб­ствен­ные, уста­но­вив и на­стро­ив со­от­вет­ствую­щие биб­лио­те­ки), невоз­мож­ность вы­во­да ин­фор­ма­ции, внедрен­ной из­вне (как в слу­чае с Ви­ки­пе­ди­ей, ко­то­рый мы рас­смат­ри­ва­ли вы­ше), и необ­хо­ди­мость иметь ре­аль­ный ад­рес в се­ти Ин­тернет (свой сайт или IP) при ис­поль­зо­вании сер­ве­ра Pediapress. При фор­ми­ро­вании страниц для книги все это сто­ит учи­ты­вать.

LXF137 111 1.jpg Вот так бу­дет вы­гля­деть ва­ша кни­га в на­пе­ча­тан­ном ви­де.

С дру­гой сто­ро­ны, за­став­лять по­се­ти­те­лей на­би­рать боль­шое ко­ли­че­ство страниц – не са­мая луч­шая за­тея. Мож­но ли сделать так, что­бы поль­зо­ва­тель мог ска­чать го­то­вую книгу? Да, возмож­но. Да­вай­те на на­шем при­ме­ре по­ка­жем, как из­готовить та­кое «из­дание».

Пер­вым де­лом нам на­до соз­дать шаб­лон для фор­ми­ро­вания книг. Для это­го на­бе­ри­те в ад­рес­ной стро­ке брау­зе­ра http://localhost/mediawiki/index.php/Шаб­лон:Со­хранен­ная_книга и соз­дай­те шаб­лон сле­дую­ще­го со­дер­жания:

{| cellspacing=”0” cellpadding=”2” border=”0” align=”center”
style=”background-color: rgb(255, 255, 204);”
|-
| [[Image:{{{1}}}]]
| <div align=”center”>Эта кни­га мо­жет быть лег­ко до­ра­бо­та­на в раз­мет­ке Ви­Ки, а за­тем со­хра­не­на и пред­став­ле­на в элек­трон­ном ви­де (PDF или ODT) или рас­пе­ча­та­на. </div>
|}
<br>
 <div align=”center”>[[Image:Download.png]]
‘’’[{{fullurl:Special:Book/load_collection/|colltitle={{FULLPAGENAMEE}}}} Ска­чать эту кни­гу]’’’ | [[Image:Pdf.png]]
‘’’[{{fullurl:Special:Book/render_collection/|colltitle={{FULLPAGENAMEE}}&amp;amp;writer=rl}} PDF ]’’’ | [[Image:Odf.png]]
‘’’[{{fullurl:Special:Book/render_collection/|colltitle={{FULLPAGENAMEE}}&amp;amp;writer=odf}} ODT ]’’’ </div>

Фай­лы изо­бра­же­ний Download.png, Pdf.png, Odf.png, и Кни­га.png вы так­же мо­же­те най­ти на на­шем дис­ке.

По­сле это­го до­бавь­те на За­глав­ную стра­ни­цу ссыл­ку на стра­ни­цу на­шей кни­ги

[[Эн­цик­ло­пе­дия в бу­маж­ном ви­де]]

и соз­дай­те эту стра­ни­цу, раз­мес­тив в ней сле­дую­щее со­дер­жи­мое

{{со­хра­нён­ная кни­га|Кни­га.png}}
== Эн­цик­ло­пе­дия ==
=== Сде­ла­на в МОУ СОШ №4 ===
;Гла­ва 1. О род­ной шко­ле
:[[Ис­то­рия_шко­лы|1.1 Как ро­ж­да­лась шко­ла]]
:[[Пре­по­да­ва­те­ли|1.2 На­ши луч­шие пре­по­да­ва­те­ли]]
;Гла­ва 2. О род­ном го­ро­де
:[[Ис­то­рия го­ро­да|2.1 Уезд­ный го­род Гла­зов]]
:[[Дос­то­при­ме­ча­тель­но­сти|2.2 Ар­хи­тек­тур­ные па­мят­ни­ки Гла­зо­ва]]

где файл Кни­га.png вы мо­же­те за­ме­нить на лю­бой по ва­ше­му же­ла­нию.

Раз­бе­рем струк­ту­ру соз­да­вае­мой книги. ; в на­ча­ле по­ка­зы­ва­ет гла­вы пер­во­го уров­ня струк­ту­ры книги, а по­сле двое­то­чия идут ссыл­ки на ви­ки-страницы, ко­то­рые вы хо­ти­те по­местить в свою книгу. Вы мо­же­те пе­ре­име­но­вать гла­вы, дав бо­лее по­нят­ные на­звания или соз­дав свою соб­ствен­ную струк­ту­ру из­дания. Для это­го дай­те но­вое на­звание по­сле сим­во­ла | в ссыл­ке. За­го­ло­вок и под­за­го­ло­вок книги об­рам­ля­ют­ся сим­во­ла­ми == и ===.

Ес­ли вы все сде­ла­ли пра­виль­но, то на­жа­тие на ссыл­ку Ска­чать эту книгу по­зво­лит вам по­лу­чить ее твер­дую ко­пию (а ес­ли есть день­ги, то и за­ка­зать уже на­пе­ча­тан­ную). Вы так­же мо­же­те по­смот­реть, как бу­дет вы­гля­деть ва­ша кни­га че­рез пред­про­смотр на сай­те Pediapress, и сра­зу по­де­лить­ся с друзь­я­ми.

Шаг за шагом: Ус­та­нав­ли­ва­ем MediaWiki

Шаг 1

  • 1 До­бу­дем web-сер­вер
Для это­го вы мо­же­те вос­поль­зо­вать­ся го­то­вым сер­вер­ным ди­ст­ри­бу­ти­вом, где он уже раз­вер­нут, или най­ти па­кет ви­да task-lamp.

Шаг 2

  • 2 Най­дем MediaWiki
Ска­чай­те све­жую вер­сию MediaWiki с сай­та или вос­поль­зуй­тесь па­ке­том в ва­шем ре­по­зи­то­рии и рас­па­куй­те со­дер­жи­мое в /var/www/.

Шаг 3

  • 3 Соз­да­дим ба­зу
Ска­чай­те (или ус­та­но­ви­те) PhpMyAdmin, за­тем рас­па­куй­те его в /var/www. Зай­ди­те в брау­зе­ре на http://localhost/phpmyadmin и соз­дай­те ба­зу wikidb.

Шаг 4

  • 4 Ус­та­но­вим MediaWiki
От­крой­те в брау­зе­ре http://localhost/mediawiki и прой­ди­те про­цесс ус­та­нов­ки. Не за­будь­те пе­ре­мес­тить файл /var/www/mediawiki/config/LocalSettings.php в /var/www/mediawiki.
Персональные инструменты
купить
подписаться
Яндекс.Метрика