Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Hooks no WordPress

Apresentação para o meetup de WordPress em Curitiba no dia 27/05/2017. Explicação do que são hooks, o que são actions e filters, quais são suas diferenças e como usá-los, com exemplos.

  • Login to see the comments

  • Be the first to like this

Hooks no WordPress

  1. 1. Hooks no WordPress Felipe Elia – Meetup Curitiba – 27/05/2017
  2. 2. O que são hooks? Modificar o comportamento sem modificar o código - Alterar o conteúdo de um post antes de inserir no BD - Enviar um e-mail ao excluir um usuário
  3. 3. Filters Alterar valor de variável Tem retorno the_title the_content login_headerurl wp_insert_post_data Hooks no WordPress Actions Fazer alguma coisa / Gatilho Não tem retorno init plugins_loaded wp_enqueue_scripts delete_user
  4. 4. Hooks no WordPress Filters add_filter( $tag, $funcao, $prioridade = 10, $num_args = 1 ); // Orientado a Objeto: add_filter( $tag, array( $this, $metodo ) ); add_filter( $tag, array( 'Nome_da_Classe', $metodo_estatico ) ); remove_filter( $tag, $funcao, $prioridade = 10 ); apply_filters( $tag, $valor [, $param_1, $param_2, ...] );
  5. 5. Hooks no WordPress No functions.php do tema: function direitos_conteudo( $conteudo ) { return $conteudo . '<p>Todos os direitos reservados.</p>'; } add_filter( 'the_content', 'direitos_conteudo' ); No wp-includes/post-template.php: function the_content( $more_link_text = null, $strip_teaser = false) { ... $content = apply_filters( 'the_content', $content ); ... }
  6. 6. Hooks no WordPress Prioridade 8: WP_Embed->run_shortcode(); WP_Embed->autoembed(); Prioridade 10: wptexturize wpautop shortcode_unautop prepend_attachment wp_make_content_images_responsive Prioridade 11: capital_P_dangit do_shortcode convert_smilies Filtros nativos em the_content
  7. 7. Hooks no WordPress No wp-includes/post-template.php: function get_the_title( $post = 0 ) { ... return apply_filters( 'the_title', $title, $id ); } No functions.php do tema: function titulo_negrito( $titulo ) { return '<strong>' . $titulo . '</strong>'; } add_filter( 'the_title', 'titulo_negrito' ); function titulo_categoria_x( $titulo, $id = null ) { if ( in_category( 'novidades', $id ) ) { return ''; } return $titulo; } add_filter( 'the_title', 'titulo_categoria_x', 10, 2 );
  8. 8. Hooks no WordPress Actions add_action( $tag, $funcao, $prioridade = 10, $num_args = 1 ); // Orientado a Objeto: add_action( $tag, array( $this, $metodo ) ); add_action( $tag, array( 'Nome_da_Classe', $metodo_estatico ) ); remove_action( $tag, $funcao, $prioridade = 10 ); do_action( $tag, [, $param_1, $param_2, ...] );
  9. 9. Dúvidas?
  10. 10. Obrigado! Felipe Elia felipe.elia@duo-me.com @felipe_elia slideshare.net/felipe_elia

×