Categorias
Programação Wordpress

WordPress: substituir conteúdo de todos artigos automaticamente

Frequentemente em projetos que desenvolvo pedem para substituir conteúdo mencionado em vários post, por vezes existem centenas de artigos (posts) o que torna a edição singular a ultima escolha…

Mas felizmente podemos fazer isso de uma forma rápida e simples, podemos substituir todo o conteúdo do site WordPress automaticamente, com poucas linha de código. Basta editar o seguinte código para suas necessidades e colar no arquivo functions.php do seu tema:

<?php
function replace_content($content) {
  $content = str_replace('Texto a mudar', 'O novo texto a mostrar', $content);
  return $content;
}
add_filter('the_content','replace_content');
?>

E podemos melhorar o código, para poder substituir qualquer palavra ou paragrafo que você quer. Podemos até escolher qual a posição do paragrafo, primeiro, segundo ou o décimo…

Aqui está um exemplo, é claro que pode mudar para o que pretende. Assumindo que cada parágrafo é cortado através de um (“<br/>”) o código seria assim:

<?php
function replace_content_paragraphs($content) {
  $paragraphs = explode('
',$content); $adtxt = "<span style='color:red;'>novo texto para mostrar</span>"; if (count($paragraphs)>4): array_splice($paragraphs,4,0,$adtxt); endif; if (count($paragraphs)>20): array_splice($paragraphs,10,0,$adtxt); endif; $cc = implode("
",$paragraphs); return $cc; } add_filter( 'the_content', 'replace_content_paragraphs'); ?>

Se o parágrafo é cortado através de um (<p> .. </p>), então o código inicial deve ser alterado da seguinte forma:

<?php
function replace_content_paragraphs($content) {
  $paragraphs = explode('

',$content); $adtxt = "<p><span style='color:red;'>novo texto para mostrar</span>"; if (count($paragraphs)>4): array_splice($paragraphs,4,0,$adtxt); endif; if (count($paragraphs)>20): array_splice($paragraphs,10,0,$adadtxt); endif; $cc = implode("

",$paragraphs); return $cc; } add_filter( 'the_content', 'replace_content_paragraphs'); ?>

Então o código acima substitui o conteúdo no paragrafo 4 e 10. Mas se aprofundar mais esta técnica rapidamente vai perceber que pode por exemplo, substituir conteúdo só em uma determinada categoria…



Um comentário a “WordPress: substituir conteúdo de todos artigos automaticamente”

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *