• Home
  • /Blog
  • /Χρήσιμες συνθήκες PHP για να δημιουργήσετε ένα νέο πρότυπο Joomla!
Χρήσιμες συνθήκες PHP για να δημιουργήσετε ένα νέο πρότυπο Joomla!

Χρήσιμες συνθήκες PHP για να δημιουργήσετε ένα νέο πρότυπο Joomla!

Εάν θέλετε να φορτώσετε ένα module, ένα script, ή ένα css αρχείο, σε μια συγκεκριμένη θέση στην ιστοσελίδα σας,  δείτε παρακάτω πως μπορείτε να το πραγματοποιήσετε με την βοήθεια της PHP.

Root directory

Ο κωδικός αυτός καλεί το ριζικό φάκελο του Joomla σας  <?php echo $this->baseurl ?>

Επιλογές σελίδας

  1. <?php $pageoption1 = JRequest::getVar( ‘Itemid’, » ); $pageoption2 = JRequest::getVar( ‘page’, » ); $pageoption3 = JRequest::getVar( ‘option’, » ); ?>

 


Ο παραπάνω κώδικας μπορεί να πάρει τρία ορίσματα: $pageoption1$pageoption2 ή $pageoption3

Για να τον χρησιμοποιήσετε στο template σας,  πρέπει να εισάγετε τον κώδικα στο < head>  κομμάτι της σελίδας.

Εάν θέλετε να εμφανίσετε ένα στοιχείο μόνο συγκεκριμένο Menu ID τότε γράφετε:

$pageoption1

Παράδειγμα συνδέσμου: index.php?option=com_content&view=article&id=34&Itemid=1&lang=bg

  1. <?php if ($pageoption1 == ‘1’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο στη σελίδα με Menu Item ID 1
  3. <?php } ?>
  1. <?php if (($pageoption1 == ‘1’) OR (($pageoption1 == ‘2’)) OR (($pageoption1 == ‘3’)) OR (($pageoption1 == ’12’))) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο στη σελίδα με ID 1,2,3 ή 12
  3. <?php } ?>
  1. <?php if ($pageoption1 == ‘1’)
  2. {echo ‘<div id=»my_div_one»></div>‘; }
    else { echo ‘<div id=»my_div_two»></div>‘; }
  3. ?>

 


Εάν είμαστε στο  menu ID 1, τότε θα δούμε <div id=»my_div_one»></div>

εάν είμαστε σε κάποιο άλλο Menu ID τότε θα δούμε<div id=»my_div_two»></div>

$pageoption2

Παράδειγμα συνδέσμου: index.php?page=shop.product_details&category_id=1&flypage=flypage.tpl&product_id=1&option=com_virtuemart&Itemid=1

  1. <?php if ($pageoption2 == ‘shop.product_details’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό στη σελίδα προϊώντων του Virtuemart
  3. <?php } ?>
  1. <?php if (($pageoption2 == ‘shop.cart’) OR (($pageoption2 == ‘checkout.index’)) OR (($pageoption2 == ‘checkout.thankyou’))) { ?>
  2. Αυτό το κείμενο θα είναι ορατό στις σελίδες του Virtuemart: «The Cart», «Checkout» and «Thank you page».
  3. <?php } ?>

 

$pageoption3

Παράδειγμα συνδέσμου: index.php?option=com_content&view=article&id=1&Itemid=1&lang=bg

  1. <?php if ($pageoption3 == ‘com_content’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν πλοηγούμαστε σε Joomla! content.
  3. <?php } ?>

 

Αρχική Σελίδα

Το Joomla μας επιτρέπει να ορίσουμε ένα από τα στοιχεία του μενού μας σαν αρχική σελίδα του site μας.

Για να λειτουργήσει αυτό θα πρέπει να τοποθετήσουμε τον παρακάτω κώδικα στο < head> κομμάτι της σελίδας:

  1. <?php
  2. $defaultMenu = JFactory::getApplication()->getMenu()->getDefault()->id;
  3. $currentMenu = JFactory::getApplication()->getMenu()->getActive()->id;
  4. if($defaultMenu == $currentMenu){
  5. $homePage = true;
  6. }else{
  7. $homePage = false;
  8. }
  9. ?>

Τώρα μπορούμε να χρησιμοποιήσουμε αυτό:

  1. <?php if($homePage == true): ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο στην αρχική (Default) σελίδα του site μας
  3. <?php endif; ?>

Ή αυτό:

  1. <?php
  2. if ($homePage == true) {
  3. echo «Εάν είμαστε στην αρχική σελίδα αυτό το κείμενο θα είναι ορατό»;
  4. } elseif ($homePage == false) {
  5. echo «Σε οποιαδήποτε άλλη περίπτωση αυτό το κείμενο θα είναι ορατό»;
  6. }
  7. ?>

 

Γλώσσες

Παράδειγμα συνδέσμου: index.php?option=com_content&view=article&id=1&Itemid=1&lang=bg

  1. <?php if($this->language == «el-gr») { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν η γλώσσα του site μας είναι Ελληνικά
  3. <?php } ?>

  1. <?php if($this->language == «en-gb») { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν η γλώσσα του site μας είναι Αγγλικά
  3. <?php } ?>

 


Μπορούμε επίσης να συνδυάσουμε τους παραπάνω κώδικες:

  1. <?php if ($pageoption1 == ‘1’) { ?>
  2. <?php if($this->language == «el-gr») { ?>
  3. Αυτό το κείμενο θα είναι ορατό μόνο αν το menu έχει ID 1 και η τρέχουσα γλώσσα του site μας είναι τα Ελληνικά.
  4. <?php } ?>
  5. <?php } ?>

 

Joomla άρθρα, ενότητες, κατηγορίες & άλλα

  1. <?php if (JRequest::getVar(‘view’)==’article’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν πλοηγούμαστε σε άρθρο
  3. <?php } ?>

 


  1. <?php if (JRequest::getVar(‘view’)==’frontpage’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν πλοηγούμαστε στη frontpage
  3. <?php } ?>

  1. <?php if (JRequest::getVar(‘view’)==’section’) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν πλοηγούμαστε σε διάταξη ενότητας
  3. <?php } ?>

  1. <?php if (JRequest::getVar(‘view’)==’section’ && JRequest::getVar(‘id’)==1) { ?>
  2. Αυτό το κείμενο θα είναι ορατό μόνο αν πλοηγούμαστε σε κάποια ενότητα με συγκεκριμένο ID
  3. <?php } ?>

 

by Creationweb