Custom Module στο Joomla 1.5.x

Joomla! Extensions (Components, Modules, Plugins)

Συντονιστές: Super-Moderators, WebDev Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
The Razor
Δημοσιεύσεις: 1940
Εγγραφή: 10 Φεβ 2007 12:37
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από The Razor » 12 Ιαν 2009 11:58

Σε αυτό το βοήθημα θα μάθουμε πως θα βάλουμε ένα custom module στο joomla 1.5.x δηλάδή ένα "δικό μας" position για το module (εκτός απο το προυπαρχοντα user1,header,footer,breadcrumbs,top,left,right κτλ.)

1.Πρώτα θα επεξεργαστούμε το index.php του template που χρησιμοποιούμε απο το admin panel
template manager ---> προεπιλεγμένο template (πχ ja purity) ---> edit html

2.Eκεί θα βρούμε το μέρος όπου θέλουμε να μπεί το module (πχ πριν τα αρθρα)
και θα βάλουμε τον παρακάτω κώδικα:

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#58; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div><?php endif; ?>
3.Αφού το κάναμε αυτό και το βάλαμε στην σωστή θέση, θα επεξεργαστούμε το templatedetails.xml στον φάκελο του template με έναν text editor και αφού βρούμε κωδικα του τύπου:

Κώδικας: Επιλογή όλων

		<position>user1</position>
Θα βάλουμε απο κάτω τον δικό μας κώδικα:

Κώδικας: Επιλογή όλων

		<position>το όνομα του module</position>
4.Το ανεβάζουμε στον server και όλα είναι έτοιμα! Τώρα όταν αποθηκεύετε ένα module θα το βάζετε όπου έσεις θελετε και όχι στις προεπιλεγμένες θέσεις του template

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από Basilakis » 12 Ιαν 2009 12:28

Nice nice :D

Keep going with Joomla ;D

Sklhros
Δημοσιεύσεις: 3
Εγγραφή: 09 Μαρ 2009 22:17
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από Sklhros » 09 Μαρ 2009 22:23

The Razor έγραψε:Σε αυτό το βοήθημα θα μάθουμε πως θα βάλουμε ένα custom module στο joomla 1.5.x δηλάδή ένα "δικό μας" position για το module (εκτός απο το προυπαρχοντα user1,header,footer,breadcrumbs,top,left,right κτλ.)

1.Πρώτα θα επεξεργαστούμε το index.php του template που χρησιμοποιούμε απο το admin panel
template manager ---> προεπιλεγμένο template (πχ ja purity) ---> edit html

2.Eκεί θα βρούμε το μέρος όπου θέλουμε να μπεί το module (πχ πριν τα αρθρα)
και θα βάλουμε τον παρακάτω κώδικα:

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#58; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div><?php endif; ?>
3.Αφού το κάναμε αυτό και το βάλαμε στην σωστή θέση, θα επεξεργαστούμε το templatedetails.xml στον φάκελο του template με έναν text editor και αφού βρούμε κωδικα του τύπου:

Κώδικας: Επιλογή όλων

		<position>user1</position>
Θα βάλουμε απο κάτω τον δικό μας κώδικα:

Κώδικας: Επιλογή όλων

		<position>το όνομα του module</position>
4.Το ανεβάζουμε στον server και όλα είναι έτοιμα! Τώρα όταν αποθηκεύετε ένα module θα το βάζετε όπου έσεις θελετε και όχι στις προεπιλεγμένες θέσεις του template
Καλησπέρα εγώ χρησιμοποιώ ένα template με λίγες θέσεις....
Δεν καταλαβαίνω σε ποιο σημείο του κώδικα πρέπει να κανω paste τον παραπάνω κώδικα....
αλλά ακόμα και όταν τον κανω καπου τυχαία το templatedetails.xml δε μου εμφανίζει καμία θέση του τύπου <position>user1</position> .....

αν μπορούσες να δώσεις κάποιες επιπλέον πληροφορίες θα ήταν ευχάριστο....
1000000000000000000000000000000000000000 myges den mporei na kanoun lathos....fae kai sy s**t*!!!!


Sklhros
Δημοσιεύσεις: 3
Εγγραφή: 09 Μαρ 2009 22:17
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από Sklhros » 09 Μαρ 2009 22:43

χρησιμοποιώ το siteground-j15-71 template...και δεν την εχει...μα τόσο γκαντέμης πια????...

αν κοιτάξω ένα αλλο template και δω που την έχει αντίστοιχα μπορώ να την τοποθετήσω εγώ η' να κανω κατι???....και αν μπορώ μπορεις σε παρακαλω να μου πεις που να κανω paste τον πρωτο κωδικα που λες για να εμφανίσω θέση στο κεντρο της σελιδας????....εκει που εμφανιζονται τα αρθρα ας πούμε???
1000000000000000000000000000000000000000 myges den mporei na kanoun lathos....fae kai sy s**t*!!!!


Sklhros
Δημοσιεύσεις: 3
Εγγραφή: 09 Μαρ 2009 22:17
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από Sklhros » 09 Μαρ 2009 23:36

Καπου πριν το content δλδ???...οπου να ναι????...οταν λες ''Eκεί θα βρούμε το μέρος όπου θέλουμε να μπεί το module (πχ πριν τα αρθρα)
και θα βάλουμε τον παρακάτω κώδικα'' που το εννοεις??
1000000000000000000000000000000000000000 myges den mporei na kanoun lathos....fae kai sy s**t*!!!!

Άβαταρ μέλους
ZoiSpa
Δημοσιεύσεις: 32
Εγγραφή: 18 Αύγ 2010 22:59
Τοποθεσία: Αθήνα
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από ZoiSpa » 20 Αύγ 2010 04:08

Επειδή όπως και ο φίλος Sklhros και γω δεν μπορώ να καταλάβω που να βάλω τους κώδικες που δίνεις....κάνε μου την χάρη και βάλτα εσυ :

Κώδικας: Επιλογή όλων

<?php
defined&#40;'_JEXEC'&#41; or die&#40;'Restricted access'&#41;; // no direct access
require_once dirname&#40;__FILE__&#41; . DIRECTORY_SEPARATOR . 'functions.php';
$document = null;
if &#40;isset&#40;$this&#41;&#41;
  $document = & $this;
$baseUrl = $this->baseurl;
$templateUrl = $this->baseurl . '/templates/' . $this->template;
artxComponentWrapper&#40;$document&#41;;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml" xml&#58;lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
 <head>
  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<jdoc&#58;include type="head" />
  <link rel="stylesheet" href="<?php echo $this->baseurl; ?>/templates/system/css/system.css" type="text/css" />
  <link rel="stylesheet" href="<?php echo $this->baseurl; ?>/templates/system/css/general.css" type="text/css" />

  <link rel="stylesheet" type="text/css" href="<?php echo $templateUrl; ?>/css/template.css" />
  <!--&#91;if IE 6&#93;><link rel="stylesheet" href="<?php echo $templateUrl; ?>/css/template.ie6.css" type="text/css" media="screen" /><!&#91;endif&#93;-->
  <!--&#91;if IE 7&#93;><link rel="stylesheet" href="<?php echo $templateUrl; ?>/css/template.ie7.css" type="text/css" media="screen" /><!&#91;endif&#93;-->
  <script type="text/javascript" src="<?php echo $templateUrl; ?>/script.js"></script>
 </head>
<body>
<div id="art-main">
<div class="art-Sheet">
    <div class="art-Sheet-body">
<div class="art-Header">
    <div class="art-Header-jpeg"></div>

</div>
<jdoc&#58;include type="modules" name="user3" />
<jdoc&#58;include type="modules" name="banner1" style="artstyle" artstyle="art-nostyle" />
<?php echo artxPositions&#40;$document, array&#40;'top1', 'top2', 'top3'&#41;, 'art-block'&#41;; ?>
<div class="art-contentLayout">
<?php if &#40;artxCountModules&#40;$document, 'left'&#41;&#41; &#58; ?>
<div class="art-sidebar1"><?php echo artxModules&#40;$document, 'left', 'art-block'&#41;; ?>
</div>
<?php endif; ?>
<div class="art-<?php echo artxGetContentCellStyle&#40;$document&#41;; ?>">

<?php
  echo artxModules&#40;$document, 'banner2', 'art-nostyle'&#41;;
  if &#40;artxCountModules&#40;$document, 'breadcrumb'&#41;&#41;
    echo artxPost&#40;null, artxModules&#40;$document, 'breadcrumb'&#41;&#41;;
  echo artxPositions&#40;$document, array&#40;'user1', 'user2'&#41;, 'art-article'&#41;;
  echo artxModules&#40;$document, 'banner3', 'art-nostyle'&#41;;
?>
<?php if &#40;artxHasMessages&#40;&#41;&#41; &#58; ?><div class="art-Post">
    <div class="art-Post-tl"></div>
    <div class="art-Post-tr"></div>
    <div class="art-Post-bl"></div>
    <div class="art-Post-br"></div>
    <div class="art-Post-tc"></div>
    <div class="art-Post-bc"></div>
    <div class="art-Post-cl"></div>
    <div class="art-Post-cr"></div>
    <div class="art-Post-cc"></div>
    <div class="art-Post-body">
<div class="art-Post-inner">
<div class="art-PostContent">

<jdoc&#58;include type="message" />

</div>
<div class="cleared"></div>

</div>

		<div class="cleared"></div>
    </div>
</div>
<?php endif; ?>
<jdoc&#58;include type="component" />

<?php echo artxModules&#40;$document, 'banner4', 'art-nostyle'&#41;; ?>
<?php echo artxPositions&#40;$document, array&#40;'user4', 'user5'&#41;, 'art-article'&#41;; ?>
<?php echo artxModules&#40;$document, 'banner5', 'art-nostyle'&#41;; ?>
</div>
<?php if &#40;artxCountModules&#40;$document, 'right'&#41;&#41; &#58; ?>
<div class="art-sidebar2"><?php echo artxModules&#40;$document, 'right', 'art-block'&#41;; ?>
</div>
<?php endif; ?>

</div>
<div class="cleared"></div>

<?php echo artxPositions&#40;$document, array&#40;'bottom1', 'bottom2', 'bottom3'&#41;, 'art-block'&#41;; ?>
<jdoc&#58;include type="modules" name="banner6" style="artstyle" artstyle="art-nostyle" />
<div class="art-Footer">
 <div class="art-Footer-inner">
  <?php echo artxModules&#40;$document, 'syndicate'&#41;; ?>
  <div class="art-Footer-text">
  <?php if &#40;artxCountModules&#40;$document, 'copyright'&#41; == 0&#41;&#58; ?>
<p>Copyright &copy; 2009 ---.<br />
All Rights Reserved.</p>

  <?php else&#58; ?>
  <?php echo artxModules&#40;$document, 'copyright', 'art-nostyle'&#41;; ?>
  <?php endif; ?>
  </div>
 </div>
 <div class="art-Footer-background"></div>
</div>

		<div class="cleared"></div>
    </div>
</div>
<div class="cleared"></div>
<p class="art-page-footer">Designed by zoispa.</p>
</div>

</body> 
</html>
Κύττα να μην μου το κάνεις μπάχαλο μόνο.... :force:

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από korgr » 20 Αύγ 2010 09:07

Συγνωμη για ενα μικρο offtopic αλλα θα ηθελα να ρωτησω αν υπαρχει συγκεκριμενος λογος για την συνταξη των if στα joomla templates.
Δηλαδη το

Κώδικας: Επιλογή όλων

<?php if &#40;artxCountModules&#40;$document, 'right'&#41;&#41; &#58; ?> 
<div class="art-sidebar2"><?php echo artxModules&#40;$document, 'right', 'art-block'&#41;; ?> 
</div> 
<?php endif; ?>
θα μπορουσε να συνταχθει με την κλασσικη μεθοδο;

Κώδικας: Επιλογή όλων

<?php
if &#40;artxCountModules&#40;$document, 'right'&#41;&#41; &#123;
?> 
<div class="art-sidebar2"><?php echo artxModules&#40;$document, 'right', 'art-block'&#41;; ?> 
</div> 
<?php 
&#125;
?>

Άβαταρ μέλους
ZoiSpa
Δημοσιεύσεις: 32
Εγγραφή: 18 Αύγ 2010 22:59
Τοποθεσία: Αθήνα
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από ZoiSpa » 20 Αύγ 2010 09:22

:roll: θα σε γελάσω...είμαι ασχετη από προγραμματισμό....τα templates μου τα φτιάχνω με το artisteer .... :wink:

alou
Script Master
Δημοσιεύσεις: 1374
Εγγραφή: 24 Αύγ 2007 19:52
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από alou » 23 Αύγ 2010 17:30

korgr έγραψε:Συγνωμη για ενα μικρο offtopic αλλα θα ηθελα να ρωτησω αν υπαρχει συγκεκριμενος λογος για την συνταξη των if στα joomla templates.
Ο συγκεκριμένος κώδικας παράγεται από ένα πρόγραμμα για να φτιάχνεις template χωρίς να γράψεις ούτε ένα τάγκ οπότε προφανώς είναι ανούσια πολύπλοκος, όμως η ερώτησή σου αφορά και την κλασσική σύνταξη, π.χ. από το παράδειγμά του The Razor:

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#58; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div><?php endif; ?>
θα μπορούσε ενδοχομένως να είναι

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#123; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div>
<?php 
&#125; 
?>
και ναι, μια χαρά δουλεύει και έτσι βέβαια καθώς το έχω δοκιμάσει. Φαντάζομαι ότι υπερίσχυσε ο πρώτος τρόπος για λόγους ευκολίας και τυποποίησης κάποιων standards που θα κάνουν ευκολότερες τις αναβαθμίσεις.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από korgr » 24 Αύγ 2010 00:05

thanks alou :)

Άβαταρ μέλους
pasxal
Δημοσιεύσεις: 83
Εγγραφή: 16 Απρ 2010 04:39

Custom Module στο Joomla 1.5.x

Δημοσίευση από pasxal » 24 Αύγ 2010 01:07

Δεν ξέρω αν το έχουν κάνει για αυτό τον λόγο αλλά αυτή η σύνταξη είναι καλύτερη από πλευράς απόδοσης.
Μιλάμε για απειροελάχιστες διαφορές που φαίνονται μόνο σε πολύ μεγάλα sites. πχ facebook.

Offtopic ->Τώρα που είπα για facebook έχει δοκιμάσει κανείς το hip hop;

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από cpulse » 24 Αύγ 2010 17:41

Αυτό το συντακτικό είναι της PHP2 ή PHP3

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#58; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div><?php endif; ?>
--

Αυτό το συντακτικό είναι της PHP4+

Κώδικας: Επιλογή όλων

<?php if &#40;$this->countModules&#40;'το όνομα του module&#41;&#41; &#123; ?>
    <div>
        <jdoc&#58;include type="modules" name="το όνομα του module" style="xhtml" />
    </div>
<?php 
&#125; 
?>
Πέρα από αυτό, μάλλον για να διαβάζεται καλύτερα το γράφουν με το παλιό συντακτικό. Αν και κατα την γνώμη μου κανένα από τα δύο δεν διαβάζεται καλά.

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Custom Module στο Joomla 1.5.x

Δημοσίευση από cpulse » 24 Αύγ 2010 17:50

Νομίζω ο τίτλος αυτής της συζήτησης δεν είναι σωστός.
Θα έπρεπε να είναι Custom Position, όχι Custom Module.

Απάντηση

Επιστροφή στο “Joomla! Extensions (Components, Modules, Plugins)”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες