Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Ładowanie języka w aplikacji


Przejdź do rozwiązania Rozwiązane przez DawPi,

Rekomendowane odpowiedzi

Opublikowano

Witam, piszę pewną aplikację no i gdzieś mam błąd.
modules_public..

class public_APLIKACJA_view_display extends ipsCommand
{
	/**
	 * Class entry point
	 *
	 * @param	object		Registry reference
	 * @return	@e void		[Outputs to screen/redirects]
	 */
	public function doExecute( ipsRegistry $registry )
	{
		/* Make object */
		$this->registry   =  $registry;
		$this->DB         =  $this->registry->DB();
		$this->settings   =& $this->registry->fetchSettings();
		$this->request    =& $this->registry->fetchRequest();
		$this->lang       =  $this->registry->getClass('class_localization');
		$this->member     =  $this->registry->member();
		$this->memberData =& $this->registry->member()->fetchMemberData();
		$this->cache      =  $this->registry->cache();
		$this->caches     =& $this->registry->cache()->fetchCaches();
		
		$this->registry->class_localization->loadLanguageFile( array( 'public_APLIKACJA' ), 'APLIKACJA' );
		
		$this->registry->output->setTitle( $this->lang->words['page_title'] . ' - ' . ipsRegistry::$settings['board_name'] );
		$this->registry->output->addNavigation( $this->lang->words['page_title'], '' );		
		$this->output = 'TEST';
	
		$this->registry->output->addContent( $this->output );
		$this->registry->output->sendOutput();
	}
}

 

- Dev mode on

- Dodałem paczkę w języku angielskim:

  • Aplikacja: APLIKACJA
  • Nazwa paczki: public_APLIKACJA
  • Klucz: page_title
  • Domyślny tekst: Tytuł

 

Po wejściu w ?app=APLIKACJA, wszystko wyswietla się ok, ale nie wczytuje mi frazy tlumaczenia..

Nie wiem czy ta linijka jest dobra:

		$this->registry->class_localization->loadLanguageFile( array( 'public_APLIKACJA' ), 'APLIKACJA' );

 

Oraz poźniej chcę wyświetlić frazę w tym miejscu, ale zwraca mi pusty wynik:

                $this->registry->output->setTitle( $this->lang->words['page_title'] . ' - ' . ipsRegistry::$settings['board_name'] );

 

Gdzie leży błąd?

  • Manager
Opublikowano

Wywal to:

/* Make object */
$this->registry = $registry;
$this->DB = $this->registry->DB();
$this->settings =& $this->registry->fetchSettings();
$this->request =& $this->registry->fetchRequest();
$this->lang = $this->registry->getClass('class_localization');
$this->member = $this->registry->member();
$this->memberData =& $this->registry->member()->fetchMemberData();
$this->cache = $this->registry->cache();
$this->caches =& $this->registry->cache()->fetchCaches();

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Wyświetla, ale nie moją paczkę tlumaczenia, tylko wszystko...

 

Kawałek treści:

[long]Array
(
[acp_sessiontimeout] => Sesja dostępu do panelu administracyjnego
wygasła. Odśwież stronę i spróbuj ponownie.
[active_users_detail] => %s użytkowników, %s gości, %s
anonimowych
[add] => Dodaj
[add_a_tag] => Dodaj tag
[add_friend] => Dodaj jako znajomego
[admin_cp] => Panel administracyjny
[advanced] => Zaawansowane
[advanced_search] => Zaawansowane wyszukiwanie
[advanved_help] => Zaawansowane wyszukiwanie
[ajax_incomplete_data] => Niekompletne dane
[ajax_nohtml_return] => Wystąpił błąd HTML podczas ładowania
strony
[ajax_topicstate] => Zmieniono status tematu (otwarto/zamknięto) z
widoku forum
[ajax_topictitle] => Zmieniono tytuł tematu z '%s' na '%s' z
widoku forum
[alter_warn_level] => Zmień poziom ostrzeżenia
[anon_name] => Nie dodawaj mnie do listy aktywnych użytkowników
[ap_error] => Uwaga
[ap_np_msg] => Nie posiadasz uprawnień do wykonania tej akcji
[archive_fail_engine] => Silnik archiwum nie przeszedł testu
[attach_notallowed] => Wysyłanie plików nie jest dozwolone
[attach_unlimited] => nieograniczonego
[attempt_login] => Przejdź do logowania
[au_posting] => Pisze od %s
[au_reading] => Ostatnio czytał %s
[back_to] => Wróć do
[back_to_top] => Góra
[bbcode_img_alt] => Dołączona grafika
[bbc_date_cite] => Od %s:
[bbc_email] => Odnośnik do e-maila
[bbc_external_link] => Zewnętrzny odnośnik
[bbc_full_cite] => Użytkownik %s dnia %s napisał
[bbc_member_bbcode] => Profil użytkownika
[bbc_name_cite] => %s napisał:
[bbc_quote] => Cytat
[bbc_quote_collapsed] => (wyświetl)
[bi_markread] => Oznacz forum jako przeczytane
[board_offline] => Forum wyłączone
[board_offline_desc] => Forum jest aktualnie wyłączone
[board_offline_title] => Wiadomość forum
[board_rules] => Regulamin
[by_ucfirst] => Przez
[cancel] => Anuluj
[captcah_new] => Nie rozróżniasz znaków na obrazku? Kliknij, aby
wygenerować nowe
[captcha_string_enter] => Wpisz widoczne znaki
[change_theme] => Zmień styl
[check_all] => Zaznacz wszystkie
[click_login] => Kliknij, aby zalogować się
[click_toggle] => Kliknij, aby przełączyć
[client_area] => Panel klienta
[complete_antispam_task] => Antyspam: wykonaj zadanie
[compose_new] => Nowa rozmowa
[configure_notifications] => Ustawienia powiadomień
[contentcache_cleaned] => Wyczyszczono cache - usunięto %s
elementów
[context_search_forum] => To forum
[context_search_title] => Przeszukaj
[context_search_topic] => Ten temat
[cp_tool_tip] => Edycja ustawień takich jak awatar, sygnatura i
inne
[discussion] => Forum
[dont_wait] => lub kliknij tutaj jeśli nie chcesz czekać
[D_0] => Niedziela
[D_1] => Poniedziałek
[D_2] => Wtorek
[D_3] => Środa
[D_4] => Czwartek
[D_5] => Piątek
[D_6] => Sobota
[D_7] => Niedziela
[email_address] => Adres e-mail
[email_no_unsubscribe] => Nie możesz się wypisać. Skontaktuj się z
administratorem.
[email_unsubscribe] => Wypisz się
[email_unsubscribed] => Zostałeś pomyślnie wypisany
[emoticons_template_title] => Emotikony
[enter_name_and_email] => Nazwa użytkownika lub e-mail:
[enter_name_and_pass] => Podaj nazwę użytkownika i hasło
[enter_pass] => Hasło
[enter_useremail] => Adres e-mail:
[enter_username] => Nazwa użytkownika
[errorcleaningcontentcache] => Wystąpił błąd podczas czyszczenia
cache zawartości
[err_expl] => Następująca treść posta została zapisana. W pewnych
przypadkach użycie przycisku Wstecz w przeglądarkach spowoduje stratę
wpisanych treści. Możesz skopiować całą poniższą treść i użyć jej
ponownie.
[err_select] => Wybierz wszystko
[err_title] => Treść posta została zapisana!
[exec_stats] => Statystyki realizacji
[fave_and] => i
[fave_formatted_many] => %s obserwują to
[fave_formatted_me] => Obserwujesz to
[fave_formatted_more] => %s i %s innych osób obserwują to
[fave_formatted_one] => %s obserwuje to
[fave_formatted_one_more] => %s i 1 inna osoba obserwują to
[fave_moi] => ty
[fave_tt_off] => %s i otrzymuj powiadomienia o zmianach
[fave_tt_on] => %s i przestań otrzymywać powiadomienia
[find_more_tags] => Znajdź inną zawartość z tagiem '%s'
[find_posts] => Znajdź posty
[find_topics] => Zn[/long]

 

Przy próbie znalezienia page_title czyli klucza danej frazy, nie widzę go tam.

Exportowałem XML aplikacji, importowalem i nic :/ ale plik public_aplikacja_language_pack.xml w katalogu aplikacji/xml się tworzy z treścią:

<?xml version="1.0" encoding="utf-8"?>
<languageexport>
  <languagegroup>
    <lang>
      <word_app>APLIKACJA</word_app>
      <word_pack>public_APLIKACJA</word_pack>
      <word_key>page_title</word_key>
      <word_default>TYTUL</word_default>
    </lang>
  </languagegroup>
</languageexport>

Niby wszystko ok.

Opublikowano (edytowane)

Zrobiłem tak,
klikam English (USA) -> Dodaj frazę.
Tam wpisałem:
 

  • Aplikacja: (KS34) APLIKACJA
  • Nazwa paczki: public_APLIKACJA
  • Klucz: page_title
  • Domyślny tekst: Tytuł

 

No i dodałem, potem widzę po wejściu w English (USA), jest zakładka (KS34) APLIKACJA a tam paczka public_APLIKACJA a w niej fraza page_title w której wpisane mam Tytuł.

 

Potem po wejsciu w Tłumaczenia na dole jest opcja Eksport plików tłumaczenia do katalogów aplikacji przy dev mode on.

Eksportowałem, importowałem i nic. Mam nadzieje ze te kroki ktore wykonalem są dobrymi, pierwszy raz jestem na tym etapie, i korzystam z dokumentacji ipb.

Edytowane przez PawelS
Opublikowano

Mam Angielski i Polski, z czego Polski jest domyslny. Przy dev mode utworzyłem katalog lang_cache/master_lang do którego wrzuciłem pliki polskiego tlumaczenia.

Opublikowano

Właśnie sprawdzałem i nic, ale zmieniłem domyslny jezyk na English i dziala :lol2:

Teraz nachodzi mi pytanie.. Jak mam pisać tlumaczenie i reszte? Dev ma być 1 czy 0, przy którym bedzie lepiej?

Opublikowano (edytowane)

Teraz też już tak mam, dobre rozwiązanie :)

Podgląd na styl mam chociaż.

Jeżeli już rozmawiamy o jezyku w aplikacji to mam ostatnie pytanko.

Zauważyłem że można zrobić tak:

$this->registry->class_localization->loadLanguageFile( array( 'public_APLIKACJA' ), 'APLIKACJA' );

i tak

$this->registry->class_localization->loadLanguageFile( array( 'public_APLIKACJA' ) );

które rozwiązanie lepsze? I co to w ogóle daje? Wiem że wczytuje plik jezyka, ale chodzi mi o końcówke tej linii.

Edytowane przez PawelS
Opublikowano

Wiem że tak moge zrobic :P, ale to z public_xxx to paczka tlumaczenia, a mi chodzi o tym co jest po tym wyrazie. Nie wymuszam znania pojęcia tego, lecz chciałbym po prostu wiedzieć.

Obejdzie się mam nadzieje też bez tej wiedzy to można zamknąć jak to ważne nie jest.

Dzięki za pomoc MISTRZU :hooray:

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.