Top 5 perguntas e respostas do PrestaShop de 2016, parte 2

Posted On: Sep 17, 2018
Categories: Shopping Carts & Platforms
Pergunta n.º 1: Regras para URLs amigáveis no PrestaShop
Como posso definir regras para substituir esses links por URLs amigáveis no PrestaShop
, porque há links quebrados nos seguintes URLs?
Quero converter este URL http://www.elektrojo.com/index.php?id_post=2&fc=module&module=nextblog&controller=nbpost para este http://www.elektrojo.com/blog/2-second-blog
Além disso, esses URLs se tornam SEO e amigáveis ao usuário
http://www.elektrojo.com/index.php?fc=module&module=nextblog&controller=nblog para http://www.elektrojo.com/blog
http://www.elektrojo.com/index.php?id_collection=1&fc=module&module=nextblog&controller=nbcollection para http://www.elektrojo.com/blog/collection/1-test
http://www.elektrojo.com/index.php?year=2016&month=5&fc=module&module=nextblog&controller=nbarchive para http://www.elektrojo.com/blog/archive/2016-5
Resposta nº 1: parece que você manteve o diretório /blog/ vazio na raiz do domínio. Assim que você remover o diretório vazio ou renomeá-lo, as URLs amigáveis se tornarão operacionais e funcionarão bem para sua loja.
Pergunta nº 2: erro ao pesquisar loja por ordem alfabética
Quando escrevo algo na caixa de pesquisa do PrestaShop para encontrar produtos, ele me dá a opção de mostrar os resultados por ordem alfabética ou de preço. Quando seleciono uma ordem de classificação, recebo um erro de 'Página indisponível'. Acho que há algo errado com a URL, porque quando seleciono exibir resultados por preço, a URL aparece como
buscar&search_query=game&submit_search=?orderby=price&orderway=asc&orderway=asc
enquanto precisa ser
buscar?search_query=game&submit_search=&orderby=price&orderway=asc&orderway=asc
Como posso resolver esse problema?
Resposta nº 2: esses erros ocorrem quando um módulo substitui os arquivos "override/classes/Link.php" ou "override/controllers/front/SearchController.php" da sua loja. Para resolver o problema, você precisa desabilitar as substituições.
Desabilite as substituições movendo para Advance Parametersperformance. Lá, selecione ‘Yes’ e todas as substituições serão desabilitadas. Procure orientação na imagem abaixo.
Pergunta nº 3: Não é possível exibir erros no redirecionamento do PrestaShop
Estou desenvolvendo um módulo que é alimentado por uma API para ajudar os usuários a criar uma conta no PrestaShop. A API é habilitada com um botão para chamar uma URL que pertence ao meu site. isso inicia uma função que permite que os usuários criem uma conta.
Quando todas as informações estão corretas, funciona bem, mas pode exibir erro quando um usuário cria uma conta.
Quero redirecionar os usuários para a página de autenticação que também mostra erros.
Eu tentei com isso
$this->context->smarty->assign('account_error', $myErrors); Ferramentas::redirecionar('index.php?controller=authentication');
O redirecionamento funciona, mas os erros parecem estar perdidos.
Existe uma maneira de redirecionar e manter os erros?
Obrigado
Resposta nº 3: Francamente, você não pode exibir nenhum erro após definir redirecionamentos, enquanto você pode utilizar um controlador para mostrar erros. Você também pode considerar usar botões que dizem "Corrigir erros", que direcionam os usuários para uma página autorizada quando clicam nela.
Adicione isso ao seu controlador
if (empty($email)) $this->errors[] = Tools::displayError('O e-mail está vazio.');
e no seu tpl use in top
{include file="$tpl_dir./errors.tpl"}
Pergunta nº 4: Enfrentando problemas ao adicionar categorias a novos produtos no PrestaShop
Estou enfrentando um problema há muito tempo e não consigo encontrar uma solução eficaz. Isso acontece quando adiciono novos produtos ao banco de dados com a ajuda do objeto do produto, mas não consigo classificá-los em uma categoria. O produto adiciona sem problemas, mas não consigo anexar produtos a uma categoria.
$cat_ids= []; foreach ($value['kat_naziv'] como $cat_val) { $cat_ids[] = (int)$luceed->selectCategoryIds($cat_val)[$cat_val]['id_category']; } $product->id_category = 3; $product->id_category_default = 3; $product->save(); $product->addToCategories($cat_ids);
O $cat_ids é uma matriz de inteiros que obtive do banco de dados enquanto o nome é algo que deixo como parâmetro para escolher IDs de categoria;
Minha pergunta é por que os produtos recém-adicionados não são exibidos na categoria que eu seleciono para eles?
Resposta nº 4: Depois de adicionar um novo produto, você pode vinculá-lo às categorias usando o código a seguir.
$product->updateCategories($category_array);
onde
$category_array = array("0" => "2", "1" => "3", "4" => "6"...... );
Perguntas 5: Adicionando uma lista de produtos à minha loja PrestaShop
Olá,
Sou ingênuo em gerenciar a loja PrestaShop, é por isso enfrentando dificuldades para adicionar uma lista de produtos de tecido. Tentei com a ajuda de dois arquivos CSV (um como uma lista e o outro para uma combinação de produtos), mas não funcionou.
Para importações de produtos, adicionei isto
http://pvmag.ro/Fisiere-directoare/IMPORT%202%20-%20Copy.csv
e para combinações, tentei isto
http://pvmag.ro/Fisiere-directoare/combinations_import.csv
Como corrigir o problema?
Resposta nº 5: Possivelmente, o erro pode ser a ausência de separadores de campo. Certifique-se de que os separadores para campo e valores múltiplos correspondem ao arquivo CVS. Testamos (;) como um separador de campo e (,) para separar valores múltiplos, e funcionou bem. Você também pode tentar.