Page 1 of 1

Προσθήκη custom πεδιου στο ειδος

Posted: Tue Jan 07, 2014 2:42 am
by evagelos_21
Γεια σας παιδιά,
Θα ήθελα στο ειδος να προσθέσω ενα custom πεδίο κατω ακριβώς απο εκεί που δειχνει την τιμή.
Το πεδίο έχει το ονομα "custom_price"
Για να το καλέσω στο "product.tpl" αρχείο πως το "ζητάω";
ενα $custom_price αρκεί ή πρέπει να κανω καποιο sql για να το καλέσω;
πχ:

Code: Select all

<?php 		  
  $query = mysql_query("SELECT p.sku 
  from " . DB_PREFIX . "product p
  where p.model = '". $model ."'"
  );
	  
  while($row=mysql_fetch_assoc($query)){
  $my_sku = $row['sku'];
  }
  echo $my_sku
  
?>
κατι πιο απλό ισως;

Re: Προσθήκη custom πεδιου στο ειδος

Posted: Tue Jan 07, 2014 8:06 pm
by People's Code
Το opencart έχει σχεδιαστεί με τη λογική model–view–controller. Ενώ μπορείς να δημιουργήσεις τα δικά σου queries, η σωστότερη μέθοδος είναι να επικοινωνείς με τη βάση μέσω του class που διαθέτει το opencart πχ $query = $this->db->query("SELECT * FROM μπλα μπλα ....") από το model και ενίοτε από το controller (αν δεν υπάρχει έτοιμο model και δεν θέλεις να προσθέσεις δικό σου). Έτσι χρησιμοποιείς πάντα και το κατάλληλο driver.

Εχεις δύο επιλογές:
α. Να χρησιμοποιήσεις κάποιο έτοιμο πεδίο του προϊόντος που δεν το χρησιμοποιείς ήδη και να μετονομάσεις μόνο τον τίτλο που θες να εμφανίζεται στο template από τα αρχεία γλώσσας. Αν αυτό το πεδίο υπάρχει στη βάση, αλλά δεν εμφανίζεται στο template (πχ JAN), πρέπει να το δηλώσεις στο controller (product.php) σε array
πχ $this->data['jan'] = $product_info['jan'];
για να το καλέσεις από το view (product.tpl)
πχ <?php echo $sku ?>

Διάβασε κι αυτά:
http://docs.opencart.com/display/openca ... n+to+MVC-L
http://docs.opencart.com/display/openca ... controller

β. Να φτιάξεις νέο δικό σου πεδίο στη βάση και να προσθέσεις τον κατάλληλο κώδικα σε model (το query ή προσθήκη σε υπάρχον query) /view (όπως παραπάνω) / controller (όπως παραπάνω) + language (κάποιο κείμενο περιγραφής του νέου πεδίου στο template).