ďťż

[php] cms a wyszukiwarki indeksowanie

       

Podstrony


telcocafe

Witam!
Mam pytanie. Czy dla lepszych wyników w wyszukiwarce lepiej jest napisać system cms, którego tytuł strony jest jeden i stały na każdej podstronie, czy lepiej, żeby się zmieniał dynamicznie dla każdej podstrony? - Jeśli ta druga opcja, to jak to rozwiązać? ładować tytuł z bazy na początku każdej podstrony? czy jakoś inaczej może ?
Pozdrawiam



Oczywiście, żeby się zmieniał, np.:

Strona główna:
- Serwis.pl

Dział Artykuły:
- Artykuły :: Serwis.pl

Artykuł "Art" w dziale Artykuły:
- Art :: Artykuły :: Serwis.pl
Albo np.:
- Art :: Serwis.pl
Użytkownik Coldpeer edytował ten post 21 luty 2007, 16:55

Witam!
Mam pytanie. Czy dla lepszych wyników w wyszukiwarce lepiej jest napisać system cms, którego tytuł strony jest jeden i stały na każdej podstronie, czy lepiej, żeby się zmieniał dynamicznie dla każdej podstrony? - Jeśli ta druga opcja, to jak to rozwiązać? ładować tytuł z bazy na początku każdej podstrony? czy jakoś inaczej może ?
Pozdrawiam

Przypisz każdej podstronie swój tytuł na stałe. Tak jak ci pokazał Coldpeer. Nie ma powodu aby tytuł był w jakiejś bazie i wczytywał się albo i nie w określonych sytuacjach. Chyba jest rzeczą noramlną, że jedna strona ma jeden tytuł, a nie kilka.


Nie ma powodu aby tytuł był w jakiejś bazie i wczytywał się albo i nie w określonych sytuacjach.
Tu chodzi o CMS-a ;) Więc zawartość "podstron" jak artykuły przechowywane są w bazie, wraz z tytułem (i ew. ścieżką), która powinna być odpowiednio generowana, na podstawie oglądanej strony, i którą sobie odpowiednio przedstawisz w części prezentacyjnej (HTML).
Użytkownik Coldpeer edytował ten post 21 luty 2007, 17:17


- dojście do artykułu w MAX 3 kliknięciach
- każdy artykuł powinien wrzucać jego tytuł do TITLE i meta DESCRIPTION oraz fajnie by było gdyby tytuł był wyświetlany przez H1/H2 w okolicach początku kodu HTML strony.
- google sitemaps ;)

Na pewno lepiej, gdy zmienia się tytuł - głównie dla użytkowników Google.

Co jednak wtedy, gdy CMS dołącza moduł np. artykułów już w sekcji <body>, gdy część strony zostaje wysłana?


Na pewno lepiej, gdy zmienia się tytuł - głównie dla użytkowników Google.

Co jednak wtedy, gdy CMS dołącza moduł np. artykułów już w sekcji <body>, gdy część strony zostaje wysłana?

Przeglądałem w3schools i natrafiłem na document.title. Spróbowałem w ich edytorze do zabawy zmienić tym tytuł. Udało się :blink:


Przeglądałem w3schools i natrafiłem na document.title. Wyszukiwarki raczej nie obsługują Javascript, więc w wynikach nadal będzie sam tytuł.

CMS-y, przynajmniej te choć trochę warte zainteresowania, pisze się z wykorzystaniem klas do obsługi szablonów (popularne są też gotowe skrypty jak Smarty czy PEAR), które przeparsują sekcję z tytułem (znajdującej się w pliku szablonu) przed wykonaniem całości.
Użytkownik Coldpeer edytował ten post 21 luty 2007, 18:59
Co ciekawe - PHP Fusion też nie zmienia tytułu, lecz jego budowa lepiej umożliwia wstawianie np. nazw artykułów.

Problem można rozwiązać na kilka sposobów - każdy jednak powoduje spadek wydajności. Przykłady:

1. Zapisywanie wygenerowanego przez moduły kodu HTML do zmiennej.
Dodatkowy tekst tytułu zapisywany jest np. w stałej. Później wyświetlany jest HTML z wklejoną stałą do <title> i zmienną w środek szablonu. Zwiększa to zużycie pamięci.

2. Utworzenie co najmniej 2 funkcji wyświetlających szablon.

3. Użycie 2 plików PHP dla modułów - jednego za wczytanie danych i przygotowanie tytułu, a drugi za prezentację.

Zmiana tytułu nie jest jednak najważniejsza, o ile będzie przyciągał użytkownika.
Użytkownik Ferrari edytował ten post 21 luty 2007, 20:35

Problem można rozwiązać na kilka sposobów - każdy jednak powoduje spadek wydajności.

To koduj w HTMLu jak ci nanosekundy przeszkadzają. Najprostsze rozwiązanie to zastosowanie dowolnego systemu szablonów obsługującego dziedziczenie (jak np. smarty). Ja używam Django i nieco uproszczony szablon wyświetlania danego artykułu wygląda tak:
{% load i18n %} {% load cbc %} {% extends "pages/body.html" %} {% block header %}{{ page.title }}{% endblock %} {% block descript %}{{ page.description }}{% endblock %} {% block content %}{{ page.text|cbc }}{% endblock %} {% block title %}{{ page.title }}{% endblock %} {% block description %}{{ page.description }}{% endblock %}
I spokój. I żeby nie było o "spadku wydajności"

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.