Limit the number of characters or words of a “Post Excerpt” builder item

<?php

// To limit by number of characters:

add_filter( 'facetwp_builder_item_value', function( $value, $item ) {
  if ( 'post_excerpt' == $item['source'] ) {
    $value = substr( $value, 0, 120 ); // Limit to 120 characters
  }
  // Optional: add something after the trimmed excerpt:
  if ( strlen($value) == 120 ) {
    $value .= ' (…)'; // Adds a space, then an ellipsis character (…) within parentheses.
  }
    
  return $value;
}, 10, 2 );


// To limit by number of words:

add_filter( 'facetwp_builder_item_value', function( $value, $item ) {
  if ( 'post_excerpt' == $item['source'] ) {
    $value = wp_trim_words( $value, 1, ' (…)' ); // Trim to 10 words and add space and ellipsis.
  }

  return $value;
}, 10, 2 );