SEF and canonical urls (feature request?)

  • Posts: 43
  • Thank you received: 3
11 years 9 months ago #86989

Hi

I am having quite a time trying to generate sef urls and was wondering if a small change to Hikashop might allow for more flexibility.

My client has a bilingual site (english, french) and sells about 160 products online...with a product details page for each language (I use Falang).

The menus allow for different filters on the products, so that the product details page becomes accessible through different urls...so my site is getting penalized by google.


For instance:

http://domain/filter1/product1.html
http://domain/filter2/product1.html

Since I cannot seem to get Joomla 2.5, Hikashop and ACESef to play well together, I was hoping to try the "Canonical" link keyword...however I cannot add this through Hikashop.

2 questions:

1) Has anyone in my scenario corrected this seemingly common problem using the "Canonical" instruction?

2) If so, would it be possible to allow us to add a *canonical url* when filling in the product details page in the backend? It would need to be added as a "link" section when generating the html page.

Thanks

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

  • Posts: 43
  • Thank you received: 3
11 years 9 months ago #87005

I thought of another possibility:

Would it be possible for me to create static html pages for the product details...and have Hikashop use those when requested, instead of building them dynamically?

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

  • Posts: 43
  • Thank you received: 3
11 years 9 months ago #87185

No responses?

I'm guessing that anyone that uses Hikashop and has a multi-lingual site would need URL management functionality...otherwise your site is getting penalized.

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

  • Posts: 82728
  • Thank you received: 13343
  • MODERATOR
11 years 9 months ago #87336

Hi,

Normally, in each products listing /filter module you can select a menu item (or enter its id) and the links of that module will redirect to that menu item so that you get the same link even if you come from different places.

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

  • Posts: 43
  • Thank you received: 3
11 years 8 months ago #92785

I'm sorry, nicolas, could you give me a simple example please? This is my first time with hikashop.

I have 130 or so products (they are dahlias/flowers)...they can be filtered(menu choices) alphabetically, according to size, color etc....I have 4 filters(menus) and each creates its own url to the same product. Also, I have a separate set of menus(filters) for both english and french.

How would you approach this?

the website is: www.productionstanicet.com

(you may have to use a proxy, I have whitelisted only north america in my FW, atm)

thank you

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

  • Posts: 82728
  • Thank you received: 13343
  • MODERATOR
11 years 8 months ago #93015

The way you did your website menu structure, you won't be able to get unique URLs for the products.
If you have them in several categories and have different menus to access the products from different categories, the URLs will have to be different to reflect that. Canonicalization would be a solution in such case but there is no such system in HikaShop for now.
That would require a plugin to be built to add a field for each product where you could specify the canonical URL which would then be added to the headers of the product page.

The following user(s) said Thank You: eskimoroll

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

  • Posts: 43
  • Thank you received: 3
11 years 6 months ago #98900

Hi, thank you for the canonical url feature!

I installed it this morning and have a question:

For the website above, it is in 2 languages. I was hoping to create 2 canonical urls for each product (one in each language), for instance:

french default url: www.productionstanicet.com/duet (for the french version)
english url: www.productionstanicet.com/en/duet


Each product has two descriptions, one in english, the other in french.

However, I was not able to add a canonical url for the translation....I have falang installed as well.

Is this possible?

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

  • Posts: 82728
  • Thank you received: 13343
  • MODERATOR
11 years 6 months ago #99080

That's not possible at the moment. It will be possible with next version.

For now, you can edit the hikashop_product.xml content element file of Falang/Joomfish and add the line below in it to be able to translation the canonical URL directly in Falang/JoomFish:

<field type="text" name="product_canonical"  length="255" maxlength="255" translate="1">Product canonical</field>

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

  • Posts: 43
  • Thank you received: 3
11 years 5 months ago #105170

Thank you Nicholas for this new feature.

I have 2.1.2 installed and was hoping to resolve this issue with my client, but I think I may have found a bug.

The canonical url for the translation (using the tab in the product page) will not let me save anything other than the canonical url of the product in its original language.

For instance:

Target url in french: www.productionstanicet.com/duet
Target english version: www.productionstanicet.com/en/duet

In the product *duet*, I add: */duet* for can. url
In the trans tab, I add: */en/duet*

When I save, the trans tab reverts to */duet* (which is what is rendered in the page source too)


I do have a workaround, I can go through the Falang component, locate my products and update the canonical urls there (which are saved properly). However, I must publish them to complete the process. I thought Hikashop directly used the Falang tables...but after considering my workaround, I am a little confused.

Anyhow, just a heads up - and thanks again for the feature!

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

  • Posts: 13201
  • Thank you received: 2322
11 years 5 months ago #105243

Hi,

There was a missing element in the view "product / edit_translation" (backend template), thanks to add:

					$this->product_canonical_input = "translation[product_canonical][".$language_id."]";
					$this->element->product_canonical = @$translation->product_canonical->value;
					if(isset($translation->product_canonical->published)){
						$this->product_canonical_published = $translation->product_canonical->published;
						$this->product_canonical_id = $translation->product_canonical->id;
					}
After:
					$this->product_alias_input = "translation[product_alias][".$language_id."]";
					$this->element->product_alias = @$translation->product_alias->value;
					if(isset($translation->product_alias->published)){
						$this->product_alias_published = $translation->product_alias->published;
						$this->product_alias_id = $translation->product_alias->id;
					}

Hope this will solve your problem.

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

  • Posts: 43
  • Thank you received: 3
11 years 5 months ago #105330

This code is already present in the following file: .../public_html/administrator/components/com_hikashop/views/product/tmpl/translation.php. I am running Essential 2.1.2.

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

  • Posts: 13201
  • Thank you received: 2322
11 years 5 months ago #105397

Thanks to check the file "edit_translation" and not "translation"

There was a missing element in the view "product / edit_translation" (backend template)

The following user(s) said Thank You: eskimoroll

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

  • Posts: 43
  • Thank you received: 3
11 years 1 month ago #126114

A quick followup, while I was lurking:

After having used the canonical url feature in Hikashop, this website's rankings have improved immensely.

Thank you, guys.

The following user(s) said Thank You: nicolas

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

Time to create page: 0.086 seconds
Powered by Kunena Forum