PrestaShop / ps_rssfeed

Adds a block displaying a RSS feed.
Academic Free License v3.0
2 stars 4 forks source link

[BOOM-4491] error product rss feed in combination products - remove id_product_attribute from product link #5

Open prestonBot opened 6 years ago

prestonBot commented 6 years ago

This issue has been migrated from the Forge. Read the original ticket here.

The module rss create bad url when the product have combinations.

Install rss feed module.
create a product with combinations
open the product in rss feed (Bad link)

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi gabriel simchuk,

I did not manage to reproduce the issue with the last version : 1.7.2.4
What is the exact version of the module "RSS products feed" did you use ?

Thanks & best regards, Salma

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi salma, 

Fuente de productos RSS

v1.0.1 - de PrestaShop
 
When i create a single product, dont problem.
But when I add combination, dont add one id in the url, and crash the url.

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi gabriel simchuk,

I did not manage to reproduce the issue with PS 1.7.2.4 and PS 1.7.3.0 beta 1 neither.
Could you please provide us with more info? We need more details to understand how we can reproduce your issue:

You don't know how to get this information ? Please read the following article:
http://build.prestashop.com/howtos/misc/how-to-create-bug-report/

Thanks!

Best regards, Salma

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi salma:

Host: www.baehost.com

 Server information

Información del servidor: Linux PrestaShop/PrestaShop#1 SMP Wed Oct 11 15:51:10 EDT 2017 x86_64

Versión del software del servidor: Apache

Versión PHP: 7.1.12

Límite de memoria: 256M

Tiempo máx. de ejecución: 60

Tamaño máx. para la subida de archivos: 8M

 

Versión de PrestaShop: 1.7.2.4

Log: (I dont updated the img for payment method in the server)

[Mon Dec 18 20:35:33.635887 2017] [access_compat:error] [pid 17630] [client 181.170.64.70:64793] AH01797: client denied by server configuration: /home/albarico/public_html/img/cms/Logo/payment method, referer: https://www.albaricoque.com.ar/camisas/3-5-prueba-camisa.html

 

Artículo Detalle
Paquete de alojamiento Avanzado
Nombre del servidor www5
cPanel Versión 68.0 (build 20)
Versión Apache 2.4.29
Versión PHP 5.6.32
Versión MySQL 10.1.24-MariaDB-cll-lve
Arquitectura x86_64
Sistema operativo linux

 

I can't acces to apache error logs

20171218_203506.avi  (Preview view of the product have the same error)

 

Javascript console log:

In product page (BO):

googleads.g.doubleclick.net/pagead/id Failed to load resource: net::ERR_CONNECTION_REFUSED
/translations/cldr/datas/main/ar-AR/currencies.json Failed to load resource: the server responded with a status of 404 (Not Found)
numbers.json Failed to load resource: the server responded with a status of 404 (Not Found)
5/translations/cldr/datas/main/ar-AR/currencies.json Failed to load resource: the server responded with a status of 404 (Not Found)
5numbers.json Failed to load resource: the server responded with a status of 404 (Not Found)

 

 

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

INFO23:10:42 request Matched route "admin_product_form".Context: { "route_parameters": {"_controller": "PrestaShopBundle\\Controller\\Admin
ProductController::formAction", "_legacy_controller": "AdminProducts", "_legacy_param_mapper_class": "PrestaShop\\PrestaShop\\Adapter\\Product
AdminProductDataProvider", "_legacy_param_mapper_method": "mapLegacyParametersProductForm", "id": "3", "_route": "admin_product_form" },"request_uri": "https://www.albaricoque.com.ar/simchgab984H/index.php/product/form/3?_token=QgA6T-NjDKKmI25gc7UWlxUfxvLZSuqzPRi_Mr9Iyro" }
prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Bundle\FrameworkBundle\EventListener\SessionListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShopBundle\EventListener\UserLocaleListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\Security\Http\Firewall::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShop\PrestaShop\Adapter\Security\Admin::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShop\PrestaShop\Adapter\Security\SslMiddleware::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShopBundle\EventListener\TokenizedUrlsListener::onKernelRequest".
23:10:42 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController".
23:10:42 doctrine SELECT p0_.id_attribute AS id_attribute_0, p0_.color AS color_1, p0_.position AS position_2, p1_.id_attribute_group AS id_attribute_group_3, p1_.position AS position_4, p2_.public_name AS public_name_5, p0_.id_attribute AS id_attribute_6, p0_.color AS color_7, p0_.position AS position_8, p3_.name AS name_9 FROM ps_attribute p0_ INNER JOIN ps_attribute_group p1_ ON p0_.id_attribute_group = p1_.id_attribute_group INNER JOIN ps_attribute_shop p5_ ON p0_.id_attribute = p5_.id_attribute INNER JOIN ps_shop p4_ ON p4_.id_shop = p5_.id_shop INNER JOIN ps_attribute_lang p3_ ON p0_.id_attribute = p3_.id_attribute INNER JOIN ps_attribute_group_lang p2_ ON p1_.id_attribute_group = p2_.id_attribute_group WHERE p3_.id_lang = ? AND p2_.id_lang = ? AND p4_.id_shop = ? ORDER BY position_8 ASC, position_4 ASC*Context*: [1,1,1]  
prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Bundle\FrameworkBundle\EventListener\SessionListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShopBundle\EventListener\UserLocaleListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "Symfony\Component\Security\Http\Firewall::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShop\PrestaShop\Adapter\Security\Admin::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShop\PrestaShop\Adapter\Security\SslMiddleware::onKernelRequest".
23:10:42 event Notified event "kernel.request" to listener "PrestaShopBundle\EventListener\TokenizedUrlsListener::onKernelRequest".
23:10:42 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelController".
23:10:42 event Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SaveSessionListener::onKernelResponse".
23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\StreamedResponseListener::onKernelResponse".
23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelFinishRequest".
23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelFinishRequest".
23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelFinishRequest".
23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\Security\Http\Firewall::onKernelFinishRequest".
23:10:42 doctrine SELECT p0_.id AS id_0, p0_.id_employee AS id_employee_1, p0_.id_module AS id_module_2, p0_.date_add AS date_add_3, p0_.date_upd AS date_upd_4 FROM ps_module_history p0_ WHERE p0_.id_employee = ?Context: [1]
prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

23:10:42 event Notified event "kernel.view" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView". 23:10:42 event Listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView" stopped propagation of the event "kernel.view". 23:10:42 security Stored the security token in the session.Context: { "key": "_security_main" } 23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SaveSessionListener::onKernelResponse". 23:10:42 event Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\StreamedResponseListener::onKernelResponse". 23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelFinishRequest". 23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\TranslatorListener::onKernelFinishRequest". 23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelFinishRequest". 23:10:42 event Notified event "kernel.finish_request" to listener "Symfony\Component\Security\Http\Firewall::onKernelFinishRequest".

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi gabriel simchuk,

Your issue is when you click on preview your are redirected to
"[Debug] This page has moved
Please use the following URL instead: http://xxxxxx/en/home/8-46-test.html" instead the page of the product ?

Thanks & best regards, Salma

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi salma, No, when I click in preview, or click in the link generating in the module rss product feed for the product:

open the url:

https://www.albaricoque.com.ar/camisas/3-prueba-camisa.html

this contain:

[Debug] This page has moved
Please use the following URL instead: 5-prueba-camisa.html" class="external-link" rel="nofollow">https://www.albaricoque.com.ar/camisas/3-5-prueba-camisa.html

 

I dont know Prestashop eating a id 5- in this case.

If you click in the url: 5-prueba-camisa.html" class="external-link" rel="nofollow">https://www.albaricoque.com.ar/camisas/3-5-prueba-camisa.html
You redirect to the product fine.

Prev to click in the link (Debug):

 

Next clic in the URL [DEBUG] (Product page display fine with id: 5- in the url)

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

PD: In all product with combinations, prestashop eating the last id necessary for display correctly the url

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi gabriel simchuk,

I manage to reproduce the issue.
In all product with combinations, the URL product is not correct when clicking on the button preview.
We will see how to fix it.

Thanks & best regards, Salma

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Salut,

Quand on va sur un produit avec des déclinaisons et on appuie sur le bouton visualiser
ça envoie vers la mauvaise adresse :

{id}-{rewrite}

au lieu de  {id}{:id_product_attribute}{rewrite}

Merci

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Thanks salma, I wait the correction.

Regards.

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hello Salma

Si je comprends bien, pour reproduire le problème il faut:

1) Activer le module RSS products feed 

2) Cliquer sur "Aperçu rapide" pour un produit avec des déclinaisons 

J'ai peut être loupé quelque chose car je n'y parviens pas

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Salut Marion,

Les étapes pour reproduire le problème : (Activer le mode dev)

1- créer un produit avec des déclinaisons
2-cliquer sur le bouton Visualiser
=> Redirection vers l'URL 1-test.html" class="external-link" rel="nofollow">http://xxxxxx/en/home/1-test.html : Il est chargé en cette forme

{id}-{rewrite} => NOK
L'URL correcte c'est 1-1-test.html" class="external-link" rel="nofollow">http://xxxxxx/en/home/1-1-test.html :  {id}{:id_product_attribute}

{rewrite} =>OK

Merci

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Ok Salma merci pour ces précisions

Je n'avais pas vu la vidéo !

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

hI, dont solution yet?

Very thanks.

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi
the problem is that the canonical url point to
https://www.albaricoque.com.ar/camisas/3-prueba-camisa.html
but this page doesn't exist and this page redirect to the default combination
https://www.albaricoque.com.ar/camisas/3-5-prueba-camisa.html
but this has the canonical url to the other

so there is a loop that will lose the visibility to the main product page and the seo will be equal to 0

I think it is a big seo problem

bye

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

now all combinations have a page with an url made adding its id_attribute
but all these pages have the canonical redirect to avoid duplication issues a missing page
because the default prodct page is no more present in the site

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

How solved? I dont touch anything

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

the problem is present in all sites with 1.7.x not only in yours
it is necessary to wait for their correction
bye

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi Salma
is it possible to increase the priority of this topic?
if a product has combinations the default url is no more present and all combination urls redirect with their canonical url to a page that is not present in the site
I think this problem is present also in the category pages, because there are many link to combinations that are not indexed by search engines, and the pages that should be indexed are not present
and in the sitemap.xml what is present?

bye

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

Hi maofree, we are currently working to change this in 1.7.5 so that the canonical points to the default combination: http://forge.prestashop.com/browse/BOOM-6259

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

thanks Pablo

prestonBot commented 6 years ago

This comment has been migrated from the Forge. Read the original comment here.

look also this issue
http://forge.prestashop.com/browse/BOOM-6269

marionf commented 6 years ago

We need to:

maofree commented 5 years ago

hi probably the fix will be to set as canonical url the default combination but this solution has 3 problems: 1) it has to the product url a second number, the id_product_attribute, many people say that the id should not be present in the urls because they penalize the seo of these pages 2) all upgrade from 1.5 and 1.6 will lost the seo of their product pages, because the urls will be different 3) the images of a single combination show only its own images and not the rest of all possible combination, so to see them it is necessary to select all of them, so to solve this problem it is necessary to remove all selection from all combinations. In the 1.6 was present a button where it can be possible to show all immages, in this mode a customer cannot understand some informations. many shopkeeper ask to me how to solve this problem.

however at this moment there is another problem on the alternate urls because they use the url without id_product_attribute but these pages don't exist in the site

1

the best solution is return to the 1.6 solution, the first motive is that only few company need the feature of to give to each combination a page, but for the rest of sites and for seo reasons, this solution is not useful

bye

maofree commented 5 years ago

Hi I've a customer that don't want to put online the new version of his site with 1.7.5 because I've spoken to him about this bug on prestashop 1.7.x not yet solved it gives problems to products with combinations, for small sites is not a problem, but for big sites with good seo it is a problem because they do not want to lose visibility on pages that have combinations, because unfortunately in addition to changing the url these pages are not indexed as the canon url is not indexed by search engines. It is now more than a year that I have reported this problem but it has not yet been fixed and maybe it will still take some time. I think it should receive more attention, because prestashop can not have a flaw of this type. There are two solutions: return to the single page as with 1.6. put the page of the combination as a canonical url, but there are many other problems but at least one page would be indexed. with these sites are currently blocked, they want to update but do not want to risk seo problems and I do not know what to say

protoxide commented 5 years ago

I think so, for my point of view I think the best thing is to go back to indexing like version 1.6 also because usually , combination is a only marginal detail of product. Tiz.

colinegin commented 4 years ago

Hello @khouloudbelguith ,

do you know if this issue still occurs on 1.7.6 ? As we fixed an issue on canonical urls for products with combinations.

Thanks !

khouloudbelguith commented 4 years ago

Hi @colinegin,

Yes, I manage to reproduce the issue with PS1.7.7.x and PS1.7.6.4. As commented here https://drive.google.com/file/d/1hPAVKHQQtUnn8vtjc065iD-02t2C9wmV/view?usp=sharing We have this image But it should be image

It is the problem of removing id_product_attribute from product link.

Thanks!