Como alterar o status padrão do pedido no WooCommerce

Às vezes, durante o desenvolvimento de um site de comércio eletrônico, você precisa verificar automaticamente o status do pagamento e marcar o status do pedido como "Concluir o“”Pendente"ou conforme sua exigência. Um status de pedido padrão é definido com base no pagamento efetuado. Os usuários do Front-end podem verificar o status do pedido na página Histórico da conta. Neste blog, aprenderemos como alterar o status do pedido padrão em Cortejar o comércio como "Fatura a ser impressa" passo a passo.

Etapa 1: crie um plug-in personalizado

Para criar um plug-in personalizado no seu site, siga as seguintes etapas:

1. Navegue até a pasta de plugins do Word Press, no nosso caso, é app / plugins. Crie uma pasta como "status personalizado“.

Nota importante: Atribua um nome exclusivo à sua pasta (o nome padrão dos plugins do Word press não deve entrar em conflito com o nome do seu plug-in) usando letras minúsculas e traços.

2. Agora crie o principal arquivo PHP do seu plugin. Para fazer isso, crie um arquivo PHP dentro da pasta do plugin e atribua a ele o mesmo nome que o nome da pasta. No nosso caso, o nome da pasta é "customstatus", portanto o nome do arquivo será customstatus.php.

3. Configure as informações do seu plugin. Basta copiar e colar o código abaixo no arquivo customstatus.php.

/ **
?* Plugin Name: My First Plugin
?* Plugin URI: https://www.mywebsite.com/my-first-plugin
?* Description: The very first plugin that I have ever created.
?* Version: 1.0
?* Author: Your Name
?* Author URI: https://www.mywebsite.com
?*/

Observação: Edite os detalhes, como Nome do autor, Nome do plug-in, Descrição, etc., conforme sua exigência.

4. É isso aí! Você acabou de concluir o número mínimo de etapas necessárias para criar um plug-in do Word Press. Agora você pode ativá-lo na guia Plug-ins no Word Press admin.

Etapa 2: adicione código ao seu plug-in personalizado

1. Agora temos que criar uma função e conectá-la a uma ação específica. Simplesmente copie a função abaixo em seu customstatus.php.

2. Como queremos atualizar o status do pedido com o pagamento completo, adicione uma ação ao gancho 'woocommerce_payment_complete', conforme indicado abaixo no código destacado. // COPIE O CÓDIGO INTEIRO EM customstatus.php FILE.

# <editor-fold defaultstate = "recolhido" desc = "Status padrão como fatura a ser impressa"> function action_woocommerce_payment_complete ($ order_id) {if (! $ order_id) return; $ order = wc_get_order ($ order_id); $ order-> update_status ('wc-print-invoice'); // O status do pedido será atualizado para "Fatura a ser impressa". }; // adiciona a ação add_action ('woocommerce_payment_complete', 'action_woocommerce_payment_complete', 10, 3); # </editor-fold>

3. Apenas salve seu arquivo customstatus.php e pronto. A partir de agora, o status do pedido será atualizado para "Fatura a ser impressa" quando o pagamento for concluído.

NOTA ÚTIL: Se você deseja atualizar o status do pedido quando a página "Obrigado" ou "Sucesso do checkout" é carregada, você pode adicionar a ação no gancho "woocommerce_thankyou". Em customstatus.php, substitua add_action ('woocommerce_payment_complete', 'action_woocommerce_payment_complete', 10, 3); com add_action ('woocommerce_thankyou', 'ggb_custom_change_order_status', 10,3);


Exportar dados PHP para arquivo .xls

Dados são qualquer conjunto de caracteres que são traduzidos para algum propósito, como para análise. Pode ser qualquer caractere ou valor, incluindo texto e números, imagens, som ou vídeo. Se os dados não forem contextualizados, eles não farão nada ao ser humano ou à máquina. Geralmente exportamos dados de sites para salvá-los no computador para uso off-line, como manter dados de listas e analisá-los. Excel é o melhor formato para exportar dados em um arquivo – porque a leitura de arquivos grandes é muito mais fácil para o usuário no Excel. Além disso, você pode usar funções adicionais como selecionar células individuais para importar os dados, converter datas e horas automaticamente, filtros, classificação, leitura de fórmulas e seus resultados, etc.


Neste blog aprenderemos como exportar dados PHP para arquivo .xls passo a passo. Com a ajuda de um script PHP simples você pode exportar dados para Excel e baixá-los em um arquivo .xls.

PASSO 1: Crie um array para armazenar os dados

Eu criei uma matriz ($clientes_dados) para armazenar os detalhes dos clientes. Você pode criar seu próprio array conforme sua necessidade:

$customers_data = array( array( 'customers_id' => '1', 'customers_firstname' => 'Chris', 'customers_lastname' => 'Cavagin', 'customers_email' => 'chriscavagin@gmail.com', 'customers_telephone' => '9911223388' ), array( 'customers_id' => '2', 'customers_firstname' => 'Richard', 'customers_lastname' => 'Simmons', 'customers_email' => 'rsimmons@media.com', ' clientes_telefone' => '9911224455' ), array( 'customers_id' => '3', 'customers_firstname' => 'Steve', 'customers_lastname' => 'Beaven', 'customers_email' => 'ateavebeaven@gmail.com' , 'customers_telephone' => '8855223388' ), array( 'customers_id' => '4', 'customers_firstname' => 'Howard', 'customers_lastname' => 'Rawson', 'customers_email' => 'howardraw@gmail. com', 'customers_telephone' => '9911334488' ), array( 'customers_id' => '5', 'customers_firstname' => 'Rachel', 'customers_lastname' => 'Dyson', 'customers_email' => 'racheldyson@ gmail.com', 'customers_telephone' => '9912345388' ) );

PASSO 2: Crie uma função para filtrar os dados:

Esta função é usada para detectar aspas duplas e escapar de qualquer valor que as contenha. Sem isso, um número ímpar de aspas em uma string pode confundir o Excel.

// Filtrar dados do cliente function filterCustomerData(&$str) { $str = preg_replace("/\t/", "\\t", $str); $str = preg_replace("/\r?\n/", "\\n", $str); if(strstr($str, '"')) $str = '"' . str_replace('"', '""', $str). '"'; }

PASSO 3: Defina o nome do arquivo e o cabeçalho do conteúdo para download:

$file_name variable é usada para armazenar o nome do arquivo e também definir o cabeçalho do conteúdo para download.

// Nome do arquivo e cabeçalho do conteúdo para download $file_name = "customers_data.xls"; header("Disposição do conteúdo: anexo; nome do arquivo=\"$nome_do_arquivo\""); header("Tipo de conteúdo: application/vnd.ms-excel");

PASSO 4: Defina o loop através de cada linha em $customers_data

//Para definir o nome da coluna na primeira linha. $nomes_colunas = falso; // executa o loop em cada linha em $customers_data foreach($customers_data as $row) { if(!$column_names) { echo implode("\t", array_keys($row)) . "\n"; $nomes_colunas = verdadeiro; } // A função array_walk() executa cada elemento do array em uma função definida pelo usuário. array_walk($row, 'filterCustomerData'); echo implode("\t", array_values($row)) . "\n"; } saída;

1. Defina uma variável $column_names que é usada para imprimir o nome da coluna na primeira linha do Excel. 2. Execute um loop em cada linha e use a função array_walk() para executar cada linha em uma função definida pelo usuário.

PASSO 5: Execute o arquivo de script em seu ambiente:

Se tudo correr bem, o nome do arquivo será denominado “customers_data.xls”, baixado e salvo em seu computador. Você pode abrir este arquivo no Excel com a seguinte aparência:

Clique aqui para baixar o código completo.

Solução de problemas comuns de PHP em plataformas de comércio eletrônico

Aprenda como solucionar problemas comuns de PHP em plataformas de comércio eletrônico como PrestaShop, WooCommerce, OpenCart e Magento com dicas de especialistas da Knowband.

Saber mais

Com mais de 13 anos de excelência em tecnologia da informação, fornecemos tecnologias de desenvolvimento web e de aplicativos em diversas estruturas. Você também pode explorar uma ampla variedade de extensões de comércio eletrônico prontas para uso Prestashop, Opencart, WooCommerce, Shopify e Magento 2.

Caso você tenha dúvidas/sugestões, você pode entrar em contato com nosso portal de suporte técnico em nosso endereço de e-mail support@knowband.com. Dê uma olhada em nosso módulo mais vendido Supercheckout de uma página Prestashop aqui: e também visite aqui: Aplicativo móvel de comércio eletrônico OpenCart

Você também pode assistir nossos vídeos mais recentes aqui:

 

 

Erro no HubBox: _messageErrorTemplate não é uma função

Problema Declaração

Ao procurar o endereço errado no pop-up do HubBox, não há mensagem de erro. Quando marcado no console, você está recebendo um erro como "_messageErrorTemplate não é uma função“.

Solução

O erro: "_messageErrorTemplate não é uma função"está chegando porque esta função não está declarada como função na biblioteca HubBox.


Para corrigir esse problema, você precisa fazer algumas alterações na biblioteca do HubBox:

Você precisa fazer alterações nos dois arquivos abaixo:

1. \ HubBox \ Java \ src \ main \ resources \ static \ index.html
2. \ HubBox \ Java \ out \ production \ resources \ static \ index.html Nesses arquivos, pesquise o código abaixo:

var _messageErrorTemplate = Mustache.render (_messageError || ""); var _messageWarning = $ (selectors.messages.warning) .html (); var _messageWarningTemplate = Mustache.render (_messageWarning || "");

e substitua-o pelo código abaixo:

var _messageErrorTemplate = function () {retorna Mustache.render (_messageError || ""); }; var _messageWarning = $ (selectors.messages.warning) .html (); var _messageWarningTemplate = function () {retorna Mustache.render (_messageWarning || ""); };

Ao declarar "_messageErrorTemplate'E'_messageWarningTemplate'como função, agora você receberá uma mensagem de erro ao procurar um endereço errado no pop-up do HubBox.


Erro do HubBox: falha ao abrir o fluxo /sample/../../vendor/autoload.php

Problema

Enquanto

exigir (C: \ wamp64 \ www \ HubBox \ sample \ src \ public /../../fornecedor / autoload.php):

Solução

este

Etapa1:Excluir

Etapa2:Façofornecedor“?under?/sample/

Etapa3:Correcompositor“?in?command?prompt?at?/sample/

It?will?download?all?the?dependency?files?which?are?required.

After?successfully?downloading?all?the?dependencies,?you?will?able?to?use?the?HubBox?library.


Como adicionar os parâmetros get na paginação no CakePHP versão 2.0

Problema Declaração

Não há funcionalidade padrão para manter os parâmetros GET ao usar "Paginator"auxiliar no CakePHP. Conforme a funcionalidade padrão do auxiliar de paginação do CakePHP, os parâmetros GET serão removidos da URL se você navegar para a próxima página.

Solução

Se você estiver enfrentando esse problema, precisará adicionar algumas linhas de código na função beforeRender. Essa função é definida no arquivo paginator.php (local do arquivo: cake \ libs \ view \ helpers \ paginator.php). Você precisa adicionar as seguintes linhas mostradas na cor marrom:

função pública beforeRender ($ viewFile) {$ this-> options ['url'] = array_merge ($ this-> request-> params ['pass'], $ this-> request-> params ['named']); // Início do código if (! Vazio ($ this-> request-> query)) {$ get_param = $ this-> request-> query; unset ($ get_param ['url']); $ this-> options ['url'] ['?'] = $ get_param; } // Fim do código parent :: beforeRender ($ viewFile); }


SSL Certificate Installation on IIS

  • Obtenha o arquivo zip dos certificados.

1. Carregar arquivo * .crt no arquivo de certificado para converter

2. Escolha o tipo de certificado atual para "PEM padrão"

3. Escolha Tipo para converter em "PFX / PKCS # 12"

4. Carregar arquivo * .key para arquivo de chave privada

5. Carregar arquivo * .ca no arquivo de certificado em cadeia (opcional)

6. Definir senha como senha PFX

  • Copie o arquivo * .pfx para o servidor
  • Abra o Gerenciador do Internet Information Services (IIS). Na tela Iniciar, clique ou pesquise pelo Gerenciador dos Serviços de Informações da Internet (IIS) e abra-o.
  • No Gerenciador do IIS, selecione o nó do servidor na parte superior esquerda em Conexões.
  • Clique no nome do servidor.
  • No menu central, clique duas vezes no botão Certificados do servidor na seção IIS (fica no meio do menu).
  • No painel Ações, no canto superior direito, selecione Importar.
  • Navegue até * .pfx para fazer upload do arquivo de certificado (.pfx), digite a senha do arquivo * .pfx e selecione "Web Hosting" como repositório de certificados e clique em OK para instalar o certificado.
  • Após a instalação bem-sucedida do certificado SSL no servidor, você precisará atribuir esse certificado SSL ao site adequado usando o IIS.
  • Escolha o nome do servidor no qual o certificado foi instalado no menu Conexões na janela principal do Gerenciador do IIS.
  • Em Sites, selecione o site a ser protegido com SSL.
  • No menu Ações (à direita), clique em Ligações … Isso abrirá a janela Ligações do site.
  • Na janela Ligações do site, clique em Adicionar … Isso abrirá a janela Adicionar ligação do site.
  • Em Tipo, escolha https. O endereço IP deve ser o endereço IP do site ou Todos os não atribuídos, e a porta na qual o tráfego será protegido por SSL geralmente é 443. O campo Certificado SSL deve especificar o certificado que foi instalado. Clique em OK e feche a janela Ligações ao site.
  • Para verificar a instalação: Teste seu certificado SSL usando um navegador para conectar-se ao seu servidor. Use a diretiva de protocolo https. Por exemplo, se seu SSL foi emitido para secure.mysite.com, entrar https://secure.mysite.com no seu navegador. O ícone de cadeado do seu navegador será exibido na posição bloqueada se o seu certificado estiver instalado corretamente e o servidor estiver configurado corretamente para SSL.


Setup SSL on the site on Linux Server

Guia passo a passo para configurar o SSL no site no servidor Linux:

1. Copie os arquivos de certificado para o servidor Deve haver 3 arquivos SSL:

  • your_domain_name.crt
  • your_private.key
  • DigiCertCA.crt – Este será o seu arquivo de cadeia.

Observação: Torne-os legíveis apenas pelo root para aumentar a segurança.

2. Encontre o arquivo de configuração do Apache (httpd.conf) que você precisa editar.

  • O nome, a localização e o nome do arquivo de configuração podem variar de servidor para servidor, principalmente se você estiver usando uma interface especial para gerenciar a configuração do servidor.
  • O arquivo de configuração principal do Apache é normalmente denominado httpd.conf ou apache2.conf. As localizações possíveis para este arquivo incluem /etc/httpd/ ou /etc/apache2/.
  • Muitas vezes, a configuração do certificado SSL está localizada em um block em um arquivo de configuração diferente. Os arquivos de configuração podem estar em um diretório como /etc/httpd/, /etc/apache2/. Neste diretório, você precisa encontrar o arquivo conf do site para o site�www.uksoccershop.com�será uksoccershop.com.conf. Você encontrará o� etiqueta neste arquivo. Caso�o arquivo�uksoccershop.com.conf não esteja presente, você pode usar o arquivo comum�httpd.conf ou apache2.conf

3. Identifique o SSL bloco que você precisa configurar.

Abaixo está um exemplo muito simples de um host virtual configurado para SSL. As partes listadas em azul são as partes que você deve adicionar para a configuração SSL.

<VirtualHost�192.168.0.1:443>

DocumentRoot /var/www/html2

Nome do Servidor�www.yourdomain.com

SSLEngine on

SSLCertificateFile /path/to/your_domain_name.crt

SSLCertificateKeyFile /path/to/your_private.key

SSLCertificateChainFile /path/to/DigiCertCA.crt

4. Ajuste os nomes dos arquivos para corresponderem aos seus arquivos de certificado. SSLCertificateFile é o seu arquivo de certificado DigiCert (por exemplo, your_domain_name.crt). SSLCertificateKeyFile é o arquivo .key gerado quando você criou o CSR (por exemplo, your_private.key). SSLCertificateChainFile é o arquivo de certificado intermediário DigiCert (por exemplo, DigiCertCA.crt)

Observação: Se a diretiva SSLCertificateChainFile não funcionar, tente usar a diretiva SSLCACertificateFile.

Blogue recomendado: Como instalar o MySQL em sistemas Windows e Linux?

5. Teste seu arquivo de configuração do Apache antes de reiniciar.

Como prática recomendada, verifique se há erros no arquivo de configuração do Apache antes de reiniciar o Apache.

Cuidado: o Apache não iniciará novamente se seus arquivos de configuração tiverem erros de sintaxe.

Execute o seguinte comando para testar seu arquivo de configuração (em alguns sistemas, é apache2ctl):

configuração do apachectl

6. Em caso de nenhum erro, reinicie o apache usando o comando abaixo

serviço apache2 reiniciar

Depois de reiniciar o apache2, você pode verificar se seu SSL está configurado corretamente ou não usando�https://www.sslshopper.com/ssl-checker.html. Na captura de tela acima, você deve verificar se a seta deve estar verde como acima entre o servidor e a cadeia. Se não houver nenhum problema, seu SSL está configurado corretamente.

Blogue recomendado: Instalação de certificado SSL no IIS

Palavras finais:

Em caso de problemas durante a implementação do código, sinta-se à vontade para nos contatar em support@Knowband.com. Além disso, a Knowband oferece plugins de loja de comércio eletrônico com o melhor preço. Oferecemos a solução mais inteligente para plataformas online, incluindo PrestaShop, OpenCart, Magento 2 e WooCommerce.

Isso também pode lhe interessar:

Como atualizar a versão do Magento no LINUX

Como excluir produtos do mercado ePrice

Objetivo do blog

Este blog irá ajudá-lo a conhecer a maneira de excluir produtos do mercado ePrice.

Métodos para excluir produtos do mercado ePrice

Existem dois métodos para excluir produtos do mercado ePrice:

  1. Apagar manualmente do vendedor central
  2. Fazendo o upload do feed de oferta

1.0 Exclusão manual do vendedor central

1. Abra a página de login central do vendedor de eprice (https://marketplace.eprice.it/login)

2. Preencha as credenciais do vendedor (nome de usuário e senha) e clique no botão "Entrar"Botão.

3. Escolha o "Lista de Ofertas"opção do"Meu inventário"guia da home page como mostrado abaixo:

4. Pesquisar SKU de "Oferecer SKU"campo e marque a caixa de seleção paralela às SKUs que você precisa excluir do mercado de ePrice, conforme mostrado abaixo:

5. Depois de selecionar os produtos, você precisa clicar no botão "Excluir botão selecionado" como mostrado abaixo:

6. Ao clicar no "Excluir ofertas selecionadas"opção, você verá um pop-up aparece na tela em que você encontrará os SKUs selecionados e o"Excluir"botão para excluir esses produtos como mostrado abaixo:
?

2.0 Ao fazer o upload do feed de oferta

Ao usar o feed de oferta, você pode excluir facilmente uma grande quantidade de produtos do mercado de e-Pricing. O link para baixar o feed de oferta de amostra é fornecido abaixo:

eprice_offer_feed

No feed de oferta, você deve inserir os dados nos dois campos:

sku:? Fill SKUs which you would like to be deleted.

update-delete: Preencha "DELETE" neste campo. Depois de criá-lo, faça o upload desse feed na conta do comerciante ePrice. Siga os passos indicados para fazer o upload do feed:

1. Abra a página de login central do vendedor de eprice (https://marketplace.eprice.it/login)

2. Preencha as credenciais do vendedor (nome de usuário e senha) e clique no botão "Login".

3. Abra a guia Meu Inventário e escolha a opção "Importar do arquivo"opção como mostrado abaixo:

4. Carregue o Feed de Oferta (que você criou) na página de importação do eprice, conforme mostrado abaixo:

5. Você também pode verificar o status do feed que você enviou clicando em "Acompanhar a importação de ofertas". Ao clicar no"Acompanhar a importação de ofertas"opção, a página do histórico será aberta mostrando uma lista do feed enviado com o status de processamento. Você pode verificar o mesmo na imagem abaixo.


Copy to clipboard in JavaScript

Objetivos do blog

Após a leitura deste blog, você será capaz de saber como os dados podem ser copiados para a área de transferência com a ajuda do script java.

Benefício da cópia para a funcionalidade da área de transferência

No mundo da web atual, é tudo sobre o usuário experiente em seu site. Durante nosso trabalho em qualquer site, copiamos o conteúdo de um lugar e colamos em outro lugar. Será realmente útil para o usuário se um site fornecer uma funcionalidade de clique para copiar. Isso economiza tempo e esforço do usuário para selecionar e copiar o conteúdo.

Implementação da funcionalidade copiar para a área de transferência

Vamos ver como podemos adicionar essa funcionalidade:

–

Crie um HTML com um parágrafo com algum conteúdo e botão para clicar. Você pode usar qualquer elemento relevante em vez de parágrafo, por exemplo, caixa de texto, área de texto, campos ocultos etc.

<body> <p id = "txt_knoband"> A KnowBand se orgulha dos melhores plug-ins do mercado para sistemas de comércio eletrônico e tem anos de experiência trabalhando com sites de comércio eletrônico. </ p> <button onclick = "onClickCopy ()"> Copiar texto < / botão> </ body>

–

Você precisará criar uma função onClickCopy () que copiará os dados do parágrafo. A função simplesmente executará "document.execCommand (" copy ")" para copiar os dados para a área de transferência.

function copyOnClick () {var tempInput = document.createElement ("entrada"); tempInput.value = document.getElementById ("txt_knoband"). innerHTML; document.body.appendChild (tempInput); tempInput.select (); document.execCommand ("copy"); document.body.removeChild (tempInput); alerta ("valor copiado"); }

In the last line of the script, we have simply added an alert action to inform the user that the data has been copied.

So finally when you click on the button “Copy Text”, data will be copied to the clipboard and you can simply paste by using CRTL + V.

Related Article: Como definir o cookie usando JavaScript