Código del plugin
<?php
/*
Plugin Name: Censura
Plugin URI: https://es.wikiquote.org/wiki/Portada
Description: Censura palabras que pueden ofender
Author: Jota Peich
Version: 1.0
Author URI: http://intelisen.com
*/
function censura_get_palabras(){
return explode( ",", get_option("censura_palabras"));
}
function censura_filtro($contenido) {
$palabras = censura_get_palabras();
foreach($palabras as $palabra){
$contenido= str_replace($palabra, '<span class="censura">'.str_repeat("*",strlen($palabra)).'</span>' , $contenido);
}
return $contenido;
}
add_filter( 'the_content', 'censura_filtro' );
add_action( 'wp_enqueue_scripts', 'censura_pon_css' );
/**
* Enqueue plugin style-file
*/
function censura_pon_css() {
// Respects SSL, Style.css is relative to the current file
wp_register_style( 'prefix-style', plugins_url('style.css', __FILE__) );
wp_enqueue_style( 'prefix-style' );
}
add_action( 'admin_menu', 'censura_menu' );
add_action( 'admin_init', 'censura_settings');
function censura_settings() {
register_setting( 'censura-group', 'censura_palabras' );
};
function censura_menu() {
add_options_page( 'Opciones censura', 'Censura', 'manage_options', 'censura-identifier', 'censura_options' );
}
function censura_options() {
if ( !current_user_can( 'manage_options' ) ) {
wp_die( 'No tiene permiso.' );
}
?>
<div>
<?php screen_icon(); ?>
<h2>Opciones censura</h2>
<form method="post" action="options.php">
<?php
settings_fields( 'censura-group' );
do_settings_fields( 'censura-group', '' );
?>
<p>Introduzca las palabras a censurar</p>
<input size="70" type="text" name="censura_palabras" value="<?php echo get_option('censura_palabras'); ?>" />
<?php
submit_button();
?>
</form>
</div>
<?php
}
?>