X-Cart: shopping cart software

X-Cart forums (https://forum.x-cart.com/index.php)
-   Changing design (https://forum.x-cart.com/forumdisplay.php?f=51)
-   -   Coding With Product's Extra Fields (https://forum.x-cart.com/showthread.php?t=9146)

willirl 09-15-2004 07:14 PM

I don't think that will work on the products.tpl page. I think you will have to do some SQL there to get the $extra_fields from the database for the "current product".

mizzlewillz 09-15-2004 07:21 PM

I don't know SQL that well or I would create a statement. I'll give it a try but I don't think I will be able to do much.

-Mike

Emerson 09-15-2004 07:27 PM

Quote:

Originally Posted by willirl
I don't think that will work on the products.tpl page. I think you will have to do some SQL there to get the $extra_fields from the database for the "current product".


You are right, this would work on the product.tpl, not the products.tpl file :oops:

btomasie 02-26-2006 10:38 AM

Bringing this back to life... has anyone tackled this for the products.tpl page? I am trying to use an Extra Field as a way to group all my products into unofficial subcategories all on one page.

Thanks much,
Brian

Total Hosting 03-04-2006 04:29 PM

So why would this work on product.tpl and not products.tpl?
Code:

{if $active_modules.Extra_Fields ne ""}
{include file="modules/Extra_Fields/product.tpl"}
{/if}


Do I need to call the individual extra fields explicitly? I want to display the extra fields on the home page in featured listings, as well as on the category displays.

Thanks.

dashonice 03-07-2006 08:47 AM

It works on product.tpl because product.php gets the extra fields info from the database. Unfortunately products.php does not do this so the variable is not availble to products.tpl.

Total Hosting 03-07-2006 07:36 PM

Ok.

Does anyone know if this is "does not" or "can not" though?

Can the calls that pull the info into product.tpl be called into productS.tpl? Is there a reason why it isn't or couldn't be?

Should this be a thread for the "program logic" area?

Thanks, dash.

willirl 03-08-2006 05:50 AM

Here is the code that I used to get to the extra fields in products.tpl. This code must go inside the product loop. I put it immediately after this code:


Add this code:

Code:

{* Get the product ID as we loop through the products to be displayed *}

{assign var="productId" value=$products[product].productid}
{php}
global $sql_tbl;

// Get the product id from the smarty var

$productid=$this->get_template_vars('productId');

// Get the rows from the extra_field_values table for this product id

if($productid) {
    $extra_fields = func_query(
          "SELECT productid, fieldid, value as field_value
            FROM $sql_tbl[extra_field_values]
        WHERE productid = $productid"
    );
}
$this->assign("extra_fields",$extra_fields);
{/php}


The extra fields are referenced in your code using $extra_fields[<field number>] like this:

Code:

{$extra_fields[2].field_value}

Have fun.

Total Hosting 03-08-2006 07:00 PM

Thanks Willirl.

Do you have a working example? I put your code in the same spot as you indicated, however I am not able to get the extra fields to display.

I tried calling via
Code:

{if $active_modules.Extra_Fields ne ""}
{include file="modules/Extra_Fields/product.tpl"}
{/if}

which is how I am calling them into the product.tpl, as well as directly with
Code:

{$extra_fields[2].field_value}

Is there any way to see what field numbers are in use? I don't see that info in the admin view.

Thanks for the help.

willirl 03-09-2006 05:46 AM

Oops. I forgot about products_t.tpl. Add the same code following these lines:

Code:

{math equation="floor(100/x)" x=$config.Appearance.products_per_row assign="width"}

{section name=product loop=$products}
{assign var="discount" value=0}


The fields are assigned (I think) in the order you specify them in your upload or on your product edit page. The first one is [1] etc..


All times are GMT -8. The time now is 02:55 AM.

Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.