HTMLy CMS

Sua fonte de referencia sobre o CMS no idioma português

GitHub deste site

HTMLy CMS em Língua Portuguesa | Dicas & Outros

Informações diversas

Troca de senha e seguraça

Senhas são colocadas no arquivo config/users/username.ini (onde "username" é o nome do usuário) em texto simples, algoritmos de criptografia suportados por php hash ou bcrypt (recomendado). Para gerar uma senha criptografada bcrypt:

$ php -a > echo password_hash('senhaNova', PASSWORD_BCRYPT);

Isso produzirá um hash que deve ser colocada no campo de password em username.ini. Certifique-se de que o campo de criptografia esteja definido como password_hash.

Caso queira apenas trocar a senha, altere a linha password = yourpassword - em 'yourpassword' pela senha desejada e também a linha encryption = XXXX trocando 'XXXX' para 'clear'.


Ativar a segurança via reCAPTCHA

reCAPTCHA é um serviço gratuito que protege seu site contra spam e abuso. Ele usa técnicas avançadas de análise de risco para diferenciar humanos de bots.

O primeiro passo é ter uma conta no Google, em seguida logar no Console de Administração do reCaptcha e gerar o par de chaves: site key (chave do site) e secret key (chave secreta).

A chave do site é utilizada para fazer a chamada do serviço do Google no seu site ou aplicativo móvel. A chave secreta autoriza a comunicação entre sua aplicação e o servidor reCaptcha ao qual verifica a resposta do usuário.

Após logar no serviço do reCAPTCHA, escolha um tipo (v3 ou v2), em seguida coloque seu domínio 'seusite.com.br', selecione para aceitar os termos e clique em Registrar. Na próxima tela irá mostrar os valores gerados dos pares. Copie cada um, logue no Painel de Controle do HTMLy em Configurar->Widget->reCAPTCHA, selecione habilitar e cole os pares de chaves nos campos correspondentes.


Migração do Blogger Manual

Para a URL ficar coerente com a do Blogger primeiro vá em Configurações->Configurar->Metatags, e em Link permante altere para '/ano/mes/url-da-postagem'. Depois na linha 125 do arquivo localizado em system/admin/admin.php adicione o ponto '.' sem as aspas depois de 'Z0-9' ficando "/[^a-zA-Z0-9. \-...". Faça também a alteração na linha 265. Após a alteração vá em Configurações->Ferramentas e clique em Limpar Cache. Quando for adicionar uma postagem lembre-se de incluir o '.html' na URL.

Para importar o conteúdo do Blogger primeiro vá nas configurações de seu blog do Blogger, e altere a opção para que o RSS (ou Feed) esteja com a versão completa, depois vá no Painel de Controle do HTMLy em Ferramentas->Importar RSS e cole a URL do RSS de seu blog e clique no botão. Pode ser que ocorra falha, nesse caso você pode gerar os arquivos manualmente, copiando o conteúdo e criando postagem por postagem ou editando o HTML por FTP ou FileManager (Gerenciador de Arquivos) de sua hospedagem seguindo o detalhamento da estrutura.


Customização de configuração

Você pode estender as funcionalidades do HTMLy criando variáveis customizadas de dois modos:

  • Alterando o arquivo config/config.ini e adicionando a variável sua.variavel="valor desejado";
  • Inserindo a variável no painel de administração em Configurações->Configurar->Customizar e preencher "sua.variavel" no campo da esquerda, e na direita o "valor desejado";

Por exemplo, você poderia criar uma variável widget.noticia colocando um script como valor, e depois editar um arquivo do tema, como o post.html e chamar a função <?php echo config('widget.noticia'); ?> para renderizar a notícia.


Arquivo de configuração config.ini

O arquivo de configuração do HTMLy, gerado na instalação em config/config.ini dispôe de diversas variáveis.

Note que os itens podem ser editados manualmente ou direto pelo Painel de Controle em Configurações->Configurar do menu lateral.

Comentários são marcados com ponto-e-virgula no início da linha. Veja a lista completa abaixo v2.8.1.

; Arquivo de configuração <-- Exemplo de comentário site.url = "" <-- URL do site (requerido para que o site funcione) timezone = "America/Sao_Paulo" <-- Seta o timezone para a localidade de São Paulo date.format = "%d/%m/%Y" <-- Exemplo do padrão em português 'dd/mm/yyyy' (+ no link "https://bit.ly/2Vwwetd") language = "pt_BR" <-- Define o CMS com idioma em português blog.title = "" <-- Nome do site/blog blog.tagline = "" <-- Slogan do site/blog blog.description = "" <-- Descrição do site/blog blog.copyright = "(c) Seu nome" <-- Direitos reservados permalink.type = "default" <-- Define o formato padrão dos links "default" para o formato '/ano/mes/titulo' "post" para '/post/titulo' static.frontpage = "false" <-- Define o tipo de página inicial "false" - padrão como visualização de blog "true" - ativa a página como estática, se preferir utilizar o mesmo layout e main, apenas crie o arquivo static--front.html.php como base no static.html.php blog.enable = "false" <-- Desabilita "false" ou Habilita "true" o link '/blog' Ideal "true" quando a página inicial é estática ; Redes sociais social.twitter = "" <-- Link do Twitter social.facebook = "" <-- Link do Facebook breadcrumb.home = "Inicial" <-- Define o texto do link da página inicial comment.system = "disable" <-- Escolha "facebook", "disqus" ou desativado "disable" para o sistema de comentário ; serviço de comentários do Facebook fb.appid = "" <-- Necessário ter uma conta de desenvolvedor do Facebook e criar o ID de Aplicativo "https://bit.ly/3B6K31A" fb.num = "5" <-- Define o número de publicações fb.color = "light" <-- Define a cor "light" (claro) ou "dark" para escuro ; serviço de comentários Disqus disqus.shortname = "" <-- Informe o id gerado no site 'disqus.com' ; Ferramentas do Google google.wmt.id = "" <-- Identificação do Web Master Tools google.gtag.id = "" <-- Identificador da versão recente do Universal Analytics google.analytics.id = "" <-- ID do Google Analytics (legado) ; Segurança no Login com Google reCAPTCHA google.reCaptcha = "false" <-- "true" para habilitar o serviço / "false" desabilitado por padrão [+ detalhes acima] google.reCaptcha.public = "" <-- chave pública google.reCaptcha.private = "" <-- chave privada ; Paginação, RSS e JSON posts.perpage = "10" <-- Número de posts por página category.perpage = "10" <-- Número de posts por página filtrados por Categoria tag.perpage = "10" <-- Número de posts por página filtrados por Tag archive.perpage = "10" <-- Número de posts por página filtrados por Arquivados search.perpage = "10" <-- Número de posts por página no resultado da Busca profile.perpage = "10" <-- Número de posts por página no perfil de usuário json.count = "10" <-- Resultados da API JSON type.perpage = "10" <-- Número de posts por página por tipo Link 'https://site.com.br/type/TIPO' sendo TIPO 'post, video, audio, link ou quote' ; Informação da categoria category.info = "true" <-- Ativa "true" ou Desativa "false" a descrição ; Postagem relacionada related.count = "3" <-- Limita o número de posts relacionadas ; Postagem recente recent.count = "5" <-- Define o limite de postagens recentes ; Postagem popular popular.count = "5" <-- Número de posts populares ; Resumo do texto teaser.type = "full" <-- Define se a postagem será completa "full" ou limitada "trimmed" Quando "full" Você pode limitar o texto no editor utilizando CONTROL+M ou clicando no ícone seta para direita read.more = "Leia mais" <-- Texto utilizado no link quando a postagem é limitada teaser.char = "200" <-- Número de caracteres máximo para a postagem limitada ; Para buscadores description.char = "150" <-- Limite de caracteres para a descrição do artigo ; Notícias rss.count = "10" <-- Número de posts no RSS rss.char = "200" <-- Limite de caracteres para postagem, caso vazio irá mostrar o post completo ; Visualizações views.counter = "false" <-- Habilita "true" ou Desabilita "false" a visualização de contagem de visitas na página de Administração ; Prioridades do Sitemap sitemap.priority.base = "1.0" <-- Defina "false" para desativar um item. Prioridades são classificadas entre "0.0" e "1.0" sendo o número maior com mais prioridade. Navegue pelo sitemap em "https://seusite.com.br/sitemap.xml" (+ em "https://bit.ly/3enlnID") sitemap.priority.post = "0.5" sitemap.priority.static = "0.5" sitemap.priority.category = "0.5" sitemap.priority.tag = "0.5" sitemap.priority.archiveDay = "0.5" sitemap.priority.archiveMonth = "0.5" sitemap.priority.archiveYear = "0.5" sitemap.priority.author = "0.5" sitemap.priority.type = "0.5" ; Pré-lançamentos prerelease = "false" <-- Defina "true" instalar também as versões de teste ; Cache cache.expiration = "6" <-- Define o número de horas para expirar o cache (padrão 6 horas) cache.off = "false" <-- Ative "true" ou Desative "false" o cache das páginas e outros ; Métricas generation.time = "false" <-- Defina "true" para mostrar o tempo de geração da página comentada no HTML ; Cache TimeStamp cache.timestamp = "false" <-- Defina "true" para habilitar o cache timestamp ; Tema ativo views.root = "themes/twentyfifteen" <-- Coloque o caminho da pasta do tema ; Framework views.layout = "layout" <-- Página 'index' para carregamento do tema ; Miniatura (não padrão) img.thumbnail = "false" <-- Coloque "true" para definir a miniatura (depende do tema implementar) default.thumbnail = "" <-- Inserir a imagem padrão de miniatura ... <-- Novas variáveis customizadas definidas no painel irão aparecer aqui, caso precise excluir alguma apague aqui