Sarkozit
VIP
Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Suscripción a IA
El contador de palabras en la parte izquierda baja solía funcionar.
esa función la tiene yoast seo
function minWord($content)
{
global $post;
$content = $post->post_content;
if (str_word_count($content) < 100 ) //Limite de 100 palabras
wp_die( __('Error: Tu post no cumple el mínimo de 100 palabras.') );
}
add_action('publish_post', 'minWord');
function tr_minimo_caracteres($post_id) {
if (strlen ( strip_tags($_POST['content']) ) < 10 ) wp_die( 'Debes introducir al menos 10 caracteres' );
}
add_action('publish_post', 'tr_minimo_caracteres');
Prueba con esto y me cuentas si funciona :encouragement:
Insertar CODE, HTML o PHP:function minWord($content) { global $post; $content = $post->post_content; if (str_word_count($content) < 100 ) //Limite de 100 palabras wp_die( __('Error: Tu post no cumple el mínimo de 100 palabras.') ); } add_action('publish_post', 'minWord');
Palabras o caracteres? si es caracteres
Insertar CODE, HTML o PHP:function tr_minimo_caracteres($post_id) { if (strlen ( strip_tags($_POST['content']) ) < 10 ) wp_die( 'Debes introducir al menos 10 caracteres' ); } add_action('publish_post', 'tr_minimo_caracteres');
Si es palabras puedes usar el código de arriba o sustituir strlen por str_word_count
Ey, muchas gracias! Creo que es similar a la que teníamos 🙂
Ahora, esta tiene 1 detalle que no sé cómo corregir, en realidad sí está dejando publicar el post (aún con el mínimo de palabras sin cumplir)
Pero es un gran avance, buscaré cómo corregir ese detalle. Gracias por tu ayuda.
- - - Actualizado - - -
¿Sabes si el 'publish_post' dentro de add_action se puede poner para que deje el post en borrador?
function tr_minimo_caracteres($post_id) {
if (strlen ( strip_tags($_POST['content']) ) < 100 ) wp_update_post( array( 'ID' => $post_id, 'post_status' => 'draft' ) );
}
add_action('publish_post', 'tr_minimo_caracteres');
function display_short_error_message($messages)
{
global $post;
$content = $post->post_content;
if (str_word_count($content) < 100 ) {
$error_message = 'El post debe tener al menos 100 palabras';
add_settings_error('post_short_error', '', $error_message, 'error');
settings_errors( 'post_short_error' );
$post->post_status = 'draft';
wp_update_post($post);
return;
}
return $messages;
}
add_action('post_updated_messages', 'display_short_error_message');
//Anclando los errores en el admin
function post_errors_notice_action() {
settings_errors( 'post_short_error' );
}
add_action( 'admin_notices', 'post_errors_notice_action' );
//Minimo de palabras en cada artículo
function display_short_error_message($messages)
{
global $post;
$content = $post->post_content;
if (str_word_count($content) < 388 && $post->post_status != 'auto-draft' ) {
$error_message = '¡Lo sentimos! El post debe tener al menos 380 palabras para ser publicado.';
add_settings_error('post_short_error', '', __($error_message), 'error');
$post->post_status = 'draft';
wp_update_post($post);
}
return $messages;
}
add_action('post_updated_messages', 'display_short_error_message');
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?