Anderson G M Olsen Postado Setembro 11, 2012 Postado Setembro 11, 2012 Bom todos sabem que não existe nativo ao whmcs um sistema de 404 - página não encontrada. Neste final de semana resolvi alterar a pasta do meu whmcs e até ajustar todos os links me deparei com um problema. Alguns links ficaram quebrados e aparecia uma imagem horrível. Então fui atrás de algo para criar uma página 404 para o whmcs. Achei vários Addons pagos... Como não queria gastar achei uma solução rápida e resolvi postar a alternativa aqui para o pessoal. 1. No .htaccess da raiz do whmcs adicione: ErrorDocument 404 /404.php 2. Na raiz do whmcs crie um arquivo 404.php com o seguinte código PHP dentro e salve: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); initialiseClientArea(); if ($_SESSION['uid']) { } $smartyvalues["variablename"] = $value; $templatefile = "404"; outputClientArea($templatefile); ?> 3. Dentro da pasta do seu template crie um arquivo chamado 404.tpl e dentro adicione a mensagem que você deseja que seja exibida quando uma página não for encontrada em seu whmcs! Observação: Vou deixar de exemplo o código que montei para o meu 404.tpl do template: <br /> <br /> <br /> <br /> <center><img src="http://suaempresa.com.br/templates/nomedotempalte/images/404.gif"/> <br /> <br /> <br /> <p><h1>404 - Página não Encontrada</h1></p> <p><h3>A página que você procura não foi localizada ou encontra-se em manutenção. Por favor informe nossa equipe de desenvolvimento o link que você está tentando acessar, através do e-mail <a href="mailto:contato@seuemail.com.br">contato@seuemail.com.br</a> para que seja ajustado essa página.</h3></p></center> <br /> <br /> <br /> <br /> É isso ai ... simples solução que já resolve alguma coisa... Anexo o 404.gif que usei em meu site para quem quiser usar.
HostYola Networks ®!. Postado Setembro 11, 2012 Postado Setembro 11, 2012 Valeu!, vou personalizar ele mais um pouco e começar a utilizá-lo.
AdrianoC Postado Setembro 11, 2012 Postado Setembro 11, 2012 valeu vou dar uma personalizada também e usar....
edvan Postado Setembro 11, 2012 Postado Setembro 11, 2012 Bom todos sabem que não existe nativo ao whmcs um sistema de 404 - página não encontrada. Neste final de semana resolvi alterar a pasta do meu whmcs e até ajustar todos os links me deparei com um problema. Alguns links ficaram quebrados e aparecia uma imagem horrível. Então fui atrás de algo para criar uma página 404 para o whmcs.... Anderson, Parabéns pela dica. Se me permite gostaria de dá uma contribuição... e irei adicionar essa dica no WHMCS.blog.br ( obviamente que darei o crédito a você ). No arquivo 404.php fica legal personalizar dessa forma: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); $pagetitle = "Página não Encontrada"; $pageicon = "images/support/clientarea.gif"; $breadcrumbnav = '<a href="index.php">'.$_LANG['globalsystemname'].'</a>'; $breadcrumbnav .= ' > <a href="404.php">Erro - Página não Encontrada</a>'; initialiseClientArea($pagetitle,$pageicon,$breadcrumbnav); $templatefile = "404"; outputClientArea($templatefile); ?> E no .tpl fiz uma customização: <br /> <br /> <br /> <br /> <center><img src="templates/{$template}/images/404.gif"/> <br /> <br /> <br /> <p><h1>404 - Página não Encontrada</h1></p> <p><h3>A página que você procura não foi localizada ou encontra-se em manutenção. Por favor informe a nossa equipe o link que você está tentando acessar, através do <a href="submitticket.php?step=2&deptid=3&subject=URL%20com%20Erro!&message=Favor%20informar%20aqui%20a%20URL%20com%20erro!">link</a> para que seja ajustado essa página.</h3></p></center> <br /> <br /> <br /> <br /> Em &deptid=3 você substitui pelo id do departamento que desejar. Veja como ficou: Se o visitante/cliente clicar no link. Assim será possível personalizar o título da página e a compatibilidade com charset ISO e UTF-8... além da tag {$template} que irá preencher o template utilizado! Abraços
Anderson G M Olsen Postado Setembro 11, 2012 Autor Postado Setembro 11, 2012 Anderson, Parabéns pela fica. Se me permite gostaria de dá uma contribuição... e irei adicionar essa dica no WHMCS.blog.br ( obviamente que darei o crédito a você ). No arquivo 404.php fica legal personalizar dessa forma: <?php define("CLIENTAREA",true); require("dbconnect.php"); require("includes/functions.php"); require("includes/clientareafunctions.php"); $pagetitle = "Página não Encontrada"; $pageicon = "images/support/clientarea.gif"; $breadcrumbnav = '<a href="index.php">'.$_LANG['globalsystemname'].'</a>'; $breadcrumbnav .= ' > <a href="404.php">Erro - Página não Encontrada</a>'; initialiseClientArea($pagetitle,$pageicon,$breadcrumbnav); $templatefile = "404"; outputClientArea($templatefile); ?> E no .tpl fiz uma customização: Em &deptid=3 você substitui pelo id do departamento que desejar. Veja como ficou: Se o visitante/cliente clicar no link. Assim será possível personalizar o título da página e a compatibilidade com charset ISO e UTF-8... além da tag {$template} que irá preencher o template utilizado! Abraços Nem tinha pensado nisso, trocar o e-mail pelo formulário de contato! Perfeito ... Pode adicionar a dica sim! Melhor do que sair comprando Addons americanos! Simples e Resolve o problema! Já ajustei com a sua modificação!
edvan Postado Setembro 12, 2012 Postado Setembro 12, 2012 Nem tinha pensado nisso, trocar o e-mail pelo formulário de contato! Perfeito ... Pode adicionar a dica sim! Melhor do que sair comprando Addons americanos! Simples e Resolve o problema! Já ajustei com a sua modificação! Blz. No .htaccess eu tive problemas ao utilizar assim: ErrorDocument 404 /404.php Daí coloquei a URL completa e funcionou: ErrorDocument 404 http://URL_DO_404/404.php
Anderson G M Olsen Postado Setembro 12, 2012 Autor Postado Setembro 12, 2012 Blz. No .htaccess eu tive problemas ao utilizar assim: Daí coloquei a URL completa e funcionou: Que coisa ... aqui rodou direto so colocando o ErrorDocument 404 /404.php ... Pelo menos achou uma saída para quem sofra deste mesmo problema!
edvan Postado Setembro 12, 2012 Postado Setembro 12, 2012 Que coisa ... aqui rodou direto so colocando o ErrorDocument 404 /404.php ... Pelo menos achou uma saída para quem sofra deste mesmo problema! Seria bom que nesse redirecionamento informasse a URL que o cliente tentou acessar. Poderia até fazer uma notificação automática ( log de atividades ) ou via URL formulário do suporte.
HostYola Networks ®!. Postado Setembro 12, 2012 Postado Setembro 12, 2012 Seria bom que nesse redirecionamento informasse a URL que o cliente tentou acessar. Poderia até fazer uma notificação automática ( log de atividades ) ou via URL formulário do suporte. Ficaria legal, vou tenta aqui.
Visitante Postado Setembro 12, 2012 Postado Setembro 12, 2012 Prezados, É exatamente o que utilizo aqui, é bem simples e pode ser melhorado infinitamente, pode ser feito um código PHP, ao acessar a página é inserido um registro informando o que eu desejar, como URL, ip, de onde veio, navegador, etc. num MySQL e podendo ser exibido onde eu quiser. O que ocorre Edvan, o que a função ErrorDocument não é um redirecionamento, e sim como o include(''); do PHP, ela inclui a página que tu quiser. Ao dar um erro que o servidor não localiza o arquivo desejado, ele inclui a página com o Apache. Edvan, eu creio que não funciona pra você, talvez porque o RewriteEngine não esteja ligado. Tente inserir da seguinte maneira: RewriteEngine On ErrorDocument 404 /404.php Espero que lhe ajude! :) Cordialmente, Ricardo Cavalcante.
Posts Recomendados