How to list Vendor Products' in Vendor page?

  • Posts: 43
  • Thank you received: 2
10 years 6 months ago #156319

-- HikaShop version -- : 2.3.0 / 1.4.0

Hi Team,

I am quite puzzled for creating Vendor product list on Vendor page. I know we can add module(s) to vendor page via "Market Options> Displaying options > Modules under the vendor page". However I may your suggestion for how to create vendor product list module. I cannot find any module option that to create "Vendor Products List".

If so, do I need to create vendor product list one-by-one? (each vendor) or I can create a product list to show a product list for "displaying vendor"?

Further, is it possible to popup a modal for vendor page instead of just loading a complete page of vendor details? Can I also define which menu item it is assigned to, for vendor page?

Thanks ahead and please show me some hints.

Best regards,

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 6 months ago #156383

Hi,

I will recommend you the documentation page for the "vendor tutorial".
The last section dedicated to the "vendor page" explain how to create a product listing module to list the vendor products.
www.hikashop.com/support/documentation/1...tml#tuto_vendor_page
You will find some explanations and a link to an image for a default (working) module configuration.
www.hikashop.com/images/stories/hikamark...t_listing_module.jpg

For the popup, yes you can display a vendor page in a popup, you have to add the parameter "tmpl=component" into the link to display the page without the "template".
To open a popup, you can use the joomla popup system or you can also use the Hikashop popup system.
Depending how you want to make the integration, I will recommend you to override the product page and the product listing.

For the moment it is not possible to override easily the content put by HikaMarket in the "extra_data" for the product page and product listing. It is something we are working on.

About the menu item it to use, I will recommend you to create a "vendor listing" menu. Even if this menu is not accessible in your website menus (you can put the menu into the "HikaShop hidden menus").
It will allow you to have a nice SEF url like " mysite.com/vendors/the-vendor-name ".

Kind regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 43
  • Thank you received: 2
10 years 6 months ago #156426

Hi Jerome,

Thanks for your suggestions and we almost finished the "model" page for the framework.

However, we found an issue (using HikaMarket 1.4.0 currently); when we try to click the vendor url from products "Sold by: VENDOR NAME", we found it points directly to url format like this:

www.domain.com/main/zh/component/hikamar...r/show/cid-2/name-48

Actually, we have previously created the Vendor Page menu with
HikaMarket » vendormarket (Vendor Page) (and targeted to a specific vendor)

and seems the vendor url from the product / category page cannot take the SEF from Joomla menu. Please advise anything I have missed and thanks.

Best regards,

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 6 months ago #156433

Hi,

I think the option you're looking for is in HikaMarket 1.4.1

New option: Vendor default menu

Thanks to this option, you can select the menu item it for the "sold by..." links.
We will release HikaMarket 1.4.1 soon, now that HikaShop 2.3.1 is released since few days.
Because this HikaMarket package requires the latest HikaShop package, we didn't want to release it too soon.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 43
  • Thank you received: 2
10 years 6 months ago #156463

Hi Jerome,

Thanks. We are currently testing the HikaShop 2.3.1 in our UAT environment and soon we will launch it into our production environment when we think it's good to go (stable enough). May I know if we can get the HikaMarket by the end of this month? (or stable enough?) since we are going to official launch our website beginning of next month, and we are currently in our soft-launched period.

Further, I have 1 more question as below (not sure if available in 1.4.1):
1) (see attached pic pls) Stay within the same menu id (eg: vendor default page) while clicking any vendor's product in the vendor product listing. Currently we can have a single target (to menu id) for related product listing that use for vendor product list. This is good only if we have only 1 vendor. With multiple vendors, their theme will be lost (menu/ modules/ theme settings) after clicking ANY products (related products) if I have dedicated any menu id for the module. If i leave it to "none" it works fine but with a ugly url as outcome : /component/hikaship/blablabla.... I just wander if it is possible to have: vendor product listing (related products) with MULTIPLE / INDIVIDUAL menu id settings, for each vendors' page. (or menu id = "none" but still keeping a clean SEF url, still within the vendor page url) since currently I can have single set of module setting for vendor page, within the HikaMarket settings.

Attachments:

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 6 months ago #156511

Hi,

In your case I think the best will be to use an override in HikaShop.
With HikaMarket 1.4.1, you will able to access to the vendor object in the product listing or in the product page.

Example for the product listing:

// Existing code in the view
if(!empty($this->row->extraData->top)) { echo implode("\r\n",$this->row->extraData->top); }

// Example of new code
if(!empty($this->row->vendor)) {
	$url_itemid = '';
	if(!empty($this->row->vendor->vendor_menu_id))
		$url_itemid = '&Itemid=' . (int)$this->row->vendor->vendor_menu_id;
	$vendorLink = '<a href="'.hikamarket::completeLink('vendor&task=show&cid=' . $this->row->vendor->vendor_id . '&name=' . $this->row->vendor->alias . $url_itemid).'">' .  $this->row->vendor->vendor_name . '</a>';
	echo '<span class="hikamarket_vendor">'.JText::sprintf('SOLD_BY_VENDOR', $vendorLink).'</span>';
}
Thanks to it, you will be able to reproduce the "sold by vendor" link but with your own code.
This code read a value from the "vendor_menu_id" which is in this sample, a vendor custom field.
You could read the value from another element, put another algorithm. But I think that using a custom field for that can be a good solution.

HikaMarket 1.4.1 should be release today or tomorrow.
With the French Joomla day and then the J&Beyond, we will be quite overload so I prefer to release before these events. I know that I won't have the time to improve a lot on HikaMarket during two weeks.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 43
  • Thank you received: 2
10 years 6 months ago #156931

Hi Jermoe,

I've been testing for the desire result however I still have no clue how to accomplish this. Let me explain a bit in details and see if you can guide me what to do in 2.3.1 / 1.4.1.

Joomla Menu:
- Marketplace > Vendor A (Vendor Page > Point to Vendor A)
* url : /marketplace/shop-a
* I have created a special vendor page for Vendor A, in joomla menu.
( we actually have multiple vendors, etc 100+)

HikaMarket > Configuration > Market options > Displaying options > Modules under the vendor page
- I've assigned a module to display related product in all Vendor pages, including Vendor A for sure (please see the screenshot)
Point to note:
++ Desire result: Click any products in vendor page stay within the vendor page (url /marketplace/shop-a) with vendor's page design (module, header, theme, etc that assigned to vendor A's page menu), with outcome /marketplace/shop-a/products/1-abcde-product-name
* if the Menu = None, I get the desire result but an ugly SEF url (showing /component/hikashop/....)
* if the Menu = a Joomla menu, I always been redirected to a specific menu and leave the Vendor page (with designs)
* I have more than one vendor in our site, so it's unable to dedicated 1 menu for a single vendor (we need to have it for multiple vendor)

There are two difficulties we encounter so far:
PROBLEM 1 >>
While showing related products at Vendor page, clicking any product will leads to either an ugly SEF url (showing /component/hikashop/....), or a dedicated menu only (non-vendor specific). Further, product showing outside the vendor page, won't lead back to the vendor page. Can I route clicking a product, that leads with vendor's url with specific vendor page control? This is an example:

MarketPlace (/marketplace)
- Product 1 (marketplace/shop-a/products/1-product_no1)
- Product 2 (marketplace/shop-a/products/2-product_no2)
- Product 3 (marketplace/shop-b/products/3-product_no3)
- Product 4 (marketplace/shop-b/products/4-product_no4)

Vendor A - vendor page (/marketplace/shop-a)
- Product 1 (marketplace/shop-a/products/1-product_no1)
- Product 2 (marketplace/shop-a/products/2-product_no2)

Vendor B - vendor page (/marketplace/shop-b)
- Product 3 (marketplace/shop-b/products/3-product_no3)
- Product 4 (marketplace/shop-b/products/4-product_no4)

That means, no matter where the product appear / or being listed, it always links back to its vendor page (theme, design, modules, etc) and then showing the product details.


PROBLEM 2 >>
How to link the "Sold by: Vendor A" to a vendor page with SEF (/marketplace/vendor-a), instead of (/component/hikamarket/vendor/show/2-12345)

I try your codes but seems it produce same url as the original one. Please advise where shall I put the code or anything setting I should have done before making it works?

Additionally, I couldn't find where to configure this: New option: Vendor default menu

Sorry for troublesome but it's quite complicated for us to understand how to configure this scenario and our requirements.

Please advise and we will try again.

Last edit: 10 years 6 months ago by drmad.

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 5 months ago #157410

Hi,

Sorry for the delay ; like we wrote in the website header, we were at the French Joomla day and we didn't have a very good working WiFi to access to the internet and emails. I hope that it will be better for the J&Beyond this week.

The new option "Vendor default menu" is in the HikaMarket configuration, tab "market", section "Displaying options".
It allow you to select an HikaMarket "vendor listing" menu in order to build nicer urls like "/vendors/shop-a".
"/vendors/" will be a vendor listing.
"/vendors/shop-a" will be a vendor page for the "shop a" vendor.

If we play with the SEF rules, it is possible to implement your SEF design pattern, but it requires some modification in the HikaMarket core or the use of an external SEF component like SH404SEF (or other)
Generating dynamically the URL for the products, looking the corresponding menu and processing the url will use a lot of CPU. The best will be to use some "cache" thanks to the canonical url.
I know that Nicolas have made some patchs in HikaShop to always use the canonical url for the product links.
So if you have a specific pattern, it will be possible to store the predefined urls in the products itself.

SEF is really a complicated thing and we hope that the new router system in Joomla 3.5 (or 3.6) will help us to build more flexible systems.
We tried to put the more features we could for the SEF but I admit that HikaShop does not allow a lot of different SEF structures for the moment. You are the first one with this kind of SEF structure.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

  • Posts: 43
  • Thank you received: 2
10 years 5 months ago #157463

Hi Jerome,

Thanks for your time for replying my long message.

For the "patch" you have just mentioned, may I know where I can have it /or download? And further, can you elaborate a bit more for how to use the "canonical URL" with the patches? (to make the product page works under /vendor/shop-a sef)? do I need to set this up in product level one-by-one or I can just fill in something with the "Canonical URL" field to accomplish this with the patch?

Our sef requirements is very common for vendor shop (marketplace) market and mostly vendor would like to have their own shop design (modules, layouts, etc) within their products' page. You may refer to one of the leading market player like - Taobao (with few hundred millions of vendors, and billions of products listing) also with such features. Personalization for vendor's shop. SEF is the best solution for page customization, under Joomla's menu architecture. Not sure if in future we are able to customize individual modules setting per vendor?

If you are just too busy this week, we are okay to wait for your detail information after this week. Sure if you have some info for me to research DIY, I will try myself too. We are okay to install any 3rd party SEF processor any thing that recommended from your side. Currently we are only using ReDJ for url redirection and 404 error page handling, plus the default Joomla SEF in placed.

Have a nice week for your Joomlaweek. thanks ahead.

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

  • Posts: 26158
  • Thank you received: 4028
  • MODERATOR
10 years 5 months ago #157605

Hi,

HikaShop 2.3.1 includes some features to use the canonical URL as default url.
Nicolas and the rest of the HikaShop support team will give you more details about it than me.

What I will add into HikaMarket is the same kind of algorithm than Nicolas made for the products ; but for the vendors.
So (if the option is activated) every links to vendor page will use the "vendor canonical url", there will be one single entry point for the vendor page for the entire website.

The problem is the generation of these product canonical urls depending the vendor and for that, there is no patch available for the moment.
So it requires a one-by-one manipulation or a script which will set the "product_canonical" to the products depending their "product_vendor_id".

I understand your requirements and what you want to do with it.
Having such structure will be better using "custom" plugin. To create the menus dynamically for the vendors and set the product canonical url depending that.
Today, HikaMarket allows you to create dynamically the "vendor category", thanks to it you can have a structure mostly like you want but it requires to have a menu which follows the categories.

We have to work on the SEF system to improve it, like HikaShop has improved it with the "Product SEF name", etc.
I admit without blushing that I am not an expert with the Joomla SEF system or components but the interesting point is that I am not alone and I know that I will have some advice from Nicolas and users like you to guide me to make a better software.

Regards,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

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

Moderators: Obsidev
Time to create page: 0.071 seconds
Powered by Kunena Forum