Σελίδα 1 από 2

Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 19 Μάιος 2020, 15:00
από Alex Golemis
Παρατηρήθηκε οτι το xml που παραγεται απο το Google Base Feed έχει σφάλμα τουλάχιστον στο πεδίο g:price, όπου εμφανίζει τη τιμή χωρίς το currency code που είναι υποχρεωτικό με αποτέλεσμα να πετάει σφάλαμα στο Google Merchant Center (see attached image).

Στο google_base.php υπάρχει ο παρακάτω κώδικας
Κώδικας: Επιλογή όλων
						
$currencies = array('USD','EUR','GBP');

						if (in_array($this->session->data['currency'], $currencies)) {
							$currency_code = $this->session->data['currency'];
							$currency_value = $this->currency->getValue($this->session->data['currency']);
						} else {
							$currency_code = 'USD';
							$currency_value = $this->currency->getValue('USD');
						}

						if ((float)$product['special']) {
							$output .= '  <g:price>' .  $this->currency->format($this->tax->calculate($product['special'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
						} else {
							$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
						}
στον οποίο φαίνεται να υπάρχει το currency_code
Κώδικας: Επιλογή όλων
         ...<g:identifier_exists>false</g:identifier_exists>
         <g:price>9.2</g:price>
         <g:google_product_category>536</g:google_product_category>...

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 22 Μάιος 2020, 22:09
από Alexandra
Καλησπέρα,

Στο αρχείο catalog/controller/extension/feed/google_base.php

τη γραμμή 80
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' .  $this->currency->format($this->tax->calculate($product['special'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
κάνε την
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . ' ' . $currency_code . '</g:price>';
τη γραμμή 82
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
κάνε την
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . ' ' . $currency_code . '</g:price>';

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 25 Μάιος 2020, 17:24
από Alex Golemis
Ευχαριστώ για την απάντηση. Δούλεψε μια χαρα η αλλαγή που πρότεινες.
Παρατήρησα επίσης ότι από το Google Merchant Center έχει μια ρύθμιση για ορισμό Default Currency. Αφότου την άλλαξα πέρασε το review. Αφήνω όμως και την αλλαγή που πρότεινες για να είμαι σίγουρος.

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 25 Μάιος 2020, 21:36
από Alexandra
Το default curency ορίζει το νόμισμα υπολογισμού της τιμής. Η αλλαγή που σου πρότεινα χρειάζεται για την εμφάνιση του κωδικού του νομίσματος πχ EUR μετά την τιμή σύμφωνα με το implementation του Feed της google.

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 10 Ιουν 2020, 11:16
από Alex Golemis
Google Feed συνέχεια..Παρατήρησα ότι δεν ενημερώνεται. Το feed εχει 60 προϊόντα ενώ το eshop 500. Καμιά ιδέα??

*ενημέρωση: Κάνοντας link τις κατηγορίες του eshop με τις κατηγορίες της google άρχισε να εμφανίζει και τα υπόλοιπα προϊόντα. Όταν μπήκαν όλες οι κατηγορίες συνεχίζει να έχει κάποια διαφορά με τα προϊόντα του καταλόγου.

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 10 Ιουν 2020, 20:10
από Alexandra
Σε αυτό δεν μπορώ να σε βοηθήσω χωρίς να έχω εικόνα του συστήματος.

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 12 Ιουν 2020, 12:24
από Alex
Καλησπέρα! Δουλεύω μαζί με τον @Alex Golemis στο προτζεκτ. Αυτη την στιγμη δεν φορτωνει στο feed περιπου 40 απο τα 620 προιοντα.
2 ερωτήσεις:
1. υπάρχει περίπτωση να δυσκολεύετε να φορτώσει όλα τα προϊόντα λόγω μνήμης; Εννοώ να κοιτάξουμε στο server εαν μπορει να γινει allocate περισσοτερη μνημη στην php;
2. υπάρχει περίπτωση να δυσκολεύετε να φορτώσει συγκεκριμένα προϊόντα λόγω των data που εχουμε περασει σε αυτα;

Έχετε συναντήσει κάποια περίπτωση που να συμβαίνει κάτι από τα παραπάνω;

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 12 Ιουν 2020, 12:52
από Alexandra
Καλημέρα,

Το πρώτο δεν μπορεί να ισχύει γιατί αν είχατε θέμα μνήμης ή timeout δεν θα ολοκληρωνόταν σωστά το script και δεν θα παρήγαγε το XML που αυτό με τη σειρά του θα εμφανιζόταν στα error logs. Για το δεύτερο αν δεν έχω εικόνα του τι στέλνετε δεν μπορώ εκφέρω άποψη.

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 14 Ιαν 2021, 14:22
από htwp
Αλεξάνδρα καλησπέρα,

παρατήρησα λίγο τις αλλαγές και είδα πως για την γραμμή 80 που έχει:
tax->calculate($product['special'], $product['tax_class_id'])
το αντικαθιστάς με
tax->calculate($product['price'], $product['tax_class_id'])

είναι σωστό;
Alexandra έγραψε: 22 Μάιος 2020, 22:09 Καλησπέρα,

Στο αρχείο catalog/controller/extension/feed/google_base.php

τη γραμμή 80
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' .  $this->currency->format($this->tax->calculate($product['special'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
κάνε την
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . ' ' . $currency_code . '</g:price>';
τη γραμμή 82
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . '</g:price>';
κάνε την
Κώδικας: Επιλογή όλων
$output .= '  <g:price>' . $this->currency->format($this->tax->calculate($product['price'], $product['tax_class_id']), $currency_code, $currency_value, false) . ' ' . $currency_code . '</g:price>';

Re: Εμφάνιση currency code σε Google Base Feed

Δημοσιεύτηκε: 14 Ιαν 2021, 16:10
από Alexandra
Ναι, είναι λάθος, στην γραμμή 80 πρέπει να είναι special.