Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Master Products - MS2


Guest

Recommended Posts

Can slaves have slaves? In other words, can I specify a small, green, widget. If so, this contribution will solve many of the problems I have been having with the standard release. Boy, I wish this would have been out a month earlier. I've whittled down my original 250 products down to under 100 using attributes, and had basically written off acurate model numbering and stock capabilities.

 

Spice

Link to comment
Share on other sites

In admin/includes/languages/english/categories.php, there should also be something like

define('IMAGE_NEW_MASTER', 'Add a New Master Product');

Now as to how it works. From empirical observation, I would describe the slaves as real products while the masters are not. I.e. you can't buy the master product. Clicking Add_to_Cart on the master product page adds all the slaves that have quantities instead (which can be none). You can choose if the slave appears in the category product listings or not (i.e. if you can buy it separate from the master). In burt's example, the actual outfit would be one of the slaves as well. I would think of a Master Product as more of a container than a product.

 

Hth,

Matt

 

[The initial pre-release may have appeared this way, however, that the Master can be a product in itself is fundamental to the concept of Master Products - the latest updates show this - Matti]

Edited by Johnson
Link to comment
Share on other sites

I'm not sure I understand what this does - woudl the following be a workable example:

 

Master:  Sexy Nurses Outfit

Slaves:  Wig, Stockings, Thermometer

 

In effect the Slaves are not real products that are buyable unless you purchase the "Master" ??

 

Or are the Slaves also real products as well ?

 

This could work for a new site I'm working on..  Appreciate any pointers, thanks.

Moreover, it would work as such:

 

Master: Nurses Outfit

Slave 1: Nurses Outfit in XXL Black Spandex

Slave 2: Nurses Outfit in L White Spandex

Slave 3: Nurses Outfit in XL White Spandex

 

You might ask "Why not just use attributes?". My answer would be that in this case, it is possible that they don't carry an XXL White version, only XXL black...

 

But a better thing to look at would be to check out my post here:

 

http://www.oscommerce.com/forums/index.php?showtopic=67277

 

You can see a live example, both nonOSC and OSC (using this mod) that really show how this is best used.

 

-Zac

Link to comment
Share on other sites

You might ask "Why not just use attributes?". My answer would be that in this case, it is possible that they don't carry an XXL White version, only XXL black...

Also allows one to buy multiple related products at once, plus solves the stock and separate SKU per attribute problems.

 

Cheers,

Matt

Link to comment
Share on other sites

It is also possible, as an example, in product info.php, to change both instances of:

 

if ($product_master['product_master_status']!= 1)

 

to:

 

if ($product_master['products_price']!= '0')

 

This would make an add to cart button appear for the Master if a price for it is added in admin - I believe I left the product price field intact with this thought in mind........ while the Slaves can be purchased in their respective quantities also. This would make it possible to have the Nurses' Outfit as the Master Product - purchasable, and the separate parts of the outfit also purchasable in whatever quantity is selected - the customer may choose either option.... or, imagine a carburettor, and all its separate parts.... B)

 

This contribution will undergo continued development based to a large degree on feedback from these forums. I released version 1 as I saw it as usable as it stands - there is much still in the pipeline, and that list grows daily :D

 

Matti

Edited by Johnson
Link to comment
Share on other sites

Looks like a good contribution that should solve many of the basic problems that Oscommerce has. Good.

 

Anyway: I do not know what I have done incorrectly, I have installed a new MS2, copied the "Master" contribution into it, and loaded the SQL.

 

Have set up a "Master" product. All no problem. Have set up a slave product and assigned it to the master.

 

All I get in the product info page is:

 

*Please select the quantity for each item you wish to order and click the 'Add To Cart' button below.

 

TEXT_NO_PRODUCTS

 

Not concerned about "TEXT_NO_PRODUCTS" as this would just be a missing define - but this should now be showing the Slave I assigned should it not ?

I have just done the same - set up a new ms2 - dropped the contribution catalog directory into my dev root (overwrite) - ran the SQL - set up two masters each with slaves... no problem :blink:

 

Perhaps you missed a file?

 

Matti

Link to comment
Share on other sites

Tried again with a brand new copy of uptodate mS2, and the latest MAster contrib. Exactly the same behaviour as above.

 

Any ideas ?

 

I'm afraid I get the exact same error too. I tried this on a MS2 setup.

 

VJ

Link to comment
Share on other sites

Ok - here's the fix - was just one of those things I didn't get back to and tidy up :blink:

 

In catalog/includes/modules/master_products.php replace the $master_sql query with:

 

      $master_sql = "select  " . $select_column_list . " p.products_id,  p.manufacturers_id, p.products_tax_class_id, s.specials_new_products_price, s.status, p.products_price from ". TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_id = pd.products_id and p.products_master = '" . $thisquery['products_master'] . "' and p.products_status = '1' and pd.language_id = '" . (int)$languages_id . "'";

 

Matti

Link to comment
Share on other sites

I'm not sure I understand what this does - woudl the following be a workable example:

 

Master:? Sexy Nurses Outfit

Slaves:? Wig, Stockings, Thermometer

 

In effect the Slaves are not real products that are buyable unless you purchase the "Master" ??

 

Or are the Slaves also real products as well ?

 

This could work for a new site I'm working on..? Appreciate any pointers, thanks.

Moreover, it would work as such:

 

Master: Nurses Outfit

Slave 1: Nurses Outfit in XXL Black Spandex

Slave 2: Nurses Outfit in L White Spandex

Slave 3: Nurses Outfit in XL White Spandex

 

You might ask "Why not just use attributes?". My answer would be that in this case, it is possible that they don't carry an XXL White version, only XXL black...

 

But a better thing to look at would be to check out my post here:

 

http://www.oscommerce.com/forums/index.php?showtopic=67277

 

You can see a live example, both nonOSC and OSC (using this mod) that really show how this is best used.

 

-Zac

the only question I have is why on earth would you want a XXL nurses uniform?

 

I know I'd rather have a nice size S!! :D

Link to comment
Share on other sites

the only question I have is why on earth would you want a XXL nurses uniform?

 

I know I'd rather have a nice size S!! :D

I am sure you would look very nice :lol:

 

Matti

Link to comment
Share on other sites

hi,

i have installed it and it works verry nice.

but i have a little problem with the index page (i think it's the new_products.php).

on this page the "nonschown" slaves are visible.

how can i get them off?

thx soc.

 

i don't have a link because it's my testsys.

Link to comment
Share on other sites

In catalog/includes/new_products.php change the db queries to:

 

 ?if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {
? ?$new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' and products_master = '0' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
?} else {
? ?$new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' and products_master= '0' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
?}

 

I have simply added:

 

and products_master = '0'

 

You could also use:

 

and products_listing_status = '1'

 

This latter will allow you to control which slaves show and which do not via the product edit page 'listing status' - perhaps the better option.

 

You can do the same in catalog/includes/boxes/whats_new.php and elsewhere :D

 

Take a look at the catalog/products_new.php included with the package for more ideas on how to control display.

 

Admin control of these and other parameters will feature in later versions of Master Products. The next release will display product attributes in the slave listing. I also intend to include an option whether or not individual slave products will link to their own product_info page (more info).

 

 

HTH

 

Matti

Edited by Johnson
Link to comment
Share on other sites

Hi Johnson

 

Will it be possible that we can assign the slaves to multiple master products?

 

E.g--> Master:1

Slave:1

Slave:2

Slave:3

 

Master:2

Slave:1 (Also with Master:1)

Slave:3 (Also With Master:1)

 

And aso the Ability in the Admin to enable/disable description or not in the slave listing

 

I hope you get what I mean

Link to comment
Share on other sites

I installed and my products listing went a bit goofy. In the category where I defined a master product (with slaves) only the first item in the category shows up. The bottom of the box says something like "4 of 4" but only 1 item is appearing in the box. I checked the other categories and this wasn't a problem. Will have to take more time and compare my index.php with the one in the contrib.

Link to comment
Share on other sites

Hi Johnson

 

Will it be possible that we can assign the slaves to multiple master products?

 

? E.g--> Master:1

? ? ? ? ? ? Slave:1

? ? ? ? ? ? Slave:2

? ? ? ? ? ? Slave:3

 

? ? Master:2

? ? Slave:1 (Also with Master:1)

? ? Slave:3 (Also With Master:1)

 

? And aso the Ability in the Admin to enable/disable description or not in the slave listing

 

?  I hope you get what I mean

 

 

Yes - you must use the 'copy to' button on the admin>category/product listing page and select the 'duplicate' option - you may duplicate to the same category or another, then 'edit' to assign a different Master Product to the duplicate.

 

You can toggle the description on/off in admin>configuration>Slave Products>Display Slave Product Description - set this to '0' to hide the description.

 

You can control the length of the description using the 'Length of Truncated Product Description' option.

 

Matti

Edited by Johnson
Link to comment
Share on other sites

I have installed the package and have been trying to solve this problem (any help would be greatly appreciated):

 

I can not add the item to the cart only the slaves are added to the cart, when I change in product_info.php

if ($product_master['products_price']!= '0')

 

it switches and only the product adds to the cart and not the slaves???? :blink:

 

Thanks again.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...