16.2.07

Biuletyn witryny internetowej

Biuletyn (lub, jak chcą niektórzy, newsletter) jest jednym z lepszych sposobów przyciągania internautów na stałe do witryny. Osoby, które subskrybują biuletyn, dostają informacje na temat nowych artykułów czy wydarzeń związanych z witryną. Jest to więc świetne narzędzie.
A jednak coraz trudniej go używać. W związku z rozplenieniem się plagi spamowania firmy hostingowe coraz bardziej ograniczają możliwość wysyłania maili z poziomu oprogramowania witryny, zwłaszcza dla tańszych kont*.

I tu w sukurs przychodzi OpenOffice.org. Można bowiem zachować na serwerze system listy prenumeratorów biuletynu (z możliwościami potwierdzania i anulowania subskrypcji), a wysyłkę maili organizować z własnego komputera. OpenOffice.org znacznie to ułatwi.
W tym celu należy przygotować system korespondencji seryjnej:

1. skonfigurować bazę danych prenumeratorów;
2. użyć Kreatora korespondencji seryjnej i wprowadzić dane konta e-mail, które będzie używane do wysyłki.

1. Konfiguracja bazy danych
Większość systemów biuletynów (np. phplist czy też acajoom lub yanc dla Joomli/Mambo) ma opcję eksportu listy subskrybentów. Najpierw zaś należy użyć tej opcji i zapisać na dysku, najlepiej w oddzielnym katalogu z łatwą do zapamiętania nazwą, plik z informacjami o subskrybentach. Najlepiej w formacie CSV (czyli prosty plik tekstowy, w którym pola oddziela się przecinkiem lub tabulatorem itd.). Załóżmy więc, że jest to plik CSV.
Należy go zapisać w jakimś folderze, a następnie otworzyć za pomocą programu Calc. Pojawi się okienko, w którym będzie podgląd pliku CSV i propozycje parametrów (cudzysłowy, tabulatory itd.). Najczęściej Calc zgaduje poprawnie; różnie mu idzie z kodowaniem, ale najczęściej to nie ma wielkiego znaczenia. Ja tam zwykle po prostu klikam OK. Otwiera się lista prenumeratorów w arkuszu kalkulacyjnym. Wybieram Plik > Zapisz jako i zapisuję w formacie OpenDocument (.ods).
Teraz trzeba skonfigurować bazę danych - Plik > Nowy:


Pojawi się wówczas drugie okno kreatora, Ustaw połączenie z arkuszami kalkulacyjnymi.


Należy kliknąć przycisk Przeglądaj i wybrać katalog, w którym zapisaliśmy plik.
Pojawi się trzecie okno kreatora: Zadecyduj o sposobie postępowania po zapisaniu pliku bazy danych.

Domyślnie zaznaczona jest opcja Tak, zarejestruj bazę danych i jej nie zmieniamy. Warto też zgodzić się na ustawienie Otwórz bazę danych do edycji, aby sprawdzić, czy wszystkie ustawienia zostały wybrane poprawnie. Klikamy przycisk Utwórz. Pojawi się okno dialogowe, w którym należy wybrać nazwę pliku bazy danych. Wpisujemy nazwę, np. Baza_prenumeratorów.
Następnie otworzy się baza danych. Klikamy ikonę Tabelę i sprawdzamy, czy w obszarze Tabele widnieją tabele o nazwach takich, jak nazwa pliku prenumeratorów (w moim wypadku jest kilka takich list).

Jeśli wszystko się zgadza, w tabelach są adresy mailowe prenumeratorów itd., to znaczy, że baza została skonfigurowana poprawnie. Można przejść do następnego kroku. Najtrudniejsze za nami.

Dla odważnych: jeśli w bazie prenumeratorów są oznaczenia, czy ktoś chce otrzymywać maile w formacie HTML lub tekstowym, można utworzyć kwerendy. Kreator korespondencji seryjnej potrafi skorzystać z takich kwerend.

2. Kreator korespondencji seryjnej
Otwieramy dokument tekstowy (Plik > Nowy > Dokument tekstowy). W tym momencie można wpisać tekst pierwszego newslettera w nowym systemie.
Po napisaniu newslettera (lub w celu przetestowania systemu) klikamy Narzędzia > Kreator korespondencji seryjnej.

Wybieramy opcję Użyj bieżącego dokumentu (lub wczytujemy z dysku inny dokument, jeśli mamy przygotowany inny tekst biuletynu). Klikamy przycisk Dalej.
Wybieramy opcję Wiadomość e-mail.

Klikamy przycisk Dalej.
W trzecim kroku kreatora klikamy przycisk Wybierz listę adresową.

W oknie Wybierz listę adresową wybieramy założoną w kroku 1. bazę danych i ewentualnie tabelę (lub tabele) z tej bazy). Klikamy przycisk OK. Klikamy przycisk Dalej.
W czwartym kroku można wybrać ewentualny zwrot grzecznościowy zaczynający biuletyn.

Ponieważ nie wszyscy prenumeratorzy podają swoje imiona, nazwiska itd., zwykle nie ma to większego sensu. Ja nie zaznaczam opcji Ten dokument powinien zawierać zwrot grzecznościowy.
W szóstym kroku można obejrzeć dokument z dodanym zwrotem grzecznościowym.

Ja nic nie wybierałem, więc klikam po prostu Dalej. Następuje generowanie maili.

Może to potrwać, jeśli prenumeratorów jest kilka tysięcy.
W kroku siódmym można uzależnić wygląd dokumentu dla poszczególnych odbiorców. Ja na to nie mam czasu, ale warto spróbować, jeśli na liście znajdują się osoby wyjątkowo ważne. Klikamy następnie przycisk Dalej.
I teraz już pozostaje przygotować się do wysyłki.

Wybieramy opcję Wyślij dokumenty wynikowe jako e-mail i wpisujemy temat newslettera w polu Temat. Wybieramy format biuletynu (może być tekstowy, PDF, HTML lub inny; najbezpieczniejszy jest tekstowy) . W polu Do powinien wyświetlać się adres e-mail pierwszego prenumeratora (jeśli go nie widać, wybieramy pole adresu e-mail z listy). Następnie przygotowujemy się do wysyłki i klikamy przycisk Wyślij dokumenty.
Uwaga. W razie, gdyby lista była bardzo długa (wiele tysięcy adresów), można wybrać wysyłkę partiami. W tym celu należy kilka razy uruchomić kreator i wybrać różne zakresy w polach Od i Do.

3. Aktualizacja bazy prenumeratorów
Oczywiście, w tekście biuletynu powinny znajdować się standardowe linki naszego systemu biuletynów, które umożliwiają wypisanie się z systemu. Prenumeratorzy będą z nich korzystać. Będą się zapisywać nowi. Dlatego też przed wysyłką kolejnego newslettera należy po raz kolejny wyeksportować plik tekstowy z listą abonentów i zapisać go tam, gdzie był poprzedni (pod tą samą nazwą pliku). I to wystarczy do aktualizacji danych. Wysyłka newslettera przy użyciu kreatora pozostaje bez zmian.

I wszystko byłoby pięknie, gdyby nie jedno ale... Oryginalny moduł wysyłki e-maili ma kilka drobnych błędów. Całe szczęście, poprawienie ich jest niezwykle proste: wystarczy usunąć z instalacji OpenOffice.org dwa pliki: program\mailmerge.pyc i program\mailmerge.py. Następnie należy wgrać nową wersję pliku mailmerge.py, która w formacie .zip znajduje się tu (do tego samego katalogu, w którym był plik mailmerge.py). Jeśli tego nie zrobimy, porąbią się polskie literki – ale tylko w OpenOffice.org starszym niż 2.3, bo w najnowszej wersji moją poprawkę uwzględniono.

I to wszystko. Najbardziej skomplikowane jest założenie bazy danych, ale nie jest to też fizyka jądrowa, więc zachęcam do wypróbowania.

-----

* Kilka lat temu pojawiło się typowe ograniczenie na liczbę możliwych maili wysyłanych w ciągu godziny, jednak można było to obejść, korzystając z innego, komercyjnego konta pocztowego, wysyłając maile przez port SMTP (25). Lecz i ta możliwość powoli się kończy. Coraz więcej usług hostingowych zamyka ten port, bo protokół SMTP nazbyt obciąża im serwery.

15.2.07

OpenOffice.org w praktyce

Ten blog będzie poświęcony zastosowaniom pakietu OpenOffice.org – różnym, czasem nietypowym, rozwiązaniom.
Już wkrótce – jak nie przejmować się ograniczeniami firm hostingowych i wysyłać newsletter witryny internetowej z OpenOffice.org.