Suporte » Temas » Remover http:// do campo Site (url) nos comentarios

  • Resolvido Angelo Rocha

    (@angelorocha)


    Preciso fazer com que o campo dos comentarios “Site (comment_author_url)” nao imprima o http:// automaticamente na frente do nome do site de quem comentar, ja rodei na net atras de algum hack para remover o “http://” mais nao encontrei nada, alguem tem alguma ideia de como fazer isso?

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • Criador do tópico Angelo Rocha

    (@angelorocha)

    A minha ideia era usar o campo url para adicionar outro tipo de dado, ao invés de usar para o site do visitante queria usar para armazenar um campo cidade, so que ele colocava o http na frente, estava fazendo uma gambiarra.

    Encontrei uma solução mais viável que é colocar um campo extra nos comentarios, e removi o campo url, ficou 100%, abaixo a solução:

    Remover o campo URL:

    function remove_comment_fields($fields) {
        unset($fields['url']);
        return $fields;
    }
    add_filter('comment_form_default_fields','remove_comment_fields');

    Função para adicionar um campo extra:

    function add_comment_fields($fields) {
        $fields['cidade'] = '<p class="comment-form-age"><label for="cidade">' . __( 'Cidade' ) . '</label>' .
    	'<input id="cidade" name="cidade" type="text" size="30" /></p>';
        return $fields;
    }
    add_filter('comment_form_default_fields','add_comment_fields');
    
    function add_comment_meta_values($comment_id) {
         if(isset($_POST['cidade'])) {
            $cidade = wp_filter_nohtml_kses($_POST['cidade']);
            add_comment_meta($comment_id, 'cidade', $cidade, false);
        }
    
    }
    add_action ('comment_post', 'add_comment_meta_values', 1);

    Onde cidade é o campo que estou adicionando ao formulario de comentario.

    Adicionando o campo no formulario no template comment:

    $fields =  array(
    	'cidade' => '<p class="comment-form-email"><label for="cidade">' . 'Cidade' . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
            '<input id="cidade" name="cidade" type="text" value="' . esc_attr(  $commenter['cidade'] ) . '" size="30"' . $aria_req . ' /></p>'
    );

    Listando o campo nos comentarios (callback):
    echo "<li><strong>Cidade</strong>: ".get_comment_meta($comment->comment_ID, 'cidade', true)."</li>";

    É isso, espero que seja util para mais alguem.

    Fontes:
    WPTUTS
    CODEX

    Olá Angelo,

    Remover o campo de URL nos comentários

    Fiz essas mudanças que você sugeriu, mas ainda aparece a caixa com URL
    como opcional em meu blog. Assim sendo, recebo uma chuva de spams, que se utilizam dessa brecha para colocar suas urls.

    Já tentei de tudo, mas… sem êxito, e o forte de meu blog são os comentários e é inviável ficar moderando um por um, porque são centenas por dia.

    Obrigado pela postagem das dicas.

    Aurelio

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • O tópico ‘Remover http:// do campo Site (url) nos comentarios’ está fechado para novas respostas.