DokuWiki

It's better when it's simple

Narzędzia użytkownika

Narzędzia witryny


pl:namespaces

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Poprzednia rewizja po obu stronachPoprzednia wersja
Nowa wersja
Poprzednia wersja
pl:namespaces [2008-12-17 02:16] – removed achpl:namespaces [2024-04-12 16:00] (aktualna) – przywrócono poprzednią wersję (2023-03-29 11:53) 2a01:11cf:4009:f300:34e0:34fd:15a0:c858
Linia 1: Linia 1:
 +====== Przestrzenie nazw ======
  
 +Przestrzeń nazw jest podobna do folderu, podczas gdy nazwy stron wykazują podobieństwo do plików.
 +Możesz użyć przestrzeni nazw by porządkować strony w [[DokuWiki]]. Nazwy przestrzeni nazw mają takie same ograniczenia jak [[pagename|nazwy stron]].
 +
 +Domyślnie instalacja DokuWiki zawiera wbudowaną przestrzeń nazw: //wiki//.
 +
 +===== Tworzenie przestrzeni nazw =====
 +Nie musisz tworzyć przestrzeni nazw oddzielnie; po prostu utwórz strony z dwukropkami w [[pagename|nazwie strony]]. 
 +Słowo po ostatnim dwukropku stanie się stroną, podczas gdy pozostałe słowa będą przestrzeniami nazw. 
 +Wszystkie przestrzenie nazw użyte w nazwie strony, które nie istniały przed tworzeniem strony, zostaną utworzone automatycznie przez DokuWiki.
 +
 +(Strony w DokuWiki są tworzone tak, jak we wszystkich innych wiki. Po prostu utwórz link do nieistniejącej strony, wejdź w ten link, po czym wciśnij Utwórz stronę.) Patrz [[.:page#create_a_page|Dodawanie stron]].
 +
 +^Przykłady:^^
 +|example\\ .example\\ .:example|odnosi sie do strony "example" w **aktualnej** przestrzeni nazw.|
 +|:example|odnosi się do strony "example" w **głównej** (root) przestrzeni nazw.|
 +|..example\\ ..:example\\ .:..:example|odnosi się do strony "example" w **nadrzędnej** przestrzeni nazw.|
 +|wiki:example|odnosi się do strony "example" w przestrzeni nazw "wiki". przestrzeń nazw "wiki" położona jest **wewnątrz głównej** przestrzeni nazw.|
 +|ns1:ns2:example\\ :ns1:ns2:example|odnosi się do strony "example" w przestrzeni nazw ns2. Przestrzeń nazw ns2 leży wewnątrz przestrzeni nazw ns1; przestrzeń nazw ns1 leży **wewnątrz głównej** przestrzeni nazw.|
 +|.ns1:ns2:example\\ .:ns1:ns2:example|odnosi się do strony "example" w przestrzeni nazw ns2. Przestrzeń nazw ns2 leży wewnątrz przestrzeni nazw ns1; przestrzeń nazw ns1 leży **wewnątrz aktualnej** przestrzeni nazw.|
 +|..ns1:ns2:example\\ ..:ns1:ns2:example|odnosi się do strony "example" w przestrzeni nazw ns2. Przestrzeń nazw ns2 leży wewnątrz przestrzeni nazw ns1; przestrzeń nazw ns1 leży **nadrzędnej dla aktualnej** przestrzeni nazw (tj. zarówno ns1 jak i aktualna  przestrzeń nazw leżą wewnątrz tej samej nadrzędnej przestrzeni nazw, gdziekolwiek względem głównej przestrzeni nazw ta przestrzeń by się nie znajdowała).|
 +|.ns1:ns2:\\ .:ns1:ns2:|odnosi się do strony "start" w przestrzeni nazw ns2. Przestrzeń nazw ns2 leży wewnątrz przestrzeni nazw ns1; przestrzeń nazw ns1 leży w aktualnej przestrzeni nazw.\\ \\ (Domyślna strona może nazywać się inaczej niż "start" wedle ustawień parametru konfiguracji [[.config:startpage]].)|
 +
 +Pułapka: Składnia dla względnych i bezwzględnych linków wewnętrznych nie jest unikalna
 +i złożona względem konwencji nazewniczej folderów i plików.
 +Ścieżka jest bezwzględna wtedy i tylko wtedy, gdy zaczyna się od "/".
 +Linki są bezwzględne wtedy i tylko wtedy, gdy mają na początku ":" lub
 +nie mają przedrostka, ale mają wewnątrz (lub na końcu) ":"
 +Linki względne do aktualnej przestrzeni nazw mogą zaczynać się od "." albo ".:" (".." albo "..:" dla nadrzędnej przestrzeni nazw).
 +
 +===== Usuwanie przestrzeni nazw =====
 +
 +Gdy wszystkie strony wewnątrz przestrzeni nazw są usunięte, sama przestrzeń nazw logicznie przestaje istnieć. DokuWiki często usuwa również pusty już folder. 
 +
 +===== Jak zmienić nazwę przestrzeni nazw? =====
 +
 +==== Sposób ręczny ====
 +
 +Aby przemianować ręcznie przestrzeń nazw musisz:
 +  * Zmienić nazwę folderów reprezentujących przestrzeń nazw w:
 +    * ''data/pages''
 +    * ''data/media'' (jeśli istnieje)
 +  * Zmienić metadane dla przestrzeni nazw wewnątrz ''data/meta''
 +  * Usunąć poprzednie dane dla przestrzeni nazw w ''data/attic'' (lub przenieś je również, jeśli chcesz zachować poprzednie wersje)
 +  
 +dla przykładu na serwerze Unix mógłbyś:
 +  * ''mv /dokuwiki_base/data/pages/old_namespace /dokuwiki_base/data/pages/new_namespace''
 +  * ''mv /dokuwiki_base/data/media/old_namespace /dokuwiki_base/data/media/new_namespace''
 +  * ''rm -Rf /dokuwiki_base/data/meta/old_namespace''
 +  * ''rm -Rf /dokuwiki_base/data/attic/old_namespace''
 +
 +Zauważ, że wyrażenia ''old_namespace'' i ''new_namespace'' mogą wymagać kodowania jeśli nie jest używany zestaw znaków Latin (czyli np. grecki, rosyjski, itp).
 +
 +  * Popraw (edytując je) wszystkie linki do stron z //przeniesionej// przestrzeni nazw (możesz odnaleźć je przed przeniesieniem przestrzeni nazw przeglądając [[backlinks|linki wsteczne]] wszystkich stron.
 +
 +  * Przejrzyj każdą ze stron w nowej przestrzeni nazw. Utworzy to brakujące informacje indeksujące i metadane dla stron wewnątrz przeniesionej przestrzeni nazw.
 +
 +Jednak pozostaje wciąż wiele śmieci wokoło. Na przykład w ''data/changes.log'', różne pliki w pamięci podręcznej (w tym pliki ''.idx''  itp). Jeśli to możliwe mógłbyś po prostu zacząć od ''stanu pustego'' w poniższy sposób (ponownie pod Unixem) ale ostrzegamy, że będzie to oznaczać utratę wszystkich informacji historycznych (np. ''recent changes''):
 +
 +  * ''cat /dev/null > /dokuwiki_base/data/changes.log''
 +  * ''rm -Rf /dokuwiki_base/data/attic/*''
 +  * ''rm -Rf /dokuwiki_base/data/cache/?''
 +  * ''rm -Rf /dokuwiki_base/data/cache/*.idx''
 +  * ''rm -Rf /dokuwiki_base/data/cache/purgefile''
 +  * Browse each and every page of your Wiki.
 +
 +WYŁĄCZENIE ODPOWIEDZIALNOŚCI: Rozumiem, że jest to zawiłe (i być może coś zapomniałem/pomieszałem kilka rzeczy, które należy również wykonać). W sumie to wrzód na tyłku. Możesz także użyć kilku [[plugins|wtyczek]], przy pomocy których można (od)tworzyć indeks wyszukiwania całej wiki, usunąć całą pamięć podręczną i/lub poprzednimi wersjami wiki unikając w ten sposób robienia tego ręcznie.
 + 
 +==== Sposób z użyciem wtyczki ====
 +
 +Możesz skorzystać z wtyczki [[plugin:PageMove]] osób trzecich by przenieść każdą ze stron z poprzedniej do nowej przestrzeni nazw. Przejrzyj dokumentację by przekonać się, czy wtyczka spełnia twoje wymagania. //**Uwaga** - wtyczka PageMove nie działa i jest obecnie przestarzała.//
 +
 +===== Domyślne przekierowanie do przestrzeni nazw =====
 +
 +Możliwe jest przekierowanie do pliku domyślnego w przestrzeni nazw przez zakończenie linku
 +dwukropkiem: %%[[foo:bar:]]%%. To, do której strony zostanie przekierowany link zależy od
 +istnienia plików o określonych nazwach. Dla linku %%[[foo:bar:]]%% sprawdzone zostaną
 +następujące strony:
 +
 +<code>
 +foo:bar:$conf['start']
 +foo:bar:bar
 +foo:bar
 +</code>
 +
 +Strony sprawdzane są w tej kolejności i która strona zostanie najpierw odnaleziona pierwsza, 
 +ta zostanie podłączona. 

Wszystkie treści w tym wiki, którym nie przyporządkowano licencji, podlegają licencji: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki