WP Как в произвольные поля записать количество знаков в статье?
Подскажите как для всех постов в Wordpress создать переменную в произвольных полях $word_count
значение которой бы равнялось количеству знаков в посте которое б считалось по вот такой формуле ?
function str_word_count_utf8($str) {
$a = preg_split('/\W+/u', $str, -1, PREG_SPLIT_NO_EMPTY);
return count($a);
}
$word_count = str_word_count_utf8(strip_tags($content));
при перезаписи статьии количество знаков в переменной должно пересчитываться.
Ответы (1 шт):
Автор решения: Darth KYL
→ Ссылка
Можно прицепится на action сохранения поста и сохранять или обновлять необходимые мета данные
add_action( 'save_post', 'add_word_count' );
function add_word_count( $post_id ) {
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
return;
}
update_post_meta( $post_id, 'word_count', str_word_count_utf8( $_POST['post_content'] ) );
}
получить значение мета поля можно вот
get_post_meta( $post_id, 'word_count', true )
где $post_id - id нужного поста
