Skip to main content

Expression Result

Evaluate expressions using Builderius's Expression Language directly within GraphQL queries using expression_result() Pro Feature.

expression_result() enables:

  • data transformation: Modify Data output (eg. different date format)
  • calculations: Use dynamic and static numeric values to do math
  • conditional logic: Output different valuse based on custom conditions
  • string manipulation: Change case, concatinate strings...

Expressions use JavaScript-like syntax packed with 100+ built in functions.

Learn Expression Language Syntax

This article covers the expression_result() GraphQL function. For detailed Expression Language syntax, operators, and complete function reference, see Expression Language →.

Expression Function Syntax

Evaluate expressions using JavaScript-like syntax with expression_result():

General syntax:

expression_result(
expression: "your_expression_here"
)

Parameters:

  • expression (required) - Expression to evaluate using Expression Language

Auto-wrapping: Expressions are automatically wrapped in {{}} if not already wrapped:

expression_result(expression: "upper(post_title)")
# Same as:
expression_result(expression: "{{upper(post_title)}}")

Expression Usage Examples

Using WordPress context data in expressions:

{
post {
post_title
post_content
post_date
post_author {
display_name
}

# Transform post data
title_length: expression_result(expression: "count(post_title)")

short_excerpt: expression_result(expression: "limit_words(post_content, 25, '...')")

reading_time: expression_result(expression: "ceil(count(split(post_content, ' ')) / 200) . ' min read'")

formatted_date: expression_result(expression: "date('F j, Y', strtotime(post_date))")

author_first_name: expression_result(expression: "split(post_author.display_name, ' ')[0]")

# Conditional content
has_content: expression_result(expression: "post_content ? 'Has content' : 'No content'")

is_long_post: expression_result(expression: "count(split(post_content, ' ')) > 500 ? 'Long read' : 'Quick read'")
}
}

Expression vs PHP Function Comparison

Featureexpression_result()php_function_output()
SyntaxJavaScript-like expressionsPHP function calls
Functions100+ custom Builderius functionsAny PHP function
OperatorsFull expression operators (+, -, *, /, ==, etc.)Only function arguments
ContextAutomatic access to query dataMust pass via arguments
ComplexityCan combine multiple operationsOne function per call
Use CaseData transformation, calculations, logicCalling specific WordPress/PHP functions

When to Use Each

Use expression_result() for:

  • Data transformation and formatting
  • Mathematical calculations
  • Conditional logic and display rules
  • String manipulation and processing
  • Array operations

Use php_function_output() for:

  • WordPress-specific functions
  • Plugin API calls
  • Complex PHP operations
  • Accessing WordPress data not available in GraphQL
Learn More About Expressions

For complete Expression Language syntax, all available functions, operators, and advanced patterns, see:

Expression Language Introduction →

  • 100+ built-in functions
  • Operators and conditional logic
  • Array processing and transformations
  • WordPress integration functions
  • Advanced expression patterns

Use expression_result() to transform and process data within your GraphQL queries, enabling dynamic content that responds intelligently to your data with powerful, flexible expressions.