SELECT 
  SQL_CALC_FOUND_ROWS products.product_id, 
  IF(
    shared_descr.product_id IS NOT NULL, 
    shared_descr.product, descr1.product
  ) as product 
FROM 
  cscart_products as products 
  LEFT JOIN cscart_product_descriptions as descr1 ON descr1.product_id = products.product_id 
  AND descr1.lang_code = 'ru' 
  LEFT JOIN cscart_product_prices as prices ON prices.product_id = products.product_id 
  AND prices.lower_limit = 1 
  INNER JOIN cscart_products_categories as products_categories ON products_categories.product_id = products.product_id 
  INNER JOIN cscart_categories ON cscart_categories.category_id = products_categories.category_id 
  AND (
    cscart_categories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_categories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_categories.usergroup_ids
    )
  ) 
  AND cscart_categories.status IN ('A', 'H') 
  LEFT JOIN cscart_ult_product_descriptions shared_descr ON shared_descr.product_id = products.product_id 
  AND shared_descr.company_id = 1 
  AND shared_descr.lang_code = 'ru' 
  LEFT JOIN cscart_product_popularity as popularity ON popularity.product_id = products.product_id 
WHERE 
  1 
  AND cscart_categories.category_id IN (568) 
  AND cscart_categories.company_id = 1 
  AND (
    products.usergroup_ids = '' 
    OR FIND_IN_SET(0, products.usergroup_ids) 
    OR FIND_IN_SET(1, products.usergroup_ids)
  ) 
  AND products.status IN ('A') 
  AND prices.usergroup_id IN (0, 0, 1) 
GROUP BY 
  products.product_id 
ORDER BY 
  popularity.total desc, 
  products.product_id ASC 
LIMIT 
  0, 12

Query time 0.00410

JSON explain

{
  "query_block": {
    "select_id": 1,
    "filesort": {
      "sort_key": "popularity.total desc, products.product_id",
      "temporary_table": {
        "table": {
          "table_name": "shared_descr",
          "access_type": "system",
          "possible_keys": ["PRIMARY", "product_id", "company_id"],
          "rows": 0,
          "filtered": 0,
          "const_row_not_found": true
        },
        "table": {
          "table_name": "cscart_categories",
          "access_type": "const",
          "possible_keys": ["PRIMARY", "c_status", "p_category_id"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["category_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100
        },
        "table": {
          "table_name": "products_categories",
          "access_type": "ref",
          "possible_keys": ["PRIMARY", "pt"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["category_id"],
          "ref": ["const"],
          "rows": 15,
          "filtered": 100,
          "attached_condition": "products_categories.category_id <=> 568",
          "using_index": true
        },
        "table": {
          "table_name": "products",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "status"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["noframes_kz_new.products_categories.product_id"],
          "rows": 1,
          "filtered": 90.03496552,
          "attached_condition": "(products.usergroup_ids = '' or find_in_set(0,products.usergroup_ids) or find_in_set(1,products.usergroup_ids)) and products.`status` = 'A'"
        },
        "table": {
          "table_name": "popularity",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "total"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["noframes_kz_new.products_categories.product_id"],
          "rows": 1,
          "filtered": 100
        },
        "table": {
          "table_name": "descr1",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "product_id"],
          "key": "PRIMARY",
          "key_length": "9",
          "used_key_parts": ["product_id", "lang_code"],
          "ref": ["noframes_kz_new.products_categories.product_id", "const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(descr1.lang_code = 'ru')"
        },
        "table": {
          "table_name": "prices",
          "access_type": "ref",
          "possible_keys": [
            "usergroup",
            "product_id",
            "lower_limit",
            "usergroup_id"
          ],
          "key": "usergroup",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["noframes_kz_new.products_categories.product_id"],
          "rows": 17,
          "filtered": 99.70883179,
          "attached_condition": "prices.lower_limit = 1 and prices.usergroup_id in (0,0,1)",
          "using_index": true
        }
      }
    }
  }
}

Result

product_id product
446 Турецкий ковер TERRAZZO VENEZIANA 160x230
311 Турецкий ковер BAMBOO CUPRUM 200x300
1597 Турецкий ковер MARBLE OCEAN 200x290
1598 Турецкий ковер MARBLE POWDER 160x230
358 Бельгийский ковер BOREAL 160x230
369 Бельгийский ковер SPECTRUM 160х230
2764 Турецкий ковёр Stark Stripe 160x230
2765 Турецкий ковёр Stark Stripe 200х290
2769 Турецкий ковёр Bohem Carop 160х230
2767 Турецкий ковёр Stark Basket 160х230
2766 Турецкий ковёр Stark Basket 100x200
2768 Турецкий ковёр Stark Basket 200х290