site map non fa vedere i prodotti
Inviato: 05/01/2010, 18:51
Ciao a tutti e buon anno.
Un piccolo aiuto.
Ho nel mio oscommerce dei prodotti suddivisi in questo modo:
CATEGORIA --> SOTTOCATEGORIA --> SOTTO-SOTTOCATEGORIA --> PRODOTTO
e anche
CATEGORIA --> SOTTOCATEGORIA --> PRODOTTO
Quando clicco su "tutti i prodotti" dalla home page per vedere in modo veloce l'elenco di tutti i prodotti mi propone:
per i prodotti messi in
CATEGORIA --> SOTTOCATEGORIA --> SOTTO-SOTTOCATEGORIA --> PRODOTTO
solo fino alla sotto-sottocategoria (cioè non mi escono i prodotti)
Per i prodotti CATEGORIA --> SOTTOCATEGORIA --> PRODOTTO
me lo fa vedere correttamente con il prodotto come dovrebbe essere.
Sembra che arrivi a ramificarsi fino a 3 livelli.
Come faccio per far vedere tutti tutti i prodotti?
Ecco la parte di codice incriminato:
// get the sub categories (under each main category):
$parents_query = tep_db_query("SELECT categories_id, parent_id, sort_order FROM " . TABLE_CATEGORIES . " WHERE parent_id= " . $categories['categories_id'] . " ORDER BY sort_order");
while($parents = tep_db_fetch_array($parents_query))
{
// get and display their names:
$sub_cat_desc_query = tep_db_query("SELECT categories_id, categories_name FROM " . TABLE_CATEGORIES_DESCRIPTION . " WHERE language_id = $languages_id AND categories_id = " . $parents['categories_id'] . "");
while($sub_cat_desc = tep_db_fetch_array($sub_cat_desc_query))
{
echo "<td class=main>\n<i>" . $sub_cat_desc['categories_name'] . "</i></td>";
}
// get the products id that belong to the sub category:
$prod_cat_query = tep_db_query("SELECT products_id, categories_id FROM " . TABLE_PRODUCTS_TO_CATEGORIES . " WHERE categories_id= " . $parents['categories_id'] . " ORDER BY products_id");
while($prod_cat = tep_db_fetch_array($prod_cat_query))
{
// get the product model and check the status of the products:
$products_query = tep_db_query("SELECT products_id, products_model, products_status FROM " . TABLE_PRODUCTS . " WHERE products_id = " . $prod_cat['products_id']. " AND products_status=1 ORDER BY products_id");
$products_array = array();
while($products = tep_db_fetch_array($products_query))
{
// get the product name in the selected language:
$prod_name_query = tep_db_query("SELECT products_id, products_name FROM " . TABLE_PRODUCTS_DESCRIPTION . " WHERE products_id = " . $prod_cat['products_id']. " AND language_id = '" . $languages_id . "' ORDER BY products_id");
$prod_name_array = array();
$prod_name = tep_db_fetch_array($prod_name_query);
// display the product model and name with link (including language):
echo "<td class=main>" . $products['products_model'] . "</td><td class=main>\n<a href=\"" . tep_href_link(FILENAME_PRODUCT_INFO, 'name=' .str_replace("/", "/", rawurlencode($prod_name['products_name'])). '&products_id=' . $prod_name['products_id'] . '&language=' . $this_language_code, 'NONSSL', true) . "\">" . $prod_name['products_name'] . "</a></tr>";
}
echo "<tr><td></td><td></td>"; // oh yes !
}
echo "<tr><td></td>";
}
echo
Grazie a chiunque mi risolva il problema.
Ciao
A.
Un piccolo aiuto.
Ho nel mio oscommerce dei prodotti suddivisi in questo modo:
CATEGORIA --> SOTTOCATEGORIA --> SOTTO-SOTTOCATEGORIA --> PRODOTTO
e anche
CATEGORIA --> SOTTOCATEGORIA --> PRODOTTO
Quando clicco su "tutti i prodotti" dalla home page per vedere in modo veloce l'elenco di tutti i prodotti mi propone:
per i prodotti messi in
CATEGORIA --> SOTTOCATEGORIA --> SOTTO-SOTTOCATEGORIA --> PRODOTTO
solo fino alla sotto-sottocategoria (cioè non mi escono i prodotti)
Per i prodotti CATEGORIA --> SOTTOCATEGORIA --> PRODOTTO
me lo fa vedere correttamente con il prodotto come dovrebbe essere.
Sembra che arrivi a ramificarsi fino a 3 livelli.
Come faccio per far vedere tutti tutti i prodotti?
Ecco la parte di codice incriminato:
// get the sub categories (under each main category):
$parents_query = tep_db_query("SELECT categories_id, parent_id, sort_order FROM " . TABLE_CATEGORIES . " WHERE parent_id= " . $categories['categories_id'] . " ORDER BY sort_order");
while($parents = tep_db_fetch_array($parents_query))
{
// get and display their names:
$sub_cat_desc_query = tep_db_query("SELECT categories_id, categories_name FROM " . TABLE_CATEGORIES_DESCRIPTION . " WHERE language_id = $languages_id AND categories_id = " . $parents['categories_id'] . "");
while($sub_cat_desc = tep_db_fetch_array($sub_cat_desc_query))
{
echo "<td class=main>\n<i>" . $sub_cat_desc['categories_name'] . "</i></td>";
}
// get the products id that belong to the sub category:
$prod_cat_query = tep_db_query("SELECT products_id, categories_id FROM " . TABLE_PRODUCTS_TO_CATEGORIES . " WHERE categories_id= " . $parents['categories_id'] . " ORDER BY products_id");
while($prod_cat = tep_db_fetch_array($prod_cat_query))
{
// get the product model and check the status of the products:
$products_query = tep_db_query("SELECT products_id, products_model, products_status FROM " . TABLE_PRODUCTS . " WHERE products_id = " . $prod_cat['products_id']. " AND products_status=1 ORDER BY products_id");
$products_array = array();
while($products = tep_db_fetch_array($products_query))
{
// get the product name in the selected language:
$prod_name_query = tep_db_query("SELECT products_id, products_name FROM " . TABLE_PRODUCTS_DESCRIPTION . " WHERE products_id = " . $prod_cat['products_id']. " AND language_id = '" . $languages_id . "' ORDER BY products_id");
$prod_name_array = array();
$prod_name = tep_db_fetch_array($prod_name_query);
// display the product model and name with link (including language):
echo "<td class=main>" . $products['products_model'] . "</td><td class=main>\n<a href=\"" . tep_href_link(FILENAME_PRODUCT_INFO, 'name=' .str_replace("/", "/", rawurlencode($prod_name['products_name'])). '&products_id=' . $prod_name['products_id'] . '&language=' . $this_language_code, 'NONSSL', true) . "\">" . $prod_name['products_name'] . "</a></tr>";
}
echo "<tr><td></td><td></td>"; // oh yes !
}
echo "<tr><td></td>";
}
echo
Grazie a chiunque mi risolva il problema.
Ciao
A.