1. easysoftware
  2. Pre-sale questions
  3. Monday, 04 March 2024
  4.  Subscribe via email
Hi,

i will make subscription active again definitelly, but in this time I need find this solution before:
- on the old shop (we can't upgrade in this time) we have CSVI v. 7.20.0
- we need by import create new slug for product from product name + SKU
- we imported product name and SKU as a separate field in the template
- I tryied use plugin combine and I've merged together product name and sku into new filed slug, but this slug don't create alias
- after import:
Miloš Jakeš, Příběh komunisty-A09-141
- have to be
milos-jakes-pribeh-komunisty-a09-141

So my idea:
- find place in addon VirtueMart for CSVI (maybe ?
plugins/csviaddon/virtuemart/com_virtuemart/table/product.php
plugins/csviaddon/virtuemart/com_virtuemart/table/productlang.php

and create hack for this

is possible?

I tryied, but in productlang.php I don't have info about product_sku, then slug was only product_name :(
Accepted Answer Pending Moderation
Hello,
Miloš Jakeš, Příběh komunisty-A09-141
- have to be
milos-jakes-pribeh-komunisty-a09-141

You can make it simple using RO CSVI Multi replace rule. Use two operations from multi replace rule, find and replace space and comma to - and use lowercase operation to change the case of words. Did you try that?
Kind regards,

Tharuna

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. more than a month ago
  2. Pre-sale questions
  3. # 1
Accepted Answer Pending Moderation
Hi,

I think no, because I don't know which name is used for product name
and you know - for creating slug is used spec function (in VM or CSVI) - html stripped and other function

// Decode the special characters to normal characters
$this->set('product_name', html_entity_decode($this->get('product_name'), ENT_QUOTES));
// Sanitize the product name
$this->set('product_name', filter_var($this->get('product_name'), FILTER_SANITIZE_SPECIAL_CHARS, FILTER_FLAG_ENCODE_LOW));
$this->slug = $this->helper->createSlug($this->product_name);

With replace will not be efective, what do you mean? :(

I tryied change this code

$this->slug = $this->helper->createSlug($this->product_name);

with this:

// Create the slug
// A new alias is being created here, but we don't have an SKU to add

/*
if ($this->productTable->load($this->getState(('product_sku', false)))

{
$sku = $this->productTable->get('product_sku', 0);
$slug_new = $this->product_name . '-' . $sku;
$this->slug = $this->helper->createSlug($slug_new);
$this->log->addStats('info', 'CSVI přidalo SKU k názvu produktu do slugu');
}
else
{
$this->log->addStats('error', 'COM_CSVI_CANNOT_FIND_PRODUCT_SKU');
$this->slug = $this->helper->createSlug($this->product_name);

}
*/

but as I wrote:

I don't have SKU for adding into new slug because is not exist before import
  1. more than a month ago
  2. Pre-sale questions
  3. # 2
Accepted Answer Pending Moderation
I bought subscription :)
  1. more than a month ago
  2. Pre-sale questions
  3. # 3
Accepted Answer Pending Moderation
Hello,
I think no, because I don't know which name is used for product name
and you know - for creating slug is used spec function (in VM or CSVI) - html stripped and other function

As I mentioned it is simpler way but if you do not know what product_name you have then write custom code to create slug. You can write the above custom code in plugins/csviaddon/virtuemart/com_virtuemart/model/import/product.php where both product_sku and product_name are available and create it as an override for import. See if that helps.
Kind regards,

Tharuna

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. more than a month ago
  2. Pre-sale questions
  3. # 4
Accepted Answer Pending Moderation
Perfect, that is what i need :D
  1. more than a month ago
  2. Pre-sale questions
  3. # 5
  • Page :
  • 1


There are no replies made for this post yet.
Be one of the first to reply to this post!
Guest
Submit Your Response
Upload files or images for this discussion by clicking on the upload button below. Supports gif,jpg,png,jpeg,zip,rar,pdf,csv,txt,tsv,xml,docx,doc,xls,xlsx,ods,tgz
• Insert • Remove Upload Files (Maximum File Size: 4 MB)
In this section you can provide your site details at here and it visible to the moderators only.