• Resolvido Tonsantos

    (@tonsantos)


    Olá
    Bom, é a primeira vez que estou escrevendo nesse fórum, então não sei se estou postando no lugar certo, mas a minha dúvida é a seguinte:
    Como faço pra fazer aparecer o nome do autor do post na página que aparece quando a gente clica no nome do autor?
    Nesse blog, por exemplo, aparece o que eu quero, logo em cima, onde tem escrito “Author Archives: Tom”

    http://www.sramekdesign.com/author/tommi/

    e era isso que eu gostaria que aparecesse no meu blog, já que não terá apenas um autor para os posts. Era pra ser uma coisa simples, mas já colei e descolei tudo quanto é código e simplesmente não aparece nenhum texto que não seja fixo. =/

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • crie uma página author.php e antes do loop coloque

    <?php
    global $wp_query;
    $autor = $wp_query->get_queried_object();
    ?>

    e depois faça as chamadas para pegar as informações do autor.

    aqui está um exemplo de uma página autor

    <?php get_header(); ?>
    <div id="box_central_3">
    <div id="container">
    
    <?php
    global $wp_query;
    $autor = $wp_query->get_queried_object();
    ?>
    
    <?php if (have_posts()) : ?>
    
            <div id="titulo-pages">
                    <h2 class="titulo"><?php echo $autor->nickname; ?> possui atualmente <?php $n = get_the_author_posts(); if($n == 1) { the_author_posts(); ?> artigo publicado.</p>
    			<?php } else { the_author_posts(); ?> artigos publicados. <?php } ?></h2>
            </div><!--titulo-pages-->
    
    <?php if (get_option('aky_autores') == 'modo1') { ?>
        <div class="post-texto-page autor">
        <h2>Informa&ccedil;&otilde;es do Autor:</h2>
        <?php
    	//Avatar
    	$email = $autor->gravatar; if ($email != "" ) {
    		if (function_exists('get_avatar')) {
    				echo get_avatar($email, $size = '100');
    				}
    			}
        //Nome
    	$display_name = $autor->display_name; if ($display_name != "" ) {
    				echo "<p>Nome: $display_name</p>"; }
    	//Estado
    	$estado = $autor->estado; if ($estado != "" ) {
    				echo "<p>Estado: $estado</p>"; }
    	//Endereço
    	$endereco = $autor->endereco; if ($endereco != "" ) {
    				echo "<p>Endere&ccedil;o: $endereco </p>"; }
    	//Site
    	$site = $autor->site; if ($site != "" ) {
    				echo "<p>Site Pessoal: $site </p>"; }
        //Telefone
    	$tel = $autor->telefone; if ($tel != "" ) {
    				echo "<p>Telefone de Contato: $tel </p>"; }
    	//E-mail
        $email = $autor->email_publico; if ($email != "" ) {
    				echo "<p>E-mail: <a href=\"mailto:$email\">$email</a> </p>"; }
    	//Trabalhando
        $trabalhando = $autor->trabalhando; if ($trabalhando != "" ) {
    				echo "<p>Trabalhando em: $trabalhando </p>"; }
    	//Biografia
        $desc = $autor->description; if($desc != "") { ?>
        			<p class="autor-desc"><?php the_author_meta('description', $autor->ID); ?></p><?php } ?>
        </div>
    <?php } ?>
    
    <?php while (have_posts()) : the_post(); ?>
    
    <div <?php post_class('conteudo') ?>>
    	<?php include (TEMPLATEPATH . '/post/post-arquivos.php'); ?>
    </div>
    
    <?php endwhile; else: ?>
    
            <div id="titulo-pages">
                    <h2>Nenhum Resultado Encontrado</h2><br />
                    <p>A pesquisa por <span class="resultado"><?php the_post(); echo '<strong>'. $s .'</strong>'; rewind_posts(); ?></span> n&atilde;o obteve nenhum resultado.</p>
            </div><!--titulo-pages-->
    
    <?php endif; ?>
    
    		<?php include (TEMPLATEPATH . '/nav/paginavi-modelo.php'); ?>
    
    </div><!--container-->
    
    <?php get_sidebar(); ?>
    <?php get_footer(); ?>

    Observe que neste modelo algumas informações estão pegando opções extras então no seu caso se usar o mesmo código algumas informações não vão te mostrar nada, mas algunas trazem as informações padrões do sitema e vc pode usar como base para criar a sua página.

    Criador do tópico Tonsantos

    (@tonsantos)

    Ainda não consegui adaptar esse código, não entendo quase nada de PHP… xD
    Se eu coloco esse lá, fica dando “erro na linha 57”, ou coisa assim, será que não tem outra forma? eu uso esse tema “Aqua Blue”.

    http://wordpress.org/extend/themes/aqua-blue

    Ola Tonsantos fiz uma página author para seu tema, agora é só vc personalizar com css.

    Para testar preencha todos os campos do usuário para ver o resultado, porque só mostra as informações que estão preenchidas.

    download
    http://www.megaupload.com/?d=NN0PX1V7

    coloque o arquivo no mesmo lugar que está seu index.php

    Criador do tópico Tonsantos

    (@tonsantos)

    Olá!
    Desculpe a demora pra responder, não mexi muito no blog desde que começaram as aulas, agora mexo mais nos fins de semana.

    O seu código funcionou perfeitamente! Muito obrigado mesmo! Consegui personalizar tudo que eu gostaria, nessa parte.

    Agora surgiram outras dúvidas em relação a outras partes do blog.
    Como eu mudo a parte onde está escrito:
    “Name (required)”
    “E-Mail (will not be published, required)”
    “Website(optional)”
    Não encontrei isso em nenhuma parte dos códigos do meu tema. Apenas encontrei no arquivo “comment-template.php”, mas alguns valores estão diferentes de lá, como se tivesse sido redefinido em algum lugar.
    o código que aparece lá é esse:

    $fields =  array(
    		'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Name' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
    		            '<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' /></p>',
    		'email'  => '<p class="comment-form-email"><label for="email">' . __( 'Email' ) . '</label> ' . ( $req ? '<span class="required">*</span>' : '' ) .
    		            '<input id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' /></p>',
    		'url'    => '<p class="comment-form-url"><label for="url">' . __( 'Website' ) . '</label>' .
    		            '<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>',
    	);

    mas se mudo alguma coisa aí, não muda nada na página do blog.

    =/

    Criador do tópico Tonsantos

    (@tonsantos)

    Opa!
    Só vim avisar que achei onde o código tinha sido reescrito, era num lugar tão óbvio, mas que me passou despercebido, era no arquivo “functions.php”.
    =)

    Então era isso, tópico resolvido!
    \o/

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • O tópico ‘"Nome do Autor" na página de "Arquivos do Autor"’ está fechado para novas respostas.