Suporte » Desenvolvendo com WordPress » Links externos em imagens destacadas

  • Resolvido jonans

    (@jonans)


    Existe alguma forma de colocar links para outros sites nas imagens destacadas?

    O campo url na hora de inserir uma imagem seja ela no post ou como imagem destacada permite inserir qualquer endereço, mesmo colocando ali ele não obedece a esse link.

    No meu tema tenho o seguinte código, imagino que mudando algo nele, consigo tal resultado, se alguem puder me dar essa ajuda.

    add_filter( 'post_thumbnail_html', 'my_post_image_html', 10, 3 );
    	function my_post_image_html( $html, $post_id, $post_image_id ) {
    		$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . '">' . $html . '</a>';
    		return $html;
    	}

    Se eu tiro essa chamada $html ele remove a função de link nas imagens, então deve ser nessa função mesmo, apenas não sei como.

    Valeu.

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • o que seria a imagem destacada?

    Se for uma imagem inserida em um post, é possível inserir um link nela pelo próprio gerenciador de mídia.

    Criador do tópico jonans

    (@jonans)

    A imagem destaca é aquela que você usa na chamada de um post, não é a que insere dentro do post.

    Por exemplo na página inicial do site, se você está listando 10 posts, e quer que essas chamadas possuam imagens, você pode usar a imagem destacada.

    Na tela de criação dos posts tem esse campo.

    O que eu precisava é em uma determinada categoria, ter a possibilidade de inserir links externos a essas imagens.

    Teste isto:

    Crie um campo personalizado. Digamos que você chame ele de “linkexterno”.
    Altere a linha:
    $html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . '">' . $html . '</a>';

    para:

    $html = '<a href="' . get_post_custom_values('linkexterno'); . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . '">' . $html . '</a>';

    Criador do tópico jonans

    (@jonans)

    Opa Pedro, valeu a ajuda.

    Então cara, coloquei aqui o cód. mas estava dando erro, retirei esse ‘ponto e virugula’ depois de (‘linkexterno’) e o erro sumiu.

    Estranho que quando se coloca o mouse em cima da imagem que eu atribui algum valor o endereço fica: meusite.com.br/Array
    Os que eu não atribui nenhum valor apenas mostram a url so site normal.

    O que seria esse Array?

    Uma dúvida que me apareceu agora, se eu optar por usar esse código na function, não posso mais usar o link para o post, ou se eu colocar o link para o post nesse campo, vai dar na mesma né?

    Valeu pela ajuda ai cara.

    o ponto e vírgula foi inserido acidentalmente (usei ctrl c + ctrl v), ainda bem que você se atentou a isso.

    Não cheguei a testar esse código, apenas dei a ideia de como fazer. O caminho é esse… Não sei o que é o “Array”.

    Colocar ou não na function vai depender muito do que vai ficar mais fácil pra você, ou do que você procura fazer em específico. De acordo com que entendi, eu não colocaria.

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • O tópico ‘Links externos em imagens destacadas’ está fechado para novas respostas.