jak wstawić instrukcję warunkową odnośnie bieżącej strony;
Wyniki 1 do 3 z 3

Temat: jak wstawić instrukcję warunkową odnośnie bieżącej strony;

  1. #1
    Przeglądacz
    Dołączył
    02-11-2009
    Wpisy
    99
    Punkty
    2

    Domyślny jak wstawić instrukcję warunkową odnośnie bieżącej strony;

    witam, jak zbudować warunek w instrukcji warunkowej if,
    którego zadaniem będzie sprawdzanie czy użytkownik jest na stronie głownej, jesli tak to joomla wyswietli odpowiednią tresc jesli nie to wyswietli komponenty?
    Słowem, jakby ktoś wiedział jak zbudować warunek który bedzie sprawdzał czy uzytkownik jest na stronie głownej
    probuje cos takiego:
    <?php if($this->tu_cos_co_sprawdzi_ze_wyswietlona_strona_jest_str oną_glowną) : ?>
    //bloki div i ciało strony

    <?php else: ?>
    <jdoc:include type="component" />
    <?php endif; ?>

  2. Pani Reklamowa
    Pani Reklamowa jest aktywna
    Avatar Panny Google

    Dołączył
    19-08-2010
    Skąd
    Internet
    Postów
    milion
    Pochwał
    setki
  3. #2
    Senior Bazyl awatar
    Dołączył
    02-08-2008
    Skąd
    Skierniewice
    Wpisy
    7 693
    Punkty
    574

    Domyślny

    Strona frontowa to dwa warunki:
    Kod PHP:
    if(JRequest::getCmd'view' ) == 'frontpage' ||  JRequest::getVar('option''') == ''){

        
    coś się dzieje jeśli strona frontowa

    }
    else{

        
    a tu jeśli nie


    Pozdrawiam Jolantę...

  4. #3
    Przeglądacz f1xer awatar
    Dołączył
    10-03-2008
    Wpisy
    92
    Punkty
    32

    Domyślny

    to co napisał kolega bazyl nie do końca jest prawdą, otóż jako stronę domyślną możemy ustawić dowolny komponent/widok więc sprawdzanie view odpada, poza tym warunek ten byłby prawdziwy również dla podstron z danym widokiem a nie wykluczone, że komponent x również będzie miał widok frontpage. Po drugie option jest zawsze ustawione ponieważ wczytywana jest pozycja menu które jest domyślna więc musimy mieć dostęp do aktywnego widoku itd. Wydaje mi się że najbliżej prawdy będzie taka funkcja, choć w niektórych przypadkach i ona może okazać się nieskuteczna.
    Kod PHP:
    function isFront(){
      
    //tworzymy zapytanie do bazy o domyślną pozycję, pobieramy id i link
      
    $db=&JFactory::getDBO();
      
    $sql="SELECT id,link FROM #__menu WHERE home=1";
      
    $db->setQuery($sql);
      
    $wynik=$db->loadObject();
      
    //zmienna home przechowuje id do porównania z Itemid zapytania na stronie.
      
    $home=$wynik->id;
      
    //pobieramy wszystko po znaku ? z pola link wyniku zapytania $sql
      
    $url=parse_url($wynik->link,PHP_URL_QUERY);
      
    //parsujemy zmienną $url uzyskując tym samym zmienne $option, $view itd.
      
    parse_str($url);
      
    //pobieramy Itemid option i view z zapytania
      
    $Itemid=JRequest::getInt('Itemid');
      
    $qoption=JRequest::getCMD('option');
      
    $qview=JRequest::getCMD('view');
      
    //tworzymy warunek
      
    if ($home==$Itemid && $view==$qview && $option=$qoption) {
        return 
    true;
      } else {
        return 
    false;
      }

    i teraz warunek będzie wyglądał mniej więcej tak:

    Kod PHP:
    if (isFront()){
      echo 
    "Witamy na stronie głównej";
    } else {
     echo 
    "Witamy na podstronie serwisu";

    pisane na szybko ale przetestowane i się sprawdza choć w niektórych przypadkach i tak pewnie może okazać się że jest zawodna :/ problem co najmniej ciekawy jak wpadnę na jakieś bardziej sensowne rozwiązanie to podam je od razu.

Podobne tematy

  1. Jak wstawić moduł do każdej strony artykułu?
    przez ebialystok na forum Administracja - ogólne
    Odpowiedzi: 5
    Ostatni post/autor: 06-12-2009, 17:07
  2. Wstawić phpbb do strony joomla
    przez Pierriere na forum Szablony, wygląd, formatowanie
    Odpowiedzi: 0
    Ostatni post/autor: 17-10-2009, 14:09
  3. Jak wstawić plik
    przez Daver na forum Artykuły: aktualności, komentarze
    Odpowiedzi: 0
    Ostatni post/autor: 11-02-2009, 16:59
  4. jak tu wstawić flasha???
    przez Sterydziomal na forum Szablony graficzne
    Odpowiedzi: 5
    Ostatni post/autor: 04-03-2008, 16:52
  5. Brandmark - Jak wstawić??
    przez look na forum Administracja Joomla!
    Odpowiedzi: 0
    Ostatni post/autor: 24-07-2007, 13:26

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •