Date de modification d'un article
12 messages
• Page 1 sur 1
Date de modification d'un article
Cher Papa Noël Imaxine, pourrais-tu mettre à mon sapin un code me permettant d'avoir une nouvelle colonne coté admin pour les articles dans laquelle serait affichée la date de dernière modification du produit ?
Un grand merci d'avance pour ta gentillesse.
Un grand merci d'avance pour ta gentillesse.
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
Re: Date de modification d'un article
Je présume que tu désires avoir cette colonne dans la liste de produits (product_list.php), n'est-ce pas ?
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Dans le fichier admin/controller/catalog/product.php
Chercher (ligne 382) :
Dans le fichier admin/language/french/catalog/product.php
Chercher (ligne 24) :
Dans le fichier admin/model/catalog/product.php
Chercher (ligne 395) :
Dans le fichier admin/view/template/catalog/product_list.tpl
Chercher (ligne 46 à 50) :
Je n'ai pas créé de zone de filtre car inutile. La date de modification étant mise en forme comme cela (2011-11-09 05:26:41), le filtrage ne peut se faire. Par contre on peut utiliser le tri par ordre.
Voila, je te laisse le soin maintenant de créer le fichier XML pour vQmod, que tu mettras dans ces forums, j'en suis sûr.
PS : Et moi, j'ai quoi sous le sapin,......des épines ?
Chercher (ligne 382) :
- Code: Tout sélectionner
'status' => ($result['status'] ? $this->language->get('text_enabled') : $this->language->get('text_disabled')),
- Code: Tout sélectionner
'date_modified' => $result['date_modified'],
- Code: Tout sélectionner
$this->data['column_status'] = $this->language->get('column_status');
- Code: Tout sélectionner
$this->data['column_date_modified'] = $this->language->get('column_date_modified');
- Code: Tout sélectionner
$this->data['sort_status'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.status' . $url, 'SSL');
- Code: Tout sélectionner
$this->data['sort_date_modified'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.date_modified' . $url, 'SSL');
Dans le fichier admin/language/french/catalog/product.php
Chercher (ligne 24) :
- Code: Tout sélectionner
$_['column_status'] = 'État';
- Code: Tout sélectionner
$_['column_date_modified'] = 'Date de modification';
Dans le fichier admin/model/catalog/product.php
Chercher (ligne 395) :
- Code: Tout sélectionner
'p.status',
- Code: Tout sélectionner
'p.date_modified',
Dans le fichier admin/view/template/catalog/product_list.tpl
Chercher (ligne 46 à 50) :
- Code: Tout sélectionner
<td class="left"><?php if ($sort == 'p.status') { ?>
<a href="<?php echo $sort_status; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_status; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_status; ?>"><?php echo $column_status; ?></a>
<?php } ?></td>
- Code: Tout sélectionner
<td class="left"><?php if ($sort == 'p.date_modified') { ?>
<a href="<?php echo $sort_date_modified; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_date_modified; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_date_modified; ?>"><?php echo $column_date_modified; ?></a>
<?php } ?></td>
- Code: Tout sélectionner
<td><select name="filter_status">
<option value="*"></option>
<?php if ($filter_status) { ?>
<option value="1" selected="selected"><?php echo $text_enabled; ?></option>
<?php } else { ?>
<option value="1"><?php echo $text_enabled; ?></option>
<?php } ?>
<?php if (!is_null($filter_status) && !$filter_status) { ?>
<option value="0" selected="selected"><?php echo $text_disabled; ?></option>
<?php } else { ?>
<option value="0"><?php echo $text_disabled; ?></option>
<?php } ?>
- Code: Tout sélectionner
<td></td>
- Code: Tout sélectionner
<td class="left"><?php echo $product['status']; ?></td>
- Code: Tout sélectionner
<td class="left"><?php echo $product['date_modified']; ?></td>
Je n'ai pas créé de zone de filtre car inutile. La date de modification étant mise en forme comme cela (2011-11-09 05:26:41), le filtrage ne peut se faire. Par contre on peut utiliser le tri par ordre.
Voila, je te laisse le soin maintenant de créer le fichier XML pour vQmod, que tu mettras dans ces forums, j'en suis sûr.
PS : Et moi, j'ai quoi sous le sapin,......des épines ?
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Oh grand merci pour notre Gourou adoré !
Je vais de suite m'affairer à tenter de réaliser le vqmod correspondant selon ta demande suprême...
Je vais de suite m'affairer à tenter de réaliser le vqmod correspondant selon ta demande suprême...
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
Re: Date de modification d'un article
... et à mettre [Résolu] après test, bien entendu.lordbdp a écrit:Je vais de suite m'affairer à tenter de réaliser le vqmod correspondant...
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Alors quand je lance le fichier xml créé il me dit
N'ayant pas trouvé de tutoriel pour vqmod (les infos sont assez succinctes sur le web) je vous donne le code réalisé :
PS : Papa Noël tu n'auras pas de cadeau puisque c'est toi qui les distribues Mais je demanderais à ton supérieur si on peut obtenir une dérogation
Warning: VQMod script XML syntax does not appear to be valid!
N'ayant pas trouvé de tutoriel pour vqmod (les infos sont assez succinctes sur le web) je vous donne le code réalisé :
- Code: Tout sélectionner
<modification>
<id>Ajout d'une colonne date de modification pour la liste produits coté admin</id>
<version>1.0.0</version>
<vqmver>2.1.2</vqmver>
<author>Imaxine</author>
<file name="admin/controller/catalog/product.php">
<operation>
<search position="after"><![CDATA[
[ 'status' => ($result['status'] ? $this->language->get('text_enabled') : $this->language->get('text_disabled')), ]
]]></search>
<add><![CDATA[
'date_modified' => $result['date_modified'],
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ $this->data['column_status'] = $this->language->get('column_status'); ]
]]></search>
<add><![CDATA[
$this->data['column_date_modified'] = $this->language->get('column_date_modified');
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ $this->data['sort_status'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.status' . $url, 'SSL'); ]
]]></search>
<add><![CDATA[
$this->data['sort_date_modified'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.date_modified' . $url, 'SSL');
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ $_['column_status'] = 'État'; ]
]]></search>
<add><![CDATA[
$_['column_date_modified'] = 'Date de modification';
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ 'p.status', ]
]]></search>
<add><![CDATA[
'p.date_modified',
]]></add>
</operation>
</file>
<file name="admin/view/template/catalog/product_list.tpl">
<operation>
<search position="after"><![CDATA[
[ <td class="left"><?php if ($sort == 'p.status') { ?>
<a href="<?php echo $sort_status; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_status; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_status; ?>"><?php echo $column_status; ?></a>
<?php } ?></td> ]
]]></search>
<add><![CDATA[
<td class="left"><?php if ($sort == 'p.date_modified') { ?>
<a href="<?php echo $sort_date_modified; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_date_modified; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_date_modified; ?>"><?php echo $column_date_modified; ?></a>
<?php } ?></td>
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ <td><select name="filter_status">
<option value="*"></option>
<?php if ($filter_status) { ?>
<option value="1" selected="selected"><?php echo $text_enabled; ?></option>
<?php } else { ?>
<option value="1"><?php echo $text_enabled; ?></option>
<?php } ?>
<?php if (!is_null($filter_status) && !$filter_status) { ?>
<option value="0" selected="selected"><?php echo $text_disabled; ?></option>
<?php } else { ?>
<option value="0"><?php echo $text_disabled; ?></option>
<?php } ?> ]
]]></search>
<add><![CDATA[
<td></td>
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
[ <td class="left"><?php echo $product['status']; ?></td> ]
]]></search>
<add><![CDATA[
<td class="left"><?php echo $product['date_modified']; ?></td>
]]></add>
</operation>
</file>
</modification>
PS : Papa Noël tu n'auras pas de cadeau puisque c'est toi qui les distribues Mais je demanderais à ton supérieur si on peut obtenir une dérogation
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
Re: Date de modification d'un article
Il est logique qu'il t"affiche cette erreur car :
- tes crochets d'ouverture et de fermeture se trouvent désolidarisés de la commande.
- Tu as des crochets supplémentaires
- Puis tu as omis l'appel de deux fichiers "admin/language/french/catalog/product.php" et "admin/model/catalog/product.php" ce qui entraine que ces modifications sont prises en compte dans le fichier "admin/controller/catalog/product.php".
Compare mon fichier au tien et constateras où se trouve tes erreurs.
Et moi qui voulais éviter de faire le fichier XML, je me le suis coltiné quand même.
- tes crochets d'ouverture et de fermeture se trouvent désolidarisés de la commande.
- Tu as des crochets supplémentaires
- Puis tu as omis l'appel de deux fichiers "admin/language/french/catalog/product.php" et "admin/model/catalog/product.php" ce qui entraine que ces modifications sont prises en compte dans le fichier "admin/controller/catalog/product.php".
Compare mon fichier au tien et constateras où se trouve tes erreurs.
- Code: Tout sélectionner
<modification>
<id>Add Column Date Modified In Product List In Admin.xml</id>
<version>1.0.0</version>
<vqmver>2.1.2</vqmver>
<author>Imaxine</author>
<file name="admin/controller/catalog/product.php">
<operation>
<search position="after"><![CDATA[
'status' => ($result['status'] ? $this->language->get('text_enabled') : $this->language->get('text_disabled')),
]]></search>
<add><![CDATA[
'date_modified' => $result['date_modified'],
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
$this->data['column_status'] = $this->language->get('column_status');
]]></search>
<add><![CDATA[
$this->data['column_date_modified'] = $this->language->get('column_date_modified');
]]></add>
</operation>
<operation>
<search position="after"><![CDATA[
$this->data['sort_status'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.status' . $url, 'SSL');
]]></search>
<add><![CDATA[
$this->data['sort_date_modified'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.date_modified' . $url, 'SSL');
]]></add>
</operation>
</file>
<file name="admin/language/french/catalog/product.php">
<operation>
<search position="after"><![CDATA[
$_['column_status'] = 'État';
]]></search>
<add><![CDATA[
$_['column_date_modified'] = 'Date de modification';
]]></add>
</operation>
</file>
<file name="admin/model/catalog/product.php">
<operation error="skip|abort">
<search position="after"><![CDATA[
if (isset($data['filter_status']) && !is_null($data['filter_status'])) {
$sql .= " AND p.status = '" . (int)$data['filter_status'] . "'";
}
]]></search>
<add><![CDATA[
if (isset($data['filter_date_modified']) && !is_null($data['filter_date_modified'])) {
$sql .= " AND p.date_modified = '" . (int)$data['filter_date_modified'] . "'";
}
]]></add>
</operation>
<operation error="skip|abort">
<search position="after"><![CDATA[
'p.status',
]]></search>
<add><![CDATA[
'p.date_modified',
]]></add>
</operation>
<operation error="skip|abort">
<search position="after"><![CDATA[
if (isset($data['filter_status']) && !is_null($data['filter_status'])) {
$sql .= " AND p.status = '" . (int)$data['filter_status'] . "'";
}
]]></search>
<add><![CDATA[
if (isset($data['filter_date_modified']) && !is_null($data['filter_date_modified'])) {
$sql .= " AND p.date_modified = '" . (int)$data['filter_date_modified'] . "'";
}
]]></add>
</operation>
</file>
<file name="admin/view/template/catalog/product_list.tpl">
<operation error="skip|abort">
<search position="after"><![CDATA[
<td class="left"><?php if ($sort == 'p.status') { ?>
<a href="<?php echo $sort_status; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_status; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_status; ?>"><?php echo $column_status; ?></a>
<?php } ?></td>
]]></search>
<add><![CDATA[
<td class="left"><?php if ($sort == 'p.date_modified') { ?>
<a href="<?php echo $sort_date_modified; ?>" class="<?php echo strtolower($order); ?>"><?php echo $column_date_modified; ?></a>
<?php } else { ?>
<a href="<?php echo $sort_date_modified; ?>"><?php echo $column_date_modified; ?></a>
<?php } ?></td>
]]></add>
</operation>
<operation error="skip|abort">
<search position="after"><![CDATA[
<td><select name="filter_status">
<option value="*"></option>
<?php if ($filter_status) { ?>
<option value="1" selected="selected"><?php echo $text_enabled; ?></option>
<?php } else { ?>
<option value="1"><?php echo $text_enabled; ?></option>
<?php } ?>
<?php if (!is_null($filter_status) && !$filter_status) { ?>
<option value="0" selected="selected"><?php echo $text_disabled; ?></option>
<?php } else { ?>
<option value="0"><?php echo $text_disabled; ?></option>
<?php } ?>
]]></search>
<add><![CDATA[
<td></td>
]]></add>
</operation>
<operation error="skip|abort">
<search position="after"><![CDATA[
<td class="left"><?php echo $product['status']; ?></td>
]]></search>
<add><![CDATA[
<td class="left"><?php echo $product['date_modified']; ?></td>
]]></add>
</operation>
</file>
</modification>
Et moi qui voulais éviter de faire le fichier XML, je me le suis coltiné quand même.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Désolé mais sans tutos c'est un peu la jungle pour en réaliser un nickel du premier coups...
Merci pour ton travail mais ça ne s'affiche pas de mon coté. Je bascule en mode debug pour voir...
Merci pour ton travail mais ça ne s'affiche pas de mon coté. Je bascule en mode debug pour voir...
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
Re: Date de modification d'un article
J'ai modifié le fichier XML, tu peux le reprendre dans le topic précédent.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Désolé mais pas de changements de mon coté. Ca marche chez toi ?
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
Re: Date de modification d'un article
A moitié, y a quand même un problème d'affichage (case tronquée). Souvent ça le fait avec les XML vQmod, je ne sais pas à quoi cela est dû !
Sinon, tu peux modifier les fichiers originaux !
Sinon, tu peux modifier les fichiers originaux !
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Date de modification d'un article
Je n'ai rien peut-être du fait d'avoir la dernière version de vQmod
C'est dommage de ne pas profiter de ce système afin d'éviter de toucher au core. Mais si c'est la seule solution...
Merci encore.
C'est dommage de ne pas profiter de ce système afin d'éviter de toucher au core. Mais si c'est la seule solution...
Merci encore.
Open Cart 1.5.5.1 FR
Hébergement Planethoster
Hébergement Planethoster
-
lordbdp - Messages: 90
- Inscrit le: 11 Oct 2011, 22:36
12 messages
• Page 1 sur 1
Qui est en ligne ?
Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité