02
04
07

Zajawki artykułów na Blogger.com

Blogger/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. 🙂

Autor:Krzysztof Lis | Tagi: ,



Wpisy powiązane tematycznie:

8 komentarzy do artykułu “Zajawki artykułów na Blogger.com”

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

  2. 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>

  3. 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>

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

  5. 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 ????

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

  7. […] funkcja była już dostępna od jakiegoś czasu (pisałem o tym tutaj), ale powiedzieć trzeba, że nie było to najlepsze rozwiązanie. Po pierwsze, nie zawsze chciała […]

  8. Witaj! U mnie nie wyswietla się w ogóle napis: czytaj dalej…

    Mimo, że już zmieniłam na Twój kod:


    Czytaj dalej…

    Juz nie wiem, co mam robić. Proszę o pomoc.

Pozostaw komentarz

Pamiętaj tylko proszę o polityce komentarzy! Komentarze służą do wyrażania opinii na temat opublikowanego tekstu, albo zadawania pytań jego dotyczących. Nie służą do reklamowania własnych stron ani zadawania pytań nie związanych z tematem wpisu. Jeśli masz pytanie, zadaj je na forum o zarabianiu na blogach albo napisz do mnie e-maila.

XHTML - możesz użyć tagów:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Jak zarabiam?

Na moich blogach i witrynach zarabiam między innymi sposobami podanymi poniżej.