PDA

Zobacz pełną wersję : strona startowa



hazael
28-11-2005, 23:18
Od dłuzszego czasu mam dylemat (dla niektórych błahy), który dotyczy wyglądu sposobu wyswietlania linków na stronie startowej.

Chodzi o to, że gdy wybiorę piersza pozycję z menu - strona główna, to wyswietla sie link komponentu
http://www.joomla.pl/index.php/component/option,com_frontpage/Itemid,1/
i nie wiem jak go ukrócić w taki sposob, aby wyswietlał sie tak:
http://www.joomla.pl/
linki oczywiscie są przykłądem.

Dodatkowo denerwuje mnie sposob wyswietlania się tytułu strony w <title> i to jest dla mnie najistotniejszy problem. Jak zlikwidować nazwę w <title> powiązaną z nazwą linku strona głowna.?

zwiastun
29-11-2005, 04:22
Pierwsze pytanie trochę niejasne - czy chodzi o to, aby pozostała część adresu w pasku przeglądarki zawsze, niezależnie od tego, w jakim jesteś miejscu, była niewidoczna?
Jeśli tak - a zdaje się że nie - ale jeśli tak, to wprawdzie nie ma rzeczy do zrobienia, ale ta jest bez sensu; zastosuj przyjazne URLe (SEF), będą "wdzęczniej" wyglądać, a równocześnie dadzą możliwość użytkownikom zapamiętania linku do konkretnej strony a nie do strony startowej.
Drugie: nazwij stronę główną (startową) swojej witryny nazwą witryny :)
A nie żartując: jeśli nie chcesz, aby w historii przeglądarek użytkowników zapamiętywane były odwiedzane strony, to możesz tę opcję wyłączyć w konfiguracji serwisu w zakładce SEO (ostatnia) - dynamiczna zmiana tytułów.

hazael
29-11-2005, 10:04
Twoją odpowiedz była pisana do ogolnych rozwiązań całej witryny. Mi natomiast zalezy tylko na samej stronie startowej. Chodzi o to, żeby nie działała mi dynamiczna zmiana tytułów dla komponentu frontpage. Gdzie to coś mozna wyłaczyć? Domyslam się, że trzeba grzebać w plikach - ale w którym miejscu? Drazni mnie to z jednego powodu - pragne wypozycjonowac sobie strone głowną w wyszukiwarce, w której jest pewien limit znaków dla <title>. Zamiast zbednego wyrazu w tytule "strona głowna/start/strona startowa/ itd. wole aby tam nic takiego nie bylo.

Pierwsze pytanie rownież dotyczyło tego komponentu. Jak wchodze na strone głowną to mam podstawowy adres czyli np http://www.joomla.pl. Zwykle startową jest komponent frontpage. Załózmy, ze jestem na podstronie i chcę wrócić na strone głowną i wybieram powrót na "strone głowną" - linkiem do tego bedzie komponent frontpage, ktory juz nie wyswietli mi adresu strony głownej http://www.joomla.pl, lecz adres komponentu, który napisałem dla przykładu w pierwsyzm poscie. Jak to mozna ominąć?

Ps.
Dzięki Zwiastun za poprawienie za mnie mojego byczka ;-)

mambol
29-11-2005, 17:15
Twoją odpowiedz była pisana do ogolnych rozwiązań całej witryny. Mi natomiast zalezy tylko na samej stronie startowej. Chodzi o to, żeby nie działała mi dynamiczna zmiana tytułów dla komponentu frontpage. Gdzie to coś mozna wyłaczyć? Domyslam się, że trzeba grzebać w plikach - ale w którym miejscu? Drazni mnie to z jednego powodu - pragne wypozycjonowac sobie strone głowną w wyszukiwarce, w której jest pewien limit znaków dla <title>. Zamiast zbednego wyrazu w tytule "strona głowna/start/strona startowa/ itd. wole aby tam nic takiego nie bylo.


Nie jestem do końca przekonany czy na pewno o to chodzi ale:

w joomla.php


403: $this->_head['title'] = $title ? $GLOBALS['mosConfig_sitename'] . ' - '. $title : $GLOBALS['mosConfig_sitename'];


na:

$_REQUEST['option'] == "com_frontpage" ? $this->_head['title'] = $GLOBALS['mosConfig_sitename'] : $this->_head['title'] = $title ? $title . ' - ' . $GLOBALS['mosConfig_sitename'] : $GLOBALS['mosConfig_sitename'];

Było to dyskutowane na jakimś forum:
zmiana ta o ile dobrze pamiętam wywala z title przedrostek pochodzacy z pierwszej pozycji w menu (przynajmniej tak mam u siebie zrobione a wklejam to z komentarza jakim opisuje zmiany w plikach więc mam nadzieję że działa).

nexus246
29-11-2005, 20:33
A moze wystarczy na pierwszej pozycji menu zrobic static url do adresu strony?

hazael
29-11-2005, 22:44
Sprawa z title dla frontpage rozwiązana :)
Dzięki Mambol - działa tak, jak chciałem i chyba wiem teraz jak zmodyfikowac inne tytuły podstronek w ten sposób :)

Wracając do wyświetlanego linku. Właśnie - jak zrobić static url dla frontpage?

Joomla User
30-11-2005, 06:56
Rewelacyjny pomysł! Mnie też denerwowało to "Site Name - Site Name" w pasku tytułu przeglądarki na stronie głównej serwisu. Tylko pojawił się inny problem - na innych podstronach serwisu w tytule jest "Content Name - Site Name" a wolałbym odwrotnie. Jak to zmodyfikować?

mambol
30-11-2005, 15:39
Rewelacyjny pomysł! Mnie też denerwowało to "Site Name - Site Name" w pasku tytułu przeglądarki na stronie głównej serwisu. Tylko pojawił się inny problem - na innych podstronach serwisu w tytule jest "Content Name - Site Name" a wolałbym odwrotnie. Jak to zmodyfikować?



$_REQUEST['option'] == "com_frontpage" ? $this->_head['title'] = $GLOBALS['mosConfig_sitename'] : $this->_head['title'] = $title ? $GLOBALS['mosConfig_sitename'] . " - ". $title : $GLOBALS['mosConfig_sitename'];

nexus246
30-11-2005, 17:16
Co do Static URL to po prostu wpisać adres strony i wrzucić na pierwszą pozycję w menu (wydaje mi sie ze zadziała).

Ten kod jest bez sensu, takie maslo maslane:
$_REQUEST['option'] == "com_frontpage" ?
//strona główna
$this->_head['title'] = $GLOBALS['mosConfig_sitename'] :
//kazda inna przy czym tu zawsze jest wybór z " - " bo jest uzyty znaczek
// "=" zamiast "=="
$this->_head['title'] = $title ?
$GLOBALS['mosConfig_sitename'] . " - ". $title : $GLOBALS['mosConfig_sitename'];

Takie rzeczy ładniej i czytelniej wygladają z ifami.

hazael
30-11-2005, 20:17
Co do Static URL to po prostu wpisać adres strony i wrzucić na pierwszą pozycję w menu (wydaje mi sie ze zadziała).
No wlasnie to juz dawno trenowałem i nie dziala chyba, że to ja mam cos nie tak u siebie. Robiłem tak, że w menu głównym nad linkiem do komponentu frontpage, ktory jest domyslnie na samej gorze, wstawilem zwykły odnosnik do strony głównej. Po uruchomieniu witryny na stronie głownej wyswietla sie komunikat:

Treść którą chcesz zobaczyć nie istnieje.
Proszę wybrać inny element z nawigacji.

Wiadome jest, że system pokazuje na stronie głownej akurat to, co jest numer jeden w pozycji mainmenu. W tym przypadku link do URL sam w sobie nic nie ma, bo nie jest komponentem i nie wyswietli niczego, a już napewno nie to co jest we frontpage.

Jest na to inne banalne rozwiązanie - mamy link: http://www.joomla.pl/component/option,com_frontpage/Itemid,1/
i w katalogu, w ktorym stoi nasza strona robimy identyczną ścieżke
/component/option,com_frontpage/Itemid,1/
W katalogu /Itemid,1/ wstawiamy plik index.html z przekierowaniem na strone główną.

Jednak to rozwiązanie mnie nie zadowala, bo strona podwojnie sie ładuje, a gdy jest duzo tresci do odswiezenia, to trwa to troszke długo :-/
najlepsze rozwiązanie to mod_rewrite, ale zupełnie nie wiem jak sie za to zabrac...:confused:

REGE
27-02-2006, 16:40
Witam!
Joomli używam dopiero od miesiąca i według mnie jest świetna. Jednak też denerwował mnie <title /> ze "Stroną Główną" i ten długi link.

Nie znalazłem jednak kodu podanego przez mambola. Doszedłem do tego, że w nowej Joomli jest funkcja setPageTitle() i tam można sobie wszystko pozmieniać. Jeżeli ktoś byłby zainteresowany, to poniżej wstawiam przekształcony kod tej funkcji.


function setPageTitle($title=null)
{
if (@$GLOBALS['mosConfig_pagetitles']) {
// strona glowna
if ($_REQUEST['option'] == "com_frontpage") {
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
// wszystkie inne strony
else {
if ($title) {
$this->_head['title'] = $GLOBALS['mosConfig_sitename'].' - '.$title;
}
else {
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
}
}
}
Natomiast jeżeli chodzi o link do strony głównej, to wymyśliłem coś na szybko. Nie jest to może zbyt rewelacyjne rozwiązanie i wymaga ingerencji w źródło, ale przynajmniej w adresie nie pojawia się tak długi link.:)

W pliku index.php, za ifem:

if ($option == 'login') {
. . .
} else if ($option == 'logout') {
. . .
}
wklejamy taki oto kawałek kodu:

if ($_SERVER['REQUEST_URI'] == '/index.php?option=com_frontpage&Itemid=1') {
mosRedirect($mosConfig_live_site);
exit();
}

POZDRAWIAM :cool:

bigus
26-05-2006, 22:39
napierw title a pozniej nazwa strony
function setPageTitle($title=null)
{
if (@$GLOBALS['mosConfig_pagetitles']) {
// strona glowna
if ($_REQUEST['option'] == "com_frontpage") {
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
// wszystkie inne strony
else {
if ($title == 'Home')
{
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
else
{
$this->_head['title'] = $title . " - ". $GLOBALS['mosConfig_sitename'];

}
}
}
}

zwiastun
27-05-2006, 00:07
A jeżeli $title nie jest równe Home tylko np. Start albo inne Ble Ble Ble?

bigus
28-05-2006, 19:54
function setPageTitle($title=null)
{
if (@$GLOBALS['mosConfig_pagetitles']) {
// strona glowna
if ($_REQUEST['option'] == "com_frontpage") {
$this->_head['title'] = _mainpage;
}
// wszystkie inne strony
else {
if ($title == 'Home')
{
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
else
{
$this->_head['title'] = $title . " - ". $GLOBALS['mosConfig_sitename'];

}
}
}
}

_mainpage - wpisałem do tłumaczenia czy language swoj title jaki chce zeby mi sie wyswietlał na pierwszej stronie np kiedy dodaje do katalogów to idealnie go pobiera:)
zreszta zobaczcie sami www.funner.gut.pl

Martin123
10-08-2006, 15:41
Witam!

Chciałem się podzielić moją metodą na dynamiczną zmianę TITLE w zależności od odwiedzanej strony. Mój spec od pozycjonowania chciał mieć możliwość żeby dla wybranych artykułów wyświetlał się taki tytuł jak on chce, a nie jaka jest nazwa artykułu. Zrobilem więc tak:

1) posadzilem i opublikowałem dodatek RDAddPHP
2) w wybranym artykule, dla którego chciałem mieć unikalny tytuł, w treści, wstawiłem skrypt w PHP gdzie dla zmiennej $mojtytul wprowadziłem odpowiedni tekst tytułu.
3) w pliku index.php odpowiedniego szablonu

zamiast: php mosShowHead();

wstawiłem:



<?php
if($mojtytul){
echo("<TITLE>$mojtytul</TITLE>"); }
else {
echo("<TITLE>Domyślny tytuł dla pozostałych artykułów</TITLE>");
}

W ten sam sposób dla wybranego artykułu można zdefiniować meta description lub meta keywords. W razie dodatkowych pytań chetnie pomogę :)

PS. Nie skumałem jednak nadal jak zamienić www.domena.com.pl/index.php na www.domena.com.pl bez załączania SEO. Help?!:)

Rybik
10-08-2006, 22:36
a czy przypadkiem metakeywordy z parametrow artykulu nie laduja od razu w naglowku strony ? trzeba recznie ? :/

i czy kazda przegladarka widzi $_SERVER['REQUEST_URI'] bo $_SERVER['HTTP_REFERER'] to chyba mozilka ignoruje

Martin123
11-08-2006, 09:27
Nie wiem czy dobrze kolegę zrozumiałem. Pewnie nie napiszę nic nowego ...
Przy stanadardowym ustawieniu i użyciu mosShowHead() w index.php do nagłówka strony trafiały dane z Konfiguracja/Metadane --> czyli dla każdego artykułu dokument miał te same metakeywordsy czy metadescriptiony, a właśnie tego chciałem uniknąć.

zwiastun
17-08-2006, 01:15
Nie zrozumiałeś dobrze. Ustawienia w konfiguracji pozwalają na dodanie metadanych właściwych dla KAŻDEGO artykułu (autor, tytuł, opis, słowa kluczowe). Rzecz jest objaśniona w systemie pomocy.

I na marginesie niektórych wypowiedzi w wątku.
Wszelkie sugestie oszustw są niemile tutaj widziane.
A pozycjonerzy posługujący się technikami tego typu są profesjonalistami od siedmiu boleści.

aartur
17-08-2006, 13:44
czy ktos wie jak umieszczac na stronie startowej kolejne artykułu i aby numerowało stony 1, 2 itd . Jak wpisuje kolejne strony to zozwal mi strone startowo o oznacza juz nadmiar artykułów. Co musze zrobic abym nowe artkułu były na paczatku a starsze na koncu.

zwiastun
18-08-2006, 09:09
ARturku, w menedżerze strony startowej jest przycisk Pomoc, jak w wielu innych miejscach. Zadajesz pytanie, na któe odpowiedź masz pod ręką. Menu Administratora = > Strona startowa

hazael
18-08-2006, 16:50
Ja nie rozumiem dlaczego nikt do tej pory nie wpadł na tak banalne rozwiązanie z adresem strony głownej, który po kliknieciu w menu zamiast pokazac czystą domene wyswietla adres (najczesciej domyslny) /component/option,com_frontpage/Itemid,1/.

Zauwazcie, ze na sztywno jest wbudowany w joomle/mambo moduł - w menu o nazwie mainmenu, ktorego administracyjnie nie mozna usunąć. Własnie on odpowiada za to, co wyswietla się na stronie startowej - inne kopie tego modułu niestety nie.

Wszyscy pakują glowne menu wlasnie do tego mainmenu - w pewnym sensie jest to błąd, jeżeli chcecie osiągnąć porządany wynik.

Rozwiązanie jest tak proste, ze w ogole nie trzeba znac się na html/php, aby coś takiego wykonać. Oto procedura:

w menu o nazwie mainmenu umieszczacie tylko i wyłącznie komponent do strony startowej - oczywiscie ustawiacie go jako publiczny - dostępny dla wszystkich, jednak sam moduł mainmenu wyłaczacie - ustawiacie jako nieopublikowany, lub zwyczajnie nie podpinacie pod zadną z pozycji dla modułów w Waszej templatce - ostatecznie zapominacie o nim :-).

Nastepnie tworzycie kopie tego menu (kolejne menu) - nazwijcie to sobie jak chcecie np menuglowne i tam wstawcie wszystkie mozliwe odnosniki, ktore bedą stanowić menu głowne. w pozycji pierwszej wstawiacie zwykly link do Waszej strony głownej - jako link wystarczy wpisac sam ukosnik / i nazwac go np strona głowna.

To tyle - mysle, ze nie trzeba wiecej tlumaczyc :rolleyes:

ADI-mistrzu
16-11-2006, 09:26
Witam!
Mam taki dziwaczny problem, mianowicie przestała mi działać strona główna. Na początku jeszcze się pokazywała, ale teraz jest tylko napis:

Treść, którą chcesz zobaczyć, nie istnieje.
Wybierz inną z głównego menu.

Co z tym zrobic ? Co się mogło stać ?

zwiastun
16-11-2006, 11:08
Albo nie masz pozycji ustawionych do publikacji na stronie startowej
Albo usunąłeś menu z FrontPage (Start)
Albo przestawiłeś kolejność i masz na początku coś w czym nie ma treści
Albo kto to może wiedzieć

pieniak
06-01-2007, 21:24
function setPageTitle($title=null)
{
if (@$GLOBALS['mosConfig_pagetitles']) {
// strona glowna
if ($_REQUEST['option'] == "com_frontpage") {
$this->_head['title'] = _mainpage;
}
// wszystkie inne strony
else {
if ($title == 'Home')
{
$this->_head['title'] = $GLOBALS['mosConfig_sitename'];
}
else
{
$this->_head['title'] = $title . " - ". $GLOBALS['mosConfig_sitename'];

}
}
}
}

_mainpage - wpisałem do tłumaczenia czy language swoj title jaki chce zeby mi sie wyswietlał na pierwszej stronie np kiedy dodaje do katalogów to idealnie go pobiera:)
zreszta zobaczcie sami www.funner.gut.pl

Czy na przykład o takie dodanie do pliku polish.php chodzi:

/** common */
DEFINE('_mainpage','rolnictwo, sadownictwo, ogrodnictwo')

po takim dodaniu pokazało mi pustą stronę główną


Widziałem u Ciebie na stronce chodzi tak jakbym chciał

Pozdrawiam

hazael
06-01-2007, 21:37
czy ja sie niezrozumiale wyrazilem?

Po co wam te modyfikacje php?

w menedzerze menu, w nazwie kategorii mainmenu (ktory jest domyslnie powiazany z joomla i nie mozna go usunąc), wstaw odnosnik do komponentu, ktory ma sie ukazac na stronie startowej i zapomnij o nim i calym mainmenu - nie uzywaj tego wiecej.

Stworz nową kategorie w menedzerze menu, ktora bedzie od tej pory głownym menu witryny. W tej kategori umieść wszystkie linki, ktore chcesz mieć na stronie w menu. W pierwszej pozycji możesz tam śmialo umieścić głowny link swojego serwisu.