Shivam Verma is an experienced software engineer in PHP development and Database design. His area of interest is website development. He likes to be aware of his surroundings and to learn new things by observing others. He believes that by doing this we can learn new things and can also enhance our knowledge everyday. He has started writing technical blogs with a view to help others in studying and learning new things in an easy way.
O objetivo deste blog é ajudar você a saber como corrigir o problema o último arquivo não está fechando". Se você está enfrentando o mesmo problema, este blog o ajudará. Exemplo – Se houver 4 arquivos de texto, apenas 3 arquivos estão sendo compactados.
Razão para isso
o
Solução:
Você precisa substituir
$ zip = novo ZipArchive (); // zip dois arquivos mais antigos foreach (glob ($ directory. '/*.txt') como $ a_file) {if (filemtime ($ a_file) <time () - 2) {// 172800 dias mais antigos 2 $ filename_array = explodir ("/", $ a_file); $ key = sizeof ($ filename_array) - 172800; $ filename = $ filename_array [$ chave]; $ source_path = $ diretório. '/'; $ zip_file = $ source_path.str_replace ('.txt', '', $ filename). ". zip"; if ($ zip-> open ($ zip_file, ZipArchive :: CREATE)! == TRUE) {exit ("não é possível abrir". $ zip_file. "\ n"); } $ zip-> addFile ($ a_file, $ filename); }} $ zip-> close (); // Zip_close substituído ($ zip) por $ zip-> close (); // Mova 1 dias de idade no arquivo morto e remova os arquivos com mais de 90 dias de duração (glob ($ directory. '/ *. Zip') como $ a_file) {// remova arquivos com mais de 180 dias. if (filemtime ($ a_file) <time () - 180) {// 15552000 dias mais antigo 180 unlink ($ a_file); }}
Resumo
Neste blog, alteramos a função de fechar o zip para corrigir o problema especificado.
O objetivo deste blog é ajudar você a saber como é criada a configuração de qualquer plugin personalizado. Atualmente, a maioria dos plugins contém configurações para permitir que os usuários alterem a funcionalidade do plugin de acordo com sua escolha.
Neste blog, estamos criando o plugin personalizado para sua referência. Os requisitos básicos para adicionar a configuração do plugin são:
Para registrar as configurações de um plug-in
Para criar uma página de opções para um plugin
Para exibir as configurações do plugin na página da opção
Etapas para adicionar a configuração do plug-in:
1.�Crie sua pasta de plugins personalizada dentro da pasta “plugins” do seu site Woo Commerce. No código de exemplo, criamos uma pasta “custom-plugin”.
2.�Crie um novo arquivo PHP dentro da pasta “custom-plugin”. O nome do arquivo deve ser o mesmo da pasta do plugin personalizado. No código de exemplo, criamos um arquivo “custom-plugin.php”.
3.�Você precisa registrar as configurações de cada campo do seu plugin personalizado. Esta etapa lista as opções de configuração do plug-in (campos) que são usadas para salvar os dados de configuração do plug-in na tabela wp_options. Aqui, registrei a configuração do meu plug-in personalizado conforme mostrado abaixo e adicionei esse código ao arquivo “custom-plugin.php”.
/* * Nome do Plugin: Plugin Customizado * Descrição: Este plugin é o plugin customizado e criado por velsof * Versão : 1.0.0 * Autor: Velsof */ function custom_plugin_register_settings() { register_setting('custom_plugin_options_group', 'first_field_name'); register_setting('custom_plugin_options_group', 'second_field_name'); register_setting('custom_plugin_options_group', 'third_field_name'); } add_action('admin_init', 'custom_plugin_register_settings');
4. Nesta etapa, você precisa criar a página de opções para seu plugin personalizado e adicionar a opção no submenu da configuração do Word Press. No código de exemplo, escrevemos o código da página de opções abaixo e adicionamos o mesmo ao arquivo “custom-plugin.php”.
function custom_plugin_setting_page() { // add_options_page( string $page_title, string $menu_title, string $capability, string $menu_slug, callable $function = '' ) add_options_page('Custom Plugin', 'Custom Plugin Setting', 'manage_options', ' custom-plugin-setting-url', 'custom_page_html_form'); // custom_page_html_form é a função na qual escrevi o HTML para meu formulário de plugin personalizado. } add_action('admin_menu', 'custom_plugin_setting_page');
Após concluir esta etapa, você poderá ver a opção do seu plugin personalizado na configuração do Word press, conforme mostrado na imagem abaixo:
5. Nesta etapa, você precisa criar o formulário para exibir as opções (campos) na página de configuração do plugin personalizado. Aqui, criei uma função “custom_page_html_form” conforme mostrado abaixo e adicionei a mesma ao arquivo “custom-plugin.php”.
function custom_page_html_form() { ?> Cabeçalho de página de configuração de plug-in personalizado Nome do primeiro campo: "> Nome do segundo campo: "> Nome do terceiro campo: ">
Após concluir esta etapa o formulário do seu plugin personalizado será criado e os dados serão salvos no banco de dados ao clicar no botão “Salvar alterações” conforme mostrado abaixo:
Observação: �Se você receber o erro “página de opções não encontrada” ao salvar a configuração do plug-in personalizado. Então você precisa seguir os passos abaixo: 1. Abra o arquivo “options.php” (Localização do arquivo: wp\wp-admin\options.php). 2.Adicione o grupo de opções de plugin personalizado no array $whitelist_options.
Depois de ler este blog, você será capaz de entender como o vendedor pode obter os pedidos da Amazon usando a API.
Vamos conhecer a API do pedido
A API de pedidos da Amazon ajuda os vendedores a obter os detalhes do pedido e sincronizar os pedidos da Amazon em seu aplicativo personalizado. Isso é muito útil para recuperar atualizações de pedidos em tempo real e os vendedores também podem obter as informações de status do pedido (enviadas ou não) com facilidade para todos os pedidos usando a API.
Como sincronizar pedidos da Amazon em aplicativos personalizados
Primeiro de tudo, você precisa da credencial da API do Amazon MWS (Market Place Web Service). Se você ainda não possui, pode obter a ajuda de este blog
Para buscar pedidos da Amazon do seu lado, siga as etapas abaixo:
1. Pedidos de lista – Nesta etapa, você precisa enviar uma solicitação à Amazon para obter os pedidos da Amazon por um intervalo de tempo específico. Você precisa enviar os seguintes dados fornecidos abaixo na solicitação:
mws.amazonservices.co.uk/Orders/2013-09-01? AWSAccessKeyId = XXXXXXXXXXXXXXX & Action = ListOrders & SellerId = XXXXXXXXXXXXXX // // Escreva aqui o seu ID de comerciante & SignatureVersion = 2 // Escreva aqui a sua versão de assinatura & Timestamp = gmdate : i: s \ Z ", time ()) // Escreva o carimbo do tempo & Version = 2013-09-01 & Signature = 1234Knowband1234example1234 // Aqui você precisa escrever a assinatura & SignatureMethod = HmacSHA256 // Aqui, escreva seu método de assinatura & LastUpdatedAfter = date ("Ymd \ TH: i: s \ Z", horário ('- 24 hora')); // solicita a obtenção de pedidos somente para as últimas horas 24 da Amazon & OrderStatus.Status.1 = Não enviado // Aqui você precisa adicionar o status para o qual deseja buscar os pedidos & OrderStatus.Status.2 = Parcialmente enviado e OrderStatus.Status.3 = Enviado e MarketplaceId.Id.1 = XXXXXXXXXXXXX AWSAccessKeyId = XXXXXXXXXXXXXXXXXXXXXX
Na resposta, você receberá um arquivo de feed de pedidos que conterá a lista de pedidos feitos na Amazon nas últimas horas 24 e com o status de pedido solicitado. Aqui está o arquivo de feed de pedidos de amostra.
2. Itens do pedido de lista Desde o primeiro passo, você obterá apenas detalhes do pedido (como ID de pedidos da Amazon, data da compra, etc.) e não detalhes do item do pedido (detalhes do produto solicitado). Para obter os detalhes do item do pedido, você precisará enviar uma solicitação à Amazon. Você precisa enviar uma solicitação correspondente a cada pedido. Se você precisar de detalhes para pedidos da 5 Amazon, precisará enviar solicitações da 5. A solicitação é fornecida abaixo: por exemplo, $ Amazon_order_id = 112-5028700-7051869
mws.amazonservices.co.uk/Orders/2013-09-01? AWSAccessKeyId = XXXXXXXXXXXXXXXXXXXXXX & Action = ListOrderItems & SellerId = 'XXXXXXXXXXXXXX'; // Aqui, escreva seu ID de comerciante, & 'AmazonOrderId' = $ Amazon_order_id // Aqui, escreva o ID do pedido do qual você deseja obter detalhes // Aqui, você precisa escrever a assinatura, quando enviar solicitações HTTP para a AWS, precisará assine as solicitações para que a AWS possa identificar quem enviou a solicitação & Signature = 1234Knowband1234example1234 & SignatureVersion = 2 // Aqui, escreva sua versão de assinatura & SignatureMethod = HmacSHA256 // Aqui, escreva seu método de assinatura & Timestamp = gmdate ("Ymd \ TH: i: s \ Z" , time ()) // Escreva o registro de data e hora = 2013-09-01
Em resposta à solicitação, você obterá os detalhes descritivos do pedido. A amostra é dada abaixo:
3. Criar pedidos Esta etapa é a etapa final e, na etapa 1 e 2, você obtém todos os detalhes dos pedidos da Amazon necessários para criar pedidos no seu aplicativo. Analisando os feeds XML acima (pedido de lista e item de pedido de lista), você pode criar pedidos no seu aplicativo. Se um pedido da Amazon já estiver criado no seu aplicativo, você poderá usar a etapa 1 para atualizar o status do pedido.
Este blog permitirá que você entenda a maneira de excluir os produtos do mercado da Fyndiq usando a conta central do vendedor. Etapas para excluir produtos usando o vendedor central
2. Clique na guia Produtos da página inicial, como mostrado abaixo: 3. Na página do produto, você precisa seguir as etapas a seguir para excluir o produto do mercado Fyndiq.
Pesquise o produto usando o nome do produto / SKU.
Marque a caixa de seleção dos produtos que você precisa excluir.
Selecione a opção "Remover produtos" no menu suspenso "Ação".
Clique no botão "Ir" para excluir o produto.
As etapas acima são mostradas na imagem abaixo:
Resumo
Este blog permitirá que você entenda a maneira de excluir os produtos do mercado da Fyndiq usando a central de vendedores.
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:
Depois de ler este blog, você poderá entender como o vendedor pode alterar o inventário e a latência de atendimento de produtos na Amazon usando a API.
Vamos saber sobre a latência de cumprimento
A latência de atendimento é o número de dias em que o vendedor precisa despachar o pedido após receber o pedido da Amazon. Também pode ser definido como o tempo máximo disponível para o vendedor despachar a encomenda. O tempo de atendimento é definido pelo vendedor correspondente a cada produto. A latência de atendimento também é conhecida como tempo de processamento. A API de atendimento da Amazon ajuda o vendedor a definir o inventário do produto e o tempo de latência de atendimento na Amazon.
Como alterar a latência e o inventário de atendimento para produtos usando a API?
Informe-nos sobre os campos que você precisará enviar na solicitação para a Amazon:
Açao Social
Este campo especifica a ação que precisa ser executada na solicitação e isso ajuda a determinar qual parâmetro deve estar na solicitação. Assinatura: Sempre que você enviar a solicitação HTTP para a Amazon, você precisa adicionar a assinatura com a URL. Ao verificar a assinatura, a Amazon pode identificar o comerciante de quem a solicitação foi recebida. Usamos um valor de hash (HmacSHA256), alguns dados da solicitação e uma chave de acesso secreta para criar uma assinatura.
Versões de assinatura
2 versões de assinatura são suportadas e essas versões são:
(1)Versão 4: (2)Versão 2:
Ambas as versões podem ser usadas para assinar a solicitação, mas recomendamos que você assine sua solicitação com a versão 4 da assinatura neste blog, a versão 2 da assinatura é usada.
Purgar e substituir
O campo limpar e substituir substitui a listagem existente de produtos da Amazon se seu valor for verdadeiro. Portanto, você sempre precisa definir seu valor como false na solicitação, se não quiser remover a listagem do AmazFreeTypepara cada ocasião
O tipo de feed especifica como os dados devem ser processados. Para alterar a latência de processamento e o inventário, você precisa especificar o tipo de feed “_POST_INVENTORY_AVAILABILITY_DATA_”.
Método de assinatura
Métodos de assinatura protocolos baseados em hash e você precisa aplicar esses métodos para calcular assinaturas. Por exemplo, HmacSHA256
Timestamp
Neste campo, você precisa adicionar o horário em que está fazendo a solicitação. Para alterar a latência de atendimento e o inventário do produto, você precisa enviar os seguintes dados na solicitação para a Amazon: $url =
https://mws.amazonservices.co.uk // Here you need to write the End point
/?AWSAccessKeyId=XXXXXXXXXXXXXXXXXXXX // Here write your AWS Access Key
&Action=SubmitFeed // Action should be SubmitFeed &FeedType=_POST_INVENTORY_AVAILABILITY_DATA_ // Feed Type
&MarketplaceIdList.Id.1= XXXXXXXXXXXXXX // Here write your marketplace list id
&Merchant=XXXXXXXXXXXXXX // Here write your seller id or merchant id
&Signature=1234Knowband1234example1234 // Here you need to write the signature
&SignatureMethod=HmacSHA256 // Hash method which used to create signature
&SignatureVersion=2
&Timestamp=gmdate("Y-m-d\TH:i:s\Z",time()))
&Version=2009-01-01
&PurgeAndReplace=false // Always set purgeAndReplace Value as false
// else it will replace all the existing product data
Você também precisará criar o arquivo XML que conterá os detalhes de inventário e latência de atendimento dos SKUs para os quais deseja alterar a latência de atendimento e o inventário. O feed de amostra é fornecido abaixo:
$xml_file = Caminho completo do arquivo XML no servidor $xml_data é fornecido abaixo
Você precisa enviar os dados XML UXML da solicitação e o cabeçalho juntos em uma solicitação. Os valores de cabeçalho são usados pelo servidor para uma verificação de ponta a ponta nos dados e para detectar modificações não intencionais nos dados mais adiante na transição.
$headers = array ( 'Esperar: ', 'Aceitar: ', 'Codificação de transferência: em partes', 'Tipo de conteúdo: application/x-www-form-urlencoded; charset=utf-8', 'Content-MD5: ' . base64_encode(md5_file($xml_file, true)) //codifica o arquivo xml );
$options = array( CURLOPT_URL => $url, CURLOPT_POST => 1, CURLOPT_FOLLOWLOCATION => true, // segue os redirecionamentos CURLOPT_RETURNTRANSFER => true, // retorna a página web CURLOPT_POSTFIELDS => $xml_data, CURLOPT_HTTPHEADER => $headers, CURLOPT_ENCODING => "UTF-8", // trata todas as codificações CURLOPT_AUTOREFERER => true, // define o referenciador no redirecionamento CURLOPT_CONNECTTIMEOUT => 120, // timeout na conexão CURLOPT_TIMEOUT => 120, // timeout na resposta CURLOPT_SSL_VERIFYHOST => 2, CURLOPT_SSL_VERIFYPEER => false, // desabilita a verificação de certificado CURLOPT_FILE => "$fp" ); $ch = curl_init( $url); @curl_setopt_array( $ch, $options ); $conteúdo = curl_exec( $ch);
Na resposta, você receberá o número dos SKUs que foram processados com sucesso (significa que a latência de atendimento e o inventário foram alterados) e o número de SKUs que não foram processados devido a um erro, conforme mostrado na captura de tela do feed de resposta abaixo:
Resumo
Depois de ler este documento, você (vendedor) pode alterar facilmente a latência de atendimento e o inventário de produtos na Amazon usando a API do Amazon MWS.
Banda de conhecimento oferece serviços de desenvolvimento de comércio eletrônico e pode ajudá-lo a criar um novo site de comércio eletrônico. Para fornecer aos nossos clientes o melhor e mais eficiente serviço pós-venda, temos uma equipe de suporte dedicada que está constantemente à disposição para ajudá-los. Continuamos a cumprir nossos deveres para com os clientes que desejam ajuda com problemas urgentes do site, mesmo nos finais de semana.
Os melhores módulos Magento, Opencart, Prestashop e Magento 2 também estão disponíveis. One Page SuperCheckout, Multi-Vendor Marketplace, Mobile App Builder, Spin and Win Module, Abandoned Cart e módulos mais populares são apenas alguns dos que a Knowband tem a oferecer. Você pode entrar em contato conosco em support@knowband.com se tiver alguma dúvida.
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:
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:
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.
Este blog nos ajuda a aprender como um vendedor pode excluir seus produtos do mercado da Newegg.
Métodos para excluir produtos do mercado Newegg
Você pode excluir produtos do mercado Newegg usando a conta do vendedor
Excluir manualmente da conta do vendedor
1. Abra o portal do vendedor Newegg (URL- https://sellerportal.newegg.com). 2. Preencha as credenciais (Nome de Usuário e Senha) e clique no botão Login. 3. Após o login
4. Na página da lista Item, você precisará clicar no botão Pesquisar depois de inserir o SKU na caixa de pesquisa, conforme mostrado na imagem abaixo.
5. Ao clicar no botão de pesquisa, a lista SKU pesquisada será exibida, e você precisará seguir as etapas a seguir para excluir os produtos. I. Marque a caixa de seleção dos produtos. II.Selecione o "Excluir item selecionado"opção na lista suspensa (localizada na parte inferior da página) e clique no botão OK para excluir o produto selecionado, conforme mostrado na imagem abaixo:
6. Ao clicar no botão OK, um pop-up será exibido na tela para confirmação e você precisará clicar no botão OK do pop-up para excluir os produtos selecionados, conforme mostrado na imagem abaixo:
Resumo
Este blog ajuda você (vendedor) a excluir seus produtos do mercado da Newegg.
Depois de ler este blog, você pode entender como o vendedor pode excluir os produtos do mercado de MercadoLibre.
Método para excluir produtos do Mercado de Mercado:
Você pode excluir produtos do mercado MercadoLibre por dois métodos:
Excluir manualmente da conta do comerciante
Usando o arquivo CSV.
1. Excluir manualmente da conta do comerciante
1. Faça o login em
3. Em seguida, você precisará inserir SKUs do produto na caixa de texto e clicar no botão enviar para excluir, conforme mostrado na imagem abaixo:
2. Usando o arquivo csv
Você pode excluir produtos em massa do mercado Mercadolibre usando um arquivo CSV. 1) Crie um "CSV"Arquivo com o nome de uma coluna:"mpid"e adicione todo o MPID.
Exemplo:
2) Vá para o Merchant Portal -> Flat Files -> Upload Files
Selecione "Excluir SKUs"opção
Aqui você pode fazer o upload do arquivo CSV que você criou na etapa 1 para excluir os produtos, conforme mostrado na imagem abaixo:
Espero que ajude. Deixe-me saber nos comentários em caso de qualquer confusão.
Depois de ler este blog, você poderá entender como um vendedor pode excluir produtos do mercado Go Sport.
Métodos para excluir produtos do mercado Go Sport
Você pode excluir produtos do mercado Go Sport por dois métodos: 1.Ao excluir manualmente da conta do comerciante 2.By Usando o Feed de Inventário
1.0 Excluir manualmente da conta do comerciante
1. Entre para ohttps://gosport-prod.mirakl.net/shop/user/api). 2. Após o registro, você precisará selecionar a lista de ofertas do "Meu inventário"guia como mostrado na imagem abaixo:
3. Na página da lista de ofertas, você precisará procurar o SKU usando o campo "Oferecer SKU" e marcar as caixas de seleção correspondentes àquelas SKUs que você deseja excluir, conforme mostrado na imagem abaixo.
4. Na parte inferior da página, você encontrará um botão para excluir o produto, conforme mostrado na imagem abaixo.
5. Ao clicar nesse botão, um pop-up será exibido na tela, mostrando a lista de SKUs que você selecionou para excluir e o botão para excluir essas SKUs. Isso é mostrado na imagem abaixo:
2.0 Usando o Feed de Inventário
Você pode excluir os produtos em massa do mercado Go Sport usando o feed de inventário. Você pode baixar o feed de inventário de amostra no link abaixo:
Nesse feed, você precisa preencher os dados nos seguintes campos:
SKUs: Digite o SKU que você deseja excluir
update-delete:? Enter “EXCLUIR"nesta coluna. ? Depois de criar o feed, você precisará fazer o upload do feed na conta do comerciante Go Sport. Os passos são dados abaixo:
1. Inicie sessão na conta do comerciante Go Sport (URL:https://gosport-prod.mirakl.net/shop/user/api). 2.Importar do arquivo"opção do"Meu inventário"tab. 3. Na página Importar arquivo, você precisará fazer o upload do feed como mostrado na imagem:
4. Você pode acompanhar o status do feed carregado usando a opção de importação de oferta de rastreamento, conforme mostrado na imagem acima. Ao clicar na opção Rastrear Oferta de Importação, uma nova página será aberta, onde você poderá verificar o status do feed enviado. Se o feed for importado com êxito, você também poderá verificar o status de processamento do feed, conforme mostrado na imagem abaixo:
Resumo
Depois de ler este documento, você (vendedor) pode excluir facilmente seus produtos do mercado Go Sport.