Usage
PHP
nebula()->string_limit_words($string, $word_limit)
Parameters
$string
(Required) (String) The string to shorten
Default: None
$word_limit
(Required) (Integer) The maximum number of words
Default: None
Source File
Located in /libs/Utilities/Utilities.php on line 803.
1 Hook
Find these filters and actions in the source code below to hook into them. Use do_action() and add_filter() in your functions file or plugin.
Filters
"pre_string_limit_words"Need a new filter hook? Request one here.
Actions
This function has no action hooks available. Request one?
PHP
public function string_limit_words($string, $word_limit){ $override = apply_filters('pre_string_limit_words', null, $string, $word_limit); if ( isset($override) ){return $override;} $limited['text'] = $string; $limited['is_limited'] = false; $words = array_slice(array_filter(explode(' ', trim($string))), 0, $word_limit); //Create an array of words after trimming whitespace and removing empty array items. Then keep only the first words up to the requested limit. if ( count($words) >= $word_limit ){ $limited['text'] = implode(' ', $words); $limited['is_limited'] = true; } return $limited; }
Override
To override this PHP function, use this hook in your child theme or plugin ("my_custom" can be changed):
PHP
add_filter('pre_string_limit_words', 'my_custom_string_limit_words', 10, 3); //The last integer must be 1 more than the actual parameters function my_custom_string_limit_words($null, $string, $word_limit){ //$null is required, but can be ignored //Write your own code here return true; //Return true to prevent the original function from running afterwords }
You can completely disable this PHP function with a single line actions:
PHP
add_filter('pre_string_limit_words', '__return_false');