Angelo Rocha
Respostas no Fórum
-
Fórum: Temas
Em resposta a: Onde eu encontro os campos de comentários?Na ultima linha onde tem:
<?php comment_form(); ?>
Voce coloca uma div, span, p, ou qualquer outra tag, coloca a classe que deseja e ataca a textarea desta classe.
Ex.:
<div class="textareacustom"> <?php comment_form(); ?> </div>
Ai depois vai no teu css e manda:
div.textareacustom textarea{ seus atributos aqui... }
Deve funcionar.
Fórum: Temas
Em resposta a: Onde eu encontro os campos de comentários?No comments.php do seu template que esta no diretório: wp-content/themes/pasta_do_seu_tema
Lá deve ter este arquivo, ai vc altera la, nao mexa nesse da pasta wp-includes.
Fórum: Temas
Em resposta a: Onde eu encontro os campos de comentários?No comments.php.
Fórum: Temas
Em resposta a: Usar bootstrap menus nos menus nativos do wordpressSegue o codigo do menu para quem precisar:
bootstrap_menu.php
<?php class twitter_bootstrap_nav_walker extends Walker_Nav_Menu { function start_lvl( &$output, $depth ) { $indent = str_repeat( "\t", $depth ); $output .= "\n$indent<ul class=\"dropdown-menu\">\n"; } function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { global $wp_query; $indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; if (strcasecmp($item->title, 'divider')) { $class_names = $value = ''; $classes = empty( $item->classes ) ? array() : (array) $item->classes; $classes[] = ($item->current) ? 'active' : ''; $classes[] = 'menu-item-' . $item->ID; $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) ); if ($args->has_children && $depth > 0) { $class_names .= ' dropdown-submenu'; } else if($args->has_children && $depth === 0) { $class_names .= ' dropdown'; } $class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : ''; $id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args ); $id = $id ? ' id="' . esc_attr( $id ) . '"' : ''; $output .= $indent . '<li' . $id . $value . $class_names .'>'; $attributes = ! empty( $item->attr_title ) ? ' title="' . esc_attr( $item->attr_title ) .'"' : ''; $attributes .= ! empty( $item->target ) ? ' target="' . esc_attr( $item->target ) .'"' : ''; $attributes .= ! empty( $item->xfn ) ? ' rel="' . esc_attr( $item->xfn ) .'"' : ''; $attributes .= ! empty( $item->url ) ? ' href="' . esc_attr( $item->url ) .'"' : ''; $attributes .= ($args->has_children) ? ' data-toggle="dropdown" data-target="#" class="dropdown-toggle"' : ''; $item_output = $args->before; $item_output .= '<a'. $attributes .'>'; $item_output .= $args->link_before . apply_filters( 'the_title', $item->title, $item->ID ) . $args->link_after; $item_output .= ($args->has_children && $depth == 0) ? ' <span class="caret"></span></a>' : '</a>'; $item_output .= $args->after; $output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args ); } else { $output .= $indent . '<li class="divider">'; } } function display_element( $element, &$children_elements, $max_depth, $depth=0, $args, &$output ) { if ( !$element ) { return; } $id_field = $this->db_fields['id']; if ( is_array( $args[0] ) ) $args[0]['has_children'] = ! empty( $children_elements[$element->$id_field] ); else if ( is_object( $args[0] ) ) $args[0]->has_children = ! empty( $children_elements[$element->$id_field] ); $cb_args = array_merge( array(&$output, $element, $depth), $args); call_user_func_array(array(&$this, 'start_el'), $cb_args); $id = $element->$id_field; if ( ($max_depth == 0 || $max_depth > $depth+1 ) && isset( $children_elements[$id]) ) { foreach( $children_elements[ $id ] as $child ){ if ( !isset($newlevel) ) { $newlevel = true; $cb_args = array_merge( array(&$output, $depth), $args); call_user_func_array(array(&$this, 'start_lvl'), $cb_args); } $this->display_element( $child, $children_elements, $max_depth, $depth + 1, $args, $output ); } unset( $children_elements[ $id ] ); } if ( isset($newlevel) && $newlevel ){ $cb_args = array_merge( array(&$output, $depth), $args); call_user_func_array(array(&$this, 'end_lvl'), $cb_args); } $cb_args = array_merge( array(&$output, $element, $depth), $args); call_user_func_array(array(&$this, 'end_el'), $cb_args); } } ?>
menu.php
<?php require(get_template_directory() . '/bootstrap_menu.php'); ?> <div class="navbar"> <!-- Div Navbar --> <button data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar" type="button"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <div class="navbar-inner"> <!-- Navbar-inner --> <div class="nav-collapse collapse"> <!-- Nav-collapse --> <nav class="menu"> <!-- Main nav --> <?php wp_nav_menu(array( 'container' => false, 'items_wrap' => '<ul id="%1$s" class="%2$s nav">%3$s</ul>', 'walker' => new twitter_bootstrap_nav_walker )); ?> </nav> <!-- End Nav Tag --> </div> <!-- End Nav-collapse --> </div> <!-- End Navbar-inner --> </div> <!-- End Navbar -->
Chamando em qualquer parte do tema:
<?php get_template_part(‘menu’) ?>
Eu coloquei o menu em um arquivo e o codigo do walker em outro so por organização mesmo, e pq meu functions ta muito grande, hehe…
Mais podem colocar tudo junto, ou no functions, fica a criterio.É isso, vlw pela ajuda.
Fórum: Temas
Em resposta a: Usar bootstrap menus nos menus nativos do wordpresshaha!!! Eu tava fazendo isso agora, dando uma sacada no cod do plugin, vlw pela dica Claudio, qualquer duvida volto a pertubar vcs 😉
Fórum: Temas
Em resposta a: Duvida com custom post typesDeblyn Prado, obrigado pelo link, abaixo vi que tem muitos links sobre CPT, acho que vai me ajudar bastante, vou continuar estudando e qualquer duvida que tiver vou postando aqui para tirar duvidas, obrigado.
Fórum: Temas
Em resposta a: Mostrar miniaturas mas para vídeosMano eu fiz um post type para videos em um projeto recente, pra mim atendeu, segue o codigo:
functions.php
add_action( 'init', 'create_post_type_video' ); function create_post_type_video() { $labels = array( 'name' => _x('Videos', 'post type general name'), 'singular_name' => _x('Video', 'post type singular name'), 'add_new' => _x('Adicionar Novo', 'video'), 'add_new_item' => __('Adicionar novo video'), 'edit_item' => __('Editar video'), 'new_item' => __('Novo video'), 'all_items' => __('Todos os videos'), 'view_item' => __('Ver video'), 'search_items' => __('Buscar videos'), 'not_found' => __('Nenhum video encontrado'), 'not_found_in_trash' => __('Nenhum video na lixeira'), 'parent_item_colon' => '', 'menu_name' => 'Videos', ); register_post_type( 'video', array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'has_archive' => 'films', 'rewrite' => array( 'slug' => 'videos', 'with_front' => false, ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => true, 'menu_position' => null, 'supports' => array('title','editor','author','thumbnail','excerpt','comments') ) ); register_taxonomy( 'video_category', array( 'video' ), array( 'hierarchical' => true, 'label' => __( 'Categorias dos videos' ), 'labels' => array( // Labels customizadas 'name' => _x( 'Categorias', 'taxonomy general name' ), 'singular_name' => _x( 'Categoria', 'taxonomy singular name' ), 'search_items' => __( 'Buscar nas categorias' ), 'all_items' => __( 'Todas as categorias' ), 'parent_item' => __( 'Sub-categoria' ), 'parent_item_colon' => __( 'Sub-categoria:' ), 'edit_item' => __( 'Editar Categoria' ), 'update_item' => __( 'Atualizar Categoria' ), 'add_new_item' => __( 'Adicionar nova categoria' ), 'new_item_name' => __( 'Nome da nova categoria' ), 'menu_name' => __( 'Categorias' ), ), 'show_ui' => true, 'show_in_tag_cloud' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'videos/categorias', 'with_front' => false, ), ) ); register_taxonomy_for_object_type( 'tags', 'video' ); } add_action( 'add_meta_boxes', 'video_add_meta_box' ); function video_add_meta_box() { add_meta_box( 'video_metaboxid', 'ID do Vídeo', 'video_inner_meta_box', 'video' ); } function video_inner_meta_box($video){ echo '<label for="realizador">ID:</label>'; echo '<input type="text" name="id_video"'; echo 'value="'; echo get_post_meta( $video->ID, '_id_video', true ); echo '">'; } add_action( 'save_post', 'ewp_video_save_post', 10, 2 ); function ewp_video_save_post( $video_id, $video) { if ( ! $_POST['id_video'] ) return; update_post_meta( $video_id, '_id_video', strip_tags( $_POST['id_video'] ) ); return true; }
archive-video.php
<ul class="video-item"> <?php $args = array( 'post_type' => 'video', 'posts_per_page' => 10); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); ?> <li> <?php $videoid = get_post_meta($post->ID, "_id_video", single); echo '<img alt="teste" width="200" height="200" src="http://i2.ytimg.com/vi/'; echo $videoid; echo "/default.jpg"; echo '">'; ?> <a href="<?php the_permalink(); ?>" title="<?php the_title() ?>"><h3 class="title-video"><?php the_title() ?></h3></a> </li> <?php endwhile; ?> </ul>
Note que o archive-video.php deve ser criado na raiz do seu tema.
Voce pode chamar os ultimos videos em qualquer parte do seu tema com a query acima, altere a seguinte linha para as dimenções que vc precisar:
echo '<img alt="teste" width="200" height="200" src="http://i2.ytimg.com/vi/';
Somente para youtube.
Ele ja ta gerando o thumb, espero que seja util.
Fórum: Temas
Em resposta a: Usar bootstrap menus nos menus nativos do wordpressHummmmm…
Vlw pela dica, mais gostaria de fazer isso na mão pra deixar
o tema tratando isso, sem plugins.Fórum: Temas
Em resposta a: A folha de estilo style.css não contém um cabeçalho válidoO tema é para wordpress mesmo?
Pois se da essa mensagem pode ser que nao tenha os dados do tema no arquivo “style.css”, logo no inicio deve ter o seguite/* Theme Name: Digite aqui o nome do tema Theme URI: digite aqui a url do tema Author: o nome do autor Author URI: site do autor Description: descrição do tema Version: numero da versao License: tipo da licença License url da licença */
Isso deve estar antes de começar os codigos da folha de estilo, no topo do documento, deve ser isso.
Fórum: Temas
Em resposta a: Duvida com custom post thumbnailsMe ligo, vlw Eduardo pela ajuda;
Topico resolvido.Fórum: Temas
Em resposta a: Duvida com custom post thumbnailsOpa, obrigado pela resposta, me tira uma duvida, neste caso,
eu teria que gerar os thumbs novamente??? Pois testando aqui ele deixou as imagens sem as dimenções exatas, da uma olhada nesse print, as imagens de baixo estao com a função que vc postou.Este justamente é o problema, ele deixa uma proporção e nao coloca o tamanho realmente extato, neste exemplo estou usando 160×80. Se eu colocar um tamanho como por exemplo 150×150 ai da certo, mesmo dando o drop ele nao corta, pelo menos aqui nao da certo =/
Alguma dica?
Fórum: Temas
Em resposta a: Alterar a página inicial (index.php para aviso.php)Cria um arquivo chamado “home.php” dentro do diretorio do teu tema que resolve, nele vc coloca o aviso que desejar.
Fórum: Temas
Em resposta a: Banner indesejado rodapé wordpressCreio que a solução seria a mesma ja mencionada pela Diana, edite o seu footer.php
Porem vc vai mesmo remover os creditos do desenvolvedor original?!
Não acho isso coerente.Fórum: Temas
Em resposta a: Remover http:// do campo Site (url) nos comentariosA 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
CODEXFórum: Temas
Em resposta a: Tema com parallax effectsProcurei tambem e nao encontrei nada gratis, vi este no Theme Forest, muito bonito: http://themeforest.net/item/pulsar-fully-responsive-parallax-wordpress-theme/4105206
Mais gratis mesmo, nao vi tbm =/