Affichage en front-end d'un produit non publié

  • Posts: 211
  • Thank you received: 9
4 years 3 months ago #322848

-- url of the page with the problem -- : nwd2.cloudaccess.host/produits-comtois
-- HikaShop version -- : 4.3.0
-- Joomla version -- : 3.9.20

Bonjour,

Avant de publier sur le site un nouveau produit, est-il possible de l'afficher pour validation avant publication.
J'ai essayé d'afficher un produit non publié, en me connectant an tant que super admin, sans succès.
Cette demande est assez importante car nous développons un process qui se déclenche dès la publication d'un produit.
Merci d'avance.
Salutations.

Please Log in or Create an account to join the conversation.

  • Posts: 82867
  • Thank you received: 13373
  • MODERATOR
4 years 3 months ago #322861

Bonjour,

Il n'y a pas d'option pour cela. L'affichage d'un produit non publié est complètement bloqué sur le frontend.
Pour changer cela, il faudrait changer le code:

$filters = array(
			'pr.product_id = ' . $product_id,
			'pr.product_related_type = ' . $database->Quote('options'),
			'p.product_published = 1',
			'(p.product_sale_start = \'\' OR p.product_sale_start <= '.time().')',
			'(p.product_sale_end = \'\' OR p.product_sale_end > '.time().')'
		);
en:
$filters = array(
			'pr.product_id = ' . $product_id,
			'pr.product_related_type = ' . $database->Quote('options'),
			'(p.product_sale_start = \'\' OR p.product_sale_start <= '.time().')',
			'(p.product_sale_end = \'\' OR p.product_sale_end > '.time().')'
		);
if(!$is_admin) $filters[] = 'p.product_published = 1';
dans le fichier components/com_hikashop/views/product/view.html.php sachant qu'il faut définir $is_admin à true ou false en fonction de la situation (genre en vérifiant les groupes utilisateur de l'utilisateur en cours).

The following user(s) said Thank You: NosyWeb

Please Log in or Create an account to join the conversation.

  • Posts: 211
  • Thank you received: 9
4 years 3 months ago #322868

Merci Nicolas, je transmets à notre développeur.
Bonne journée.

The following user(s) said Thank You: Philip

Please Log in or Create an account to join the conversation.

  • Posts: 211
  • Thank you received: 9
4 years 3 months ago #322976

Bonjour Nicolas,
(c'est Marc)

J'ai tenté d'appliquer la soluce ci-dessus, mais ca ne semble pas avoir d'effet !?
Dans notre cas, nous avons besoin qu'un admin puisse voir en front tous ses produits (même si dépubliés)
1- dans la liste des produits d'une categorie
2- et aussi dans le detail de la fiche produit

Pour le point 1, j'ai une solution en ajoutant un plugin sur l'event de la view product :
$app->triggerEvent( 'onBeforeProductListingLoad', array( & $filters, & $order, & $view, & $select, & $select2, & $a, & $b, & $on) );
et en modifiant le $filters dans le plugin (puisque passé par référence).

Pour le point 2, la solution proposée ne semble pas marcher.
Il semble que Hikashop renvoie vers la page 404, avant d'accéder à la view, comme si un controle Hikashop detectait que le produit est dépublié et donc pas accessible !?
- as-tu une suggestion pour pour m'aider a trouver le code qui effectue cette redirection 404 ?

Merci d'avance.

Last edit: 4 years 3 months ago by NosyWeb.

Please Log in or Create an account to join the conversation.

  • Posts: 82867
  • Thank you received: 13373
  • MODERATOR
4 years 3 months ago #322983

Bonjour,

Le soucis n'est pas la redirection 404.
Elle est effectuée par le code:

if(empty($this->element)) {
	if($this->config->get('404_when_product_not_found',1)){
		throw new Exception(JText::_('PRODUCT_NOT_FOUND'), 404);
		echo '</div>';
		return;
	}
	$app->enqueueMessage(JText::_('PRODUCT_NOT_FOUND'));
	hikashop_setPageTitle(JText::_('PRODUCT_NOT_FOUND'));
	echo '</div>';
	return;
}
dans product / show.php car les données du produit demandé n'ont pas pu être chargées dans le view.html.php
Donc à mon avis, le soucis c'est que la valeur de $is_admin dans mon exemple de code à modifier n'a pas été initialisée correctement auparavant.

Please Log in or Create an account to join the conversation.

Time to create page: 0.066 seconds
Powered by Kunena Forum