Skip to content

Instantly share code, notes, and snippets.

@jonasskafte
Forked from m-thomson/import-if-syntax.md
Created November 27, 2019 08:38
Show Gist options
  • Save jonasskafte/01ebc13383c14a66a8ed0a08ec5d07a2 to your computer and use it in GitHub Desktop.
Save jonasskafte/01ebc13383c14a66a8ed0a08ec5d07a2 to your computer and use it in GitHub Desktop.

WP All Import - IF/ELSE statement examples

Here are some example WP All Import [IF] statements. The criteria for an IF statment is written in XPath 1.0 syntax and can use XPath functions. Although powerful, XPath syntax can be quite complex. In many cases it might be easier to use a PHP function as shown here.

Note: The [ELSE]<something> part is optional

Number is equal to:

[IF({price[.=0]})]Zero[ELSE]Not Zero[ENDIF]

Number is greater than:

[IF({price[.>0]})]Greater than 0[ENDIF]

Text is equal to:

[IF({title[.='Foo']})]The title is Foo[ENDIF]

Text is not equal to:

[IF({title[.!='Foo']})]The title is not Foo[ENDIF]

Text is empty (see note below):

[IF({title[.='']})]The title is empty[ENDIF]

Text contains:

[IF({title[contains(.,’Foo')]})]Has foo[ENDIF]

Text length is:

[IF({title[string-length()>10]})]{title}[ENDIF]

IF/ELSE example:

[IF({title[.='']})]The title is empty[ELSE]{title}[ENDIF]

Note: You might have seen examples using not(text()) to check for empty fields. While this is valid XPath syntax, it seems to fail on some servers. The reasons are unclear. Just use the Text is empty syntax above instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment