- Rozpoczynamy od otwarcia Pulpitu nawigacyjnego Bloggera dostępnego na stronie http://blogger.com. Następnie klikamy na link Układ (patrz zrzut poniżej). Spowoduje to otwarcie się nowej strony z możliwością zmian wyglądu bloga.
- W celu przejścia do edycji kodu, klikamy na zakładkę
. Następnie zaznaczamy opcję
i po przeładowaniu strony w obszarze
w polu tekstowym w kodzie odnajdujemy (skrót Ctrl + F) wyrażenie
<span class='date-header'><data:post.dateHeader/></span>
Zamiast <data:post.dateHeader/> wpisujemy wywołanie funkcji w JavaScript, którą za chwilę dodamy. Ma ono postać:
<SCRIPT> poprawna_data(‘<data:post.dateHeader/>’);</SCRIPT> - Następnie przechodzimy na początek kodu szablonu i po wierszu:
<title><data:blog.pageTitle/></title>
wklejamy wspomnianą funkcję JS: - Na koniec, w celu zatwierdzenia nowej konfiguracji klikamy na przycisk
. To jednak nie wszystko musimy jeszcze zmienić format daty, tak żeby funkcja split(‘.’) mogła zadziałać. W tym celu przechodzimy na główną zakładkę
i następnie na
.
- Na nowo otwartej stronie odnajdujemy listę
i wybieramy z niej sposób wyświetlania daty z kropkami, na przykład dla daty 5 września 2009, będzie to 09.05.2009. Na koniec w celu zapisania nowej konfiguracji klikamy na przycisk
. Od teraz miesiące na blogu będą podawane we właściwym przypadku.
1: <SCRIPT type='text/javascript'>
2: //<![CDATA[
3: /*********************************/
4: /* http://poradnik.webatech.pl */
5: /*********************************/
6: function poprawna_data(date) {
7: var data = date.split('.');
8: var dzien = data[1], miesiac = data[0], rok = data[2];
9: var miesiace = ['0','stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'];
10: document.write(dzien+" "+miesiace[miesiac]+" "+rok);
11: }12: //]]>
13: </SCRIPT>

To chyba zależy od szablonu, bo np. w moim Poradniku nie ma tego pierwszego wyrażenia.
Wimmer
7 września 2009 07:40Być może dlatego generalnie trzeba odszukać data:post.dateHeader
volfen
7 września 2009 08:33Nie do końca to poprawnie działa. Jeżeli piszemy więcej niż jeden post dziennie to data pojawi się tylko przy pierwszym wpisie, w pozostałych jej nie będzie (tak działa data:post.dateHeader). Można to obejść korzystając z data:post.timestamp. Niestety w opcjach formatowania nie znajdziemy formatu z kropką (jest co prawda d.m.r ale w formacie 23.9.09). Dla mnie 09 jest nie do przejścia ;) Więc możemy zmodyfikować skrypt podając zamiast kropki znak / i w formatowaniu timestampa ustawić 9/23/2009. Wtedy wszystko działa poprawnie i dla każdego posta. Swoją drogą dzięki za wpis szukałem tego z godzinę w sieci :)
Devon
23 września 2009 18:24@Devon ciekawy pomysł i rzeczywiście godny uwagi. Jeśli ktoś publikuje więcej niż jeden wpis dziennie, to powinien zastosować twój patch:)
co do szukania godzinę, to niestety poradnik nie jest jeszcze często pokazywany w Google, ale może za jakiś czas się to zmieni.
volfen
23 września 2009 18:32@Devon: nie wiem czy to się da jakoś obejść, bo chyba drugi post publikowany tego dnia nie ma po prostu ustawionego dateHeader.
volfen
28 września 2009 13:02@volfen: dlatego proponowałem zamiast dateHeader używać zawsze timestamp, on jest zawsze.
Devon
30 września 2009 19:36@Devon: w nim też jest data? bo jak go dodałem to był tylko czas
volfen
30 września 2009 20:05@volfen: musisz wejść do opcji formatowania bloga (ustawienia/formatowanie/format znacznika czasu) i tam wybrać odpowiadający Ci format. Wtedy możesz zastosować drobną modyfikację Twojego skryptu tak jak opisałem w poprzednim komentarzu :)
Devon
30 września 2009 20:11@Devon: sprytnie, w sumie nie wiedziałem, że jest taki wybór, pomyślałem że czas to czas.
volfen
30 września 2009 23:05