czwartek, 17 Czerwiec 2010
Pętla (loop) jest podstawą częścią kodu każdego szablonu Wordpressa (theme) i realizuje wyświetlanie wpisów (posts), stron, archiwów. Znajduje się ona w pliku index.php szablonu. Poniższy “kod” wyjaśnia działanie pętli.
<h1>Kod przed pętlą wordpressa.</h1>
<p>Normalny kod, który zawsze się wyświetla tyko raz niezależnie czy są wpisy czy nie.</p>
<?php if (have_posts()) : ?>
<h2>Jeśli są posty do wyświetlenia</h2>
<p>Ten kod wykona się tylko raz przed rozpoczęciem listowania postów.</p>
<?php while (have_posts()) : the_post(); ?> // początek pętli
// wyświetlanie kolejnych postów
<h3><a href="<?php the_permalink() ?>">Tytul: <?php the_title(); ?></a></h3>
<p>Wszystko to co umieszczamy przed treścią wpisu.</p>
<?php the_content(); ?> // ta funkcja wyswietla zawartosc kazdego wpisu
<h4>Wpis #<?php the_ID(); ?>, napisany jest przez <?php the_author(); ?></h4>
<p>Wszystko to co umieszczamy po treści wpisu.</p>
<?php endwhile; ?> // koniec pętli
<h5>Jeśli są posty do wyświetlenia.</h5>
<p>Ten kod wykona się tylko raz po zakończeniu listowania postów.</p>
<?php else : ?>
<p>Jeśli nie ma wpisów</p>
<p>To się wyświetli zamiast wpisów. Wyświetli się raz.</p>
<?php endif; ?>
<h6>Kod za pętlą wordpressa.</h6>
<p>Normalny kod, który zawsze się wyświetla tyko raz niezależnie czy są wpisy czy nie.</p>
kategoria Wordpress |
brak komentarzy »
czwartek, 08 Kwiecień 2010
Po aktualizacji Wordpressa znajomego okazało się, że zniknęło mnóstwo zdjęć wstawianych przez NextGen Gallery. Dokładniej; jeśli zdjęcia występowały we wpisie w bezpośrednim sąsiedztwie to wyświetlało się pierwsze zdjęcie, natomiast zamiast kolejnych wyświetlał się shortcode np: [singlepic id=123 ...].
Okazało się, że wystarczy edytować post, wstawić spację pomiędzy poszczególnymi shortcode i wszystko wraca do właściwego porządku.
No dobrze, tylko że znajomy ma ponad 2000 wpisów i ponad 4400 zdjęć.
Musiałem więc znaleźć jakieś kompleksowe rozwiązanie. Jedyne rozwiązanie to modyfikacja danych w bazie. Poprzez phpMyAdmina w okienku zapytania SQL wstawiłem kod:
UPDATE wp_posts SET post_content = REPLACE(post_content, '][', '] [');
Ten kod znajdzie każde pole "post_content" w tabeli wp_posts i zamieni "][" na "] [" czyli faktycznie doda spację pomiędzy znacznikami shortcode.
kategoria Wordpress |
brak komentarzy »
środa, 07 Kwiecień 2010
PoEdit jest wygodnym edytorem plików .po, czyli plików lokalizacyjnych, ułatwiającym tłumaczenie mędzy innymi motywów (themes) i wtyczek (plugins) Wordpressa.
Instalacja poEdit w Ubuntu, jak zresztą każdego programu, jest prosta jak konstrukcja cepa. W programie Synaptic w wyszukiwarce wpisujemy “poedit” i potwierdzamy chęć instalacji. Po chwili program jest zainstalowany. PoEdit jest również dostępny pod Windowsa. Podczas pierwszego uruchomienia podajemy nazwisko i e-mail; informacje te będą umieszczane w naszych tłumaczeniach. Program obsługuje utf-8 i ma sprawdzanie pisowni.
Motywy i pluginy umożliwiające tłumaczenie używają specjalnych funkcji; __(); lub _e(); np:
<?php the_content(__('Read the rest of this entry »', 'kubrick')); ?>
<?php _e('Not Found', 'kubrick'); ?>
Pierwszy argument to tekst do tłumaczenia, drugi argument zwykle nazwa motywu lub plugina jest opcjonarny ale wskazane jest stosowanie go.
- Zakładam, że mamy folder z pluginem.
- Odwieramy poEdit i Plik/NowyKatalog
- W okienku Ustawienia w zakładce “Informacje o projekcie” wpisujemy “Nazwę projektu” zwykle taką jak tłumaczony plugin. Następnie ustawiamy kodowanie na UTF-8 i formułę liczby mnogiej dla języka polskiego: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);
- W zakładce “Ścieżki” wpisujemy “Ścieżkę podstawową” np: /home/username/Pulpit/Plugin. Dalej w “Ścieżkach” przez “Dodaj nowy element” wstawiamy “.” co oznacza, że program ma szukać plików do tłumaczenia w katalogu podanym w ścieżce podstawowej.
- W zakładce “Słowa kluczowe” przez “Dodaj nowy element” wstawiamy “__” i “_e”.
- Klikamy OK i zapisujemy plik .po w katalogu pluginu jako nazwapluginu-pl_PL.po
- Plik .po tworzy listę fraz do przetłumaczenia na podstawie funkcji __() i _e
- Teraz możemy tłumaczyć. Klikamy na frazę. W dole ekranu mamy dwa pola: z tekstem oryginalnym i drugie gdzie wpisujemu własne tłumaczenie. Czasami wygodnie jest frazę przekopiować i później modyfikować – skrót Alt+C
- Po wykonaniu tłumaczenia zapisujemy efekty naszej pracy. Podczas zapisywania pliku .po jest on równocześnie konwertowany do postaci binarnej czyli pliku .mo. Plik ten jest właściwym plikiem likalizacyjnym wykorzystywanym przez plugin za pomocą funkcji load_plugin_textdomain()
<?php load_theme_textdomain('nazwamotywu');?>
<?php load_plugin_textdomain( 'nazwapluginu', false, dirname( plugin_basename( __FILE__ ) ) ); ?>
ale to już zmartwienie autorów pluginów.
kategoria Bez kategorii |
brak komentarzy »
sobota, 13 Marzec 2010
Obrazek można dodać korzystając ze standardowej funkcji, przycisku “Dodaj obrazek” w panelu edycji wpisu. Możemy w takim przypadku dodać obrazek z komputera lub z biblioteki mediów tj. obrazków wcześniej wysłanych na serwer. Obrazek możemy wstawić w oryginalnym rozmiarze lub w kilku predefiniowanych rozmiarach (można je zmienić w Ustawienia/Media). Nową funkcją WP 2.9 jest możliwość edycji obrazków np. kadrowania czy skalowania. Obrazek możemy też wstawić jako miniaturkę (rozmiar definiowany w Ustawienia/Media), która linkuje do oryginalnego rozmiaru.
Ponaddto Wordpress ma fajną funkcjonalność pozwalającą na wyświetlenie prostej galerii we wpisie lub na stronie.
Znacznik [gallery] pozwala na wyświetlenie miniaturek obrazków które zostały wysłane na serwer podczas edytowania wpisu.
- Podczas edycji wpisu wysyłamy obrazki z komputera przy użyciu przycisku “Dodaj obrazek”
- Zapisujemy ale nie wstawiamy ich do wpisu lub na stronę
- Robimy tak z kolejnymi obrazkami
- W treści wpisu dodajemy znacznik [
gallery] w miejscu gdzie ma pojawić się galeria
Znacznik ma kilka opcji np:
[gallery columns="4"] – w ilu kolumnach ma się wyświetlać galeria
[gallery id="123"] – wyświetlenie konkretnego obrazka nawet z innego wpisu
[gallery size="medium"] – rozmiar obrazków, domyślnie jest miniaturka
[gallery link="file"] – link do pliku obrazka
[gallery include="10,15"] – pokazuje obrazki o wskazanym id
[gallery exclude="25,28"] – pokazuje galerię z wyłączeniem zdjęć o wskazanych id
CSS galerii możemy zmodyfikować w pliku wp-includes/media.php
Więcej nt. shortcode [gallery] w dokumentacji Wordpressa.
Natknąłem się tu na problem z floatowaniem. Szerokość elementów galerii ustalana jest dynamicznie tj. cała dostępna szerokość jest dzielona przez ilość kolumn. Powoduje to przerzucanie ostatniego elementu do następnego wiersza. Poradziłem sobie z tym trochę hardcorowo, w pliku wp-includes/media.php na linii 733 zmieniłem floor(100/$columns) na floor(90/$columns), w ten sposób zostawiłem wystarczającą ilość miejsca. Wiem, że jest to rozwiązanie mocno nieeleganckie, ale działa. W przyszłości może pomyślę nad czymś odpowiedniejszym.
Brakowało mi tu jeszcze efektu lightboxa. Oczywiście w Wordpressie możemy doinstalować jakąś wypasioną wtyczkę Lightbox. Ja szukałem jednak czegoś lekkiego i prostego. Przymierzałem się do jQuery lightBox plugin według instrukcji Wpninja lub jQuery LightBoxClone. W końcu zdecydowałem się na Slimbox 2.
Dla pojedynczych obrazków atrybut rel="lightbox" adtywujący efekt lightboxa dodajemy ręcznie podczas edycji postów. Natomiast dla galerii tworzonych znacznikiem [gallery] atrybut rel="lightbox-dowolnanazwagalerii" dodajemy przez:
<script type="text/javascript">
jQuery(document).ready(function($) {
$('#gallery-1 a').attr('rel', 'lightbox-galeria1');
$('#gallery-2 a').attr('rel', 'lightbox-galeria2');
})
</script>
Kod umieszczamy w sekcji <head> przed linkiem włączającym slimbox2.js
Można również skorzystać z wtyczki
NextGen Gallery, która bardziej kompleksowo załatwi wstawianie obrazków. Opis instalacji i spolszczenie
tutaj.
TODO: ikona wpisu
kategoria Wordpress |
brak komentarzy »
środa, 24 Luty 2010
Kliknij, żeby powiększyć.

kategoria Znalezione w sieci |
brak komentarzy »
środa, 03 Luty 2010
Ktoś powiedział: “ludzie dzielą się na tych, którzy robią backup i na tych którzy będą robić backup”.
Eksport i import bazy wordpressa można wykonać różnymi sposobami i różnymi narzędziami. Podstawowym problemem jest kodowanie polskich znaków.
Znalazłem fajne narzędzie do robienia backupu bazy. Jest to MySQLDumper.
Instalacja: ściągamy skrypt, rozpakowujemy. W moim przypadku przy użyciu gFTP (ubuntu) na serwerze tworzymy folder o dowolnej nazwie np. “mysqldumper”. W tym katalogu tworzymy folder “work”, a w nim kolejne foldery; “backup”, “structure”, “log”, “config”. Wszystkim tym folderom nadajemy prawa 777. W zasadzie skrypt podczas instalacji sam tworzy foldery ale na wielu serwerach mogą wystąpić problemy z prawami dostępu więc lepiej zrobić foldery ręcznie. Do folderu “mysqldumper” przesyłamy pliki skryptu, plikowi config.php nadajemy prawa 777. Teraz w pasku adresu przeglądarki wpisujemy http://www.mojadomena.pl/mysqldumper/install.php . Krótka instalacja; wybór języka i podanie danych do połączenia z bazą i możemy robić backup. Nie będę tego opisywał bo graficzny interfejs jest bardzo prosty. Skrypt machnął mi bazę o wielkości 20MB (tyle miał plik .sql po rozpakowaniu) w 11 sekund do katalogu “backup” skąd ściągnąłem go na dysk za pomocą gFTP. Otwieranie takiego pliku to też wyzwanie dla edytorów ale linuxowy Geany radzi sobie z tym bez problemu. Kodowanie znaków było poprawne.
kategoria Wordpress |
brak komentarzy »
sobota, 30 Styczeń 2010
Logujemy się na panel administracyjny konta hostingowego i uruchamiamy phpMyAdmin. Przechodzimy do bazy naszego Wordpressa i do tabeli xx_users. Teraz w wierszu użytkownika któremu chcemy zmienić hasło edytujemy pole z hasłem. Hasło jest zapisane w postaci zahaszowanej (32-znakowy ciąg liczb i liter).
Wydawałoby się że należy wygenerować hasz nowego hasła. W Ubuntu w terminalu wpisujemy:
echo -n “nowehasło” | md5sum
Otrzymany ciąg znaków wkopiowujemy w pole hasła i logujemy się nowym hasłem do panelu administracyjnego Wordpressa. Niestety! Wordpress 2.9 tego nie łyka.
Na szczęście jest inne rozwiązanie, nawet prostsze. W polu hasła wpisujemy nowe hasło otwartym tekstem i wybieramy z listy rozwijanej funkcję MD5. Akceptujemy i Wordpress sam zahaszuje nam hasło.
Teraz logujemy się skutecznie.
kategoria Wordpress |
brak komentarzy »
niedziela, 29 Listopad 2009
Sprawdzenie uprawnień do pliku/katalogu uzyskamy komendą:
ls -l
Otrzymamy informacje o plikach i katalogach w katalogu bieżącym, np:
drwxr-xr-x 3 wiesiek wiesiek 4096 2009-11-09 17:56 ilustracje
-rwxr--r-- 1 wiesiek wiesiek 77716 2009-11-21 19:56 karta-03.pdf
Pierwsza kolumna zawiera definicję nadanych uprawnień. Jest to 10 znaków, w których pierwszy charakteryzuje rodzaj pliku (przykładowo: (-) zwykły plik, (d) katalog, (l) dowiązanie symboliczne). Kolejne dziewięć znaków należy podzielić na trzy grupy po trzy znaki odpowiadające za uprawnienia właściciela,grupy oraz pozostałych użytkowników. Każda z tych grup to ciąg trzech znaków oznaczających po kolei uprawnienia odczytu (read), zapisu (write) i wykonania (execute). Dla nadanego prawa występuje odpowiednia literka, przy jego braku myślnik (-).
O ile interpretacja praw dla plików jest oczywista o tyle dla katalogów prawa oznaczają:
r – prawo czytania umożliwia przeszukiwanie zawartości katalogu, jest interpretowane jako prawo wypisywania zawartości (komenda ls),
w – prawo pisania daje możliwość modyfikowania zawartości katalogów umożliwia dodawanie nowych oraz usuwanie dotychczasowych plików z katalogu,
x – prawo wykonywania w stosunku do katalogu pozwala na dostęp do plików zapisanych w nim oraz na wejście do danego katalogu uczynienie go katalogiem bieżącym (polecenie: cd katalog).
Prawa dostępu mogą być zapisywane w postaci literowej j.w. lub numerycznej. Ilustracja przedstawia zamienność zapisu.

Zmiany praw dostępu możemy wygodnie dokonywać przy pomocy programu Midnight Commander – mc z konsoli / Menu Plik / cmod
lub programu FTP np gFTP / PPM / zmień atrybuty.
Pod Windowsem niezastąpiony jest Total Commander.
kategoria Ubuntu |
brak komentarzy »
piątek, 20 Listopad 2009
Dropbox jest dyskiem sieciowym z usługą synchronizacji pozwalającym na prostą i wygodną synchronizację i udostępnianie plików i folderów pomiędzy wieloma komputerami i użytkownikami.
Zapisując się do usługi Dropbox z tego linka dostaniemy obaj dodatkowe 250MB miejsca – razem więc będziesz miał do dyspozycji 2,25GB przestrzeni dyskowej. Następnie polecając swoim znajomym, będziesz powiększał własną powierzchnię na dysku sieciowym. Rejestracja sprowadza się do podania maila i hasła.
Dropbox jest usługą bezpłatną. Dostępny jest na platformie Windows, Linux, MacOS.
Po instalacji klienta (download z https://www.dropbox.com/downloading) utworzony zostanie folder Dropbox, który będzie synchronizowany z kontem Dropbox. Pliki wrzucane do tego folderu zostaną automatycznie wysłane na zasób sieciowy usługi. Od tego momentu będą dostępne na dowolnym komputerze gdzie zainstalujemy klienta Dropbox w podobnym folderze. Możemy też mieć dostęp przez stronę https://www.dropbox.com (rzecz jasna po zalogowaniu się). Wszystkie modyfikacje w tym folderze, dzięki synchronizacji, również są uwidaczniane na pozostałych komputerach.
W folderze Dropbox znajdują się 2 podkatalogi: public i photos. Możemy tam wrzucać pliki udostępniane (każdy posiada swój link publiczny, który możemy wysłać mailem czy przez GG). W folderze photos możemy tworzyć foldery z galeriami i udostępniać je w podobny sposób.
Każdy inny folder możemy również udostępniać podając mail osoby mającej uzyskać dostęp.
Korzystam z Dropboxa synchronizując pliki miedzy pracą a domem i jestem z tej usługi bardzo zadowolony. Jest to wygodniejsze niż bujanie się z pendrivem. Polecam.
kategoria Ubuntu |
brak komentarzy »
piątek, 06 Listopad 2009
W Linuksie możliwe jest tworzenie specjalnego typu pliku w celu odwołania się za ich pomocą do innych plików. Jest to przydatne np w sytuacji, gdy ścieżki dostępu do plików lub katalogów, z których często korzystamy, są bardzo zagnieżdżone.
Pliki te to tzw. dowiązania. Rozróżnia się dwa rodzaje dowiązań:
- dowiązania symboliczne,
- dowiązania twarde.
Oba rodzaje dowiązań tworzy się za pomocą polecenia ln.
ln nazwa_pliku nazwa_dowiązania_do_pliku
tworzy dowiązanie twarde
ln -s nazwa_pliku nazwa_dowiązania_do_pliku
tworzy dowiązanie symboliczne.
Dowiązanie twarde i oryginalna nazwa są w pełni równoprawne. Odnoszą się do tego samego i-węzła (faktycznie pliku). Dowiązanie twarde jest poprostu inną nazwą tego samego pliku. Inaczej; plik może występować pod wieloma różnymi nazwami wskazującymi na te same dane. Usunięcie jednej z tych nazw nie powoduje jeszcze usunięcia pliku. Jest on usuwany dopiero z chwilą usunięcia ostatniej nazwy. Usunięcie pliku i ponowne utworzenie pliku o tej samej nazwie i lokalizacji nie przywraca połączenia z dowiązaniem. Dowiązanie twarde można tworzyć tylko do plików (nie do katalogów) i w obrębie jednego systemu plików (partycji).
Dowiązanie symboliczne wskazuje na inny plik przez nazwę. Usunięcie oryginalnego pliku powoduje że dowiązanie prowadzi donikąd. Ponowne utworzenie pliku w tej samej lokalizacji i o tej samej nazwie przywraca połączenie. Dowiązanie symboliczne może wskazywać zarówno na plik jak i na folder. Ponadto mogą one być w innym systemie plików, na innej partycji.
Dla większości operacji (otwarcie, odczyt, zapis) system działa na oryginalnym pliku/katalogu. W przypadku usuwania, usuwa dowiązanie symboliczne nie oryginalny plik.
kategoria Ubuntu |
brak komentarzy »