[php] Tytuł artykułu w pasku tytułowym przeglądarki


(Vrg) #1

Witam serdecznie

 

Na początku chciałbym zastrzec że nie jestem programistą i PHP znam w stopniu bardzo podstawowym. Właściwie to wiem tylko gdzie co jest, ale samodzielnie nie piszę skryptów. Potrzebuję dokonać tylko pewnej zmiany na stronie, którą współprowadzę i niestety nie byłem w stanie sam sobie poradzić.

 

Chodzi o to, aby okno przeglądarki wyświetlało tytuł aktualnie wyświetlanego artykułu. Obecnie we wszystkich artykułach, a nawet galeriach, działach, podstronach etc tytuł jest niezmienny, tzn taki jak podano w w pliku index.php

 

Strona: http://czeladz.org.pl/ (domena, właściwie na www.mojaczeladz.nazwa.pl)

 

Struktura strony jest moim zdaniem bardzo zawiła (napisana wiele lat temu) i składa się z index.php, który z kolei ładuje w środkowej sekcji plik news_new.php za pomocą polecenia:

<?php if (isset($_GET['strony'])) ...(tu kilka innych podstron)... else include("strony/news_new.php") ; ?>

Następnie w pliku news_new.php, który określa wyświetlanie kolejno na stronie głównej wszystkich działów (News, Kultura, Sport) podane jest, iż za wyświetlanie pojedynczego artykułu odpowiada plik news_calosc.php. W tym pliku znalazłem, iż za wyświetlanie tytułu artykułu w nagłówku odpowiada fragment:

<td class=\"naglowek_newsa_1\" valign=\"middle\" width=\"71%\">" . decode_text($obj->tytul) . "</td>

Zacząłem od poszukiwań na forach jak można coś takiego rozwiązać, natknąłem się na http://forum.dobreprogramy.pl/pobieranie-tekstu-z-bazy-za-pomoc%C4%85-get-t437842/

Niestety nie jestem w stanie zrobić z tego użytku. Próbowałem jakichś cudów z prostą funkcją onLoad plus kombinacja z window.name ale to raczej błądzenie na ślepo. Proszę o pomoc. Co powinienem jeszcze podesłać, aby ktokolwiek mógł rozwiązać taki problem ? A może to jakieś ustawienia u dostawcy usługi czyli nazwa.pl ?

 

Z góry dziękuję za każdą wskazówkę. Odpowiedzi w stylu "było poszukaj" albo "to podstawy php, zrób se sam" nie pomogą nam wcale. Za rozwiązanie problemów mogę się jakoś zrewanżować np w postaci drobnej reklamy na stronie.

news_new.php

news_calosc.php

index.php


(Drobok) #2

Wrzuć sobie w to echo gdzie wyświetlasz tabele:

<script type=\"text/javascript\">
//<![CDATA[
document.title='".decode_text($obj->tytul)."';
//]]>
</script>

Rozwiązanie tymczasowe, Najlepiej gdybyś przebudował układ strony i korzystał bezpośrednio z tagu title, lecz wiem że tego sam nie zrobisz a wątpię by komuś uśmiechało się to robić za ciebie :stuck_out_tongue:

 

//edit, weź też poprawkę, że tytuł z apostrofami może ci wysypać kod. Nie używaj echo do dużych partii tekstu, wyłącz php a wrzuć co potrzebujesz a potem znów je włącz.


(Maks Baum) #3

Rozwiązanie powyżej to w sumie jedyne rozwiązanie na szybko - jest jeszcze jeden minus - takie podmienianie w js titla strony nie będzie miało wpływu na widoczności title w wynikach wyszukiwania googla.


(Vrg) #4

 

Świetnie! Dziękuję bardzo! W sumie o to chodziło. Tytuły z apostrofem/cudzysłowiem na szczęście nie wysypują strony, ale pojawia się &quote;

Rozumiem że tego nie uda się zlikwidować przy tak użytej funkcji echo ?

 

No właśnie, zauważyłem także, że przy wrzucaniu bezpośrednich linków do artykułów na Facebook'a to wciąż nie czyta poszczególnych tytułów lecz tak jak wcześniej podaje tytuł strony głównej portalu. Z tym także nic się nie zrobi?

 

 

Serdeczne dzięki za wszelkie odpowiedzi!


(Drobok) #5

Co do wyników wyszukiwania, musisz zmienić układ tak jak napisałem wcześniej, a co do linków to jest całkowicie odmienny temat (poczytaj o SEO url).

Tak czy siak, musisz przebudować stronę. 

Najprościej dać tytuł do pasku adresu, w pliku zawierającym title wrzucić get z tym adresem, a potem za pomocą mod_rewrite przepisać ten adres na przyjazny dla usera.

 

Pisz jeśli będziesz miał pytania.