Google

Zarabianie na blogach - jak zbudować pasywny dochód

Blog przeniesiony. Zajrzyj na nowy blog o zarabianiu na blogach. :)

Subskrybuj RSS tego bloga i czytaj artykuły gdy tylko się pojawią!



poniedziałek, 2 kwietnia 2007

Zajawki artykułów na Blogspot

Blogspot w domyślnych ustawieniach prezentuje na stronie głównej całe artykuły. Utrudnia to przeglądanie ich, bo strona główna robi się straszliwie długa. Dla wygody odwiedzającego lepiej prezentować zajawkę, jeden-dwa akapity, które pozwolą mu zorientować się w treści artykułu i szybko wybrać to, co naprawdę go interesuje.

Rozwiązanie to jest wygodne również dla autora bloga. Reklamy w treści artykułu są lepiej dopasowane, niż reklamy na stronie głównej (zwłaszcza, gdy Twoje wypowiedzi dotyczą kilku różnych tematów), co daje wyższy CTR. Z drugiej strony notujesz też więcej wyświetleń reklam, bo przeczytanie artykułu wymaga otwarcia dwóch stron.

Rozwiązanie tego problemu sprowadza się do dwóch kroków. Po pierwsze należy umieścić w szablonie prezentowania artykułu link "kliknij tu, by przeczytać resztę artykułu" a następnie pozmieniać wszystkie artykuły, oznaczając zajawkę i resztę treści.

W pomocy Bloggera znajdziemy artykuł o tytule How can I create expandable post summaries?. Przedstawione tam rozwiązanie nie jest doskonałe, ale działa. I o to chodzi. W zależności od tego, czy posiadasz blog z szablonami klasycznymi czy layoutami (nie wiem jak to się na polski tłumaczy, przepraszam), rozwiązania są dwa.

Dla klasycznych szablonów.

W sekcji <head> dodajesz wewnątrz znacznika <style> następujący kod:

<MainOrArchivePage>
span.fullpost {display:none;}
</MainOrArchivePage>
<ItemPage>
span.fullpost {display:inline;}
</ItemPage>


Wewnątrz sekcji <body>, w okolicy, w której wyświetlana jest treść posta (za znacznikiem <$BlogItemBody$> wklejasz kod:

<MainOrArchivePage><br />
<a href="<$BlogItemPermalinkURL$>">Read more!</a>
</MainOrArchivePage>

Dla layoutów

W sekcji <head> dodajesz wewnątrz znacznika <style> następujący kod:

<b:if cond='data:blog.pageType == "item"'>
span.fullpost {display:inline;}
<b:else/>
span.fullpost {display:none;}
</b:if>


Wewnątrz sekcji <body>, w okolicy, w której wyświetlana jest treść posta (za znacznikiem <data:post.body/> wklejasz kod:

<b:if cond='data:blog.pageType != "item"'><br />
<a expr:href='data:post.url'>Czytaj resztę...</a>
</b:if>


Tu uwaga, kod podawany przeze mnie różni się nieco od kodu podawanego we wspomnianym artykule, bo tamten po prostu u mnie nie działał!

Dla obu wersji - posty

Wymagana jest jeszcze pewna zmiana wszystkich postów, których ma dotyczyć ta zmiana.

Fragment, który ma być wyświetlany tylko na osobnej stronie dla postu, należy objąć znacznikiem <span class="fullpost"></span>. Fragment nieobjęty znacznikiem będzie wyświetlany na stronie głównej bloga.

Teraz wada, o której wspominałem. Link "czytaj dalej" będzie pokazywać się pod każdym postem, nawet pod tymi, które wyświetlane są w całości. Widziałem w internecie kilka rozwiązań tego problemu, wykorzystujących JavaScript, niestety u mnie nie działały, więc pozostawiłem to tak jak tutaj.

Jeśli znajdziesz jakieś wyjście z tej sytuacji, będę wdzięczny za info, pozostaw je proszę w komentarzu. :)

Komentarzy: 6

Unknown napisał (napisała)...

Skorzystalem z tego postu wiec w ramach rekompensaty
http://elearning-20.blogspot.com/2007/05/pozycjonowanie-tytu-postu-jako-tytu.html

Unknown napisał (napisała)...

musi działać


<b:if cond='data:blog.pageType == "item"'>
<b:section id='titleTag'>
<b:widget id='Blog2' locked='false' title='Posty w blogu' type='Blog'/>
</b:section><b:else/>
<title>
<data:blog.pageTitle/>
</title>
</b:if>

Unknown napisał (napisała)...

Jeśli tamto nie zadziała spróbuj tak

<b:if cond='data:blog.pageType == "item"'><b:section id='titleTag'><b:widget id='Blog2' locked='false' title='Blog Posts' type='Blog'><b:includable id='comments' var='post'/><b:includable id='postQuickEdit' var='post'/><b:includable id='main' var='top'><title><b:loop values='data:posts' var='post'><b:include data='post' name='post'/></b:loop> ~ <data:blog.title/></title></b:includable><b:includable id='backlinkDeleteIcon' var='backlink'/><b:includable id='feedLinksBody' var='links'/><b:includable id='backlinks' var='post'/><b:includable id='status-message'/><b:includable id='feedLinks'/><b:includable id='nextprev'/><b:includable id='commentDeleteIcon' var='comment'/><b:includable id='post' var='post'><data:post.title/></b:includable></b:widget></b:section><b:else/><title><data:blog.pageTitle/></title></b:if>

Krzysztof Lis napisał (napisała)...

Teraz zadziałało (to pierwsze). Ale trochę się kod różni od tego, co napisałeś u siebie na blogu.

Piotr napisał (napisała)...

kiedy wklejam ten drugi kod MainOrArchivePage itd

wyskakuje mi komunikat:
Nieprawidłowa deklaracja zmiennej w karnacji strony: Zmienna jest używana, ale nie została zdefiniowana. Dane wejściowe: BlogItemPermalinkURL

Co mam zrobic ????

Krzysztof Lis napisał (napisała)...

Miałem z tą samą zmienną kłopoty, dlatego zmieniłem kod z oryginalnego na to, co tu widać.