Skip Navigation

[Resolved] Conditional output with specific post id and specific post type

This support ticket is created 5 years, 6 months ago. There's a good chance that you are reading advice that it now obsolete.

This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.

Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.

No supporters are available to work today on Toolset forum. Feel free to create tickets and we will handle it as soon as we are online. Thank you for your understanding.

Sun Mon Tue Wed Thu Fri Sat
- - 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00 14:00 – 20:00
- - - - - - -

Supporter timezone: Asia/Ho_Chi_Minh (GMT+07:00)

Tagged: 

This topic contains 14 replies, has 2 voices.

Last updated by Beda 5 years, 6 months ago.

Assisted by: Beda.

Author
Posts
#1131059

I am trying to:
Display the field by 3 conditions:
1) Specific post id (20)
2) Specific post type ($info)
3) Field not empty
I am using one of posts as preferences of main site page. This post has link, if this link is empty - not show the button.

[wpv-conditional if="( '[types field='single-line' id='15' id='$my_post_type'][/types]' ne '' "]show me[/wpv-conditional]

#1131075

As I mentioned here https://toolset.com/forums/topic/conditional-display-if-a-custom-field-in-a-specified-post-has-a-certain-value/#post-1131055, Post ID is something absolutely unique in WordPress, it cannot be doubled by Post Types or similar.
If you call a Post ID you already have the most precise, and unique, data that a Post can own.

However, seen from a broader view, in ShortCodes you can add all attributes that are available from the GUI, so if the GUI supports a post type attribute you can add it, if not, then it's not available.

The field can be checked if empty or not with HTML conditions:
https://toolset.com/documentation/user-guides/conditional-html-output-in-views/

#1131077

Thank you for fast reply, Beda. So, construction like this must work:

[wpv-conditional if="( '[types field='single-line' id='15' ][/types]' ne '' "]show me[/wpv-conditional]

But it is not working 🙁

#1131088

You need to use the GUI to create conditionals, and it will not result in that shortcode, instead, it will result in:
[wpv-conditional if="( $(wpcf-single-line) ne '' )"]things to show if not empty[/wpv-conditional]

Please use the GUI or our DOC:
https://toolset.com/documentation/user-guides/conditional-html-output-in-views/

#1131089

Changing the ticket state

#1131091

Okay, i need to display SPECIFIC POST ID on conditional.

[wpv-conditional if="( $(wpcf-internet-shop-link id='20') ne '' )"]test[/wpv-conditional] - not work
[wpv-conditional if="( $(wpcf-internet-shop-link) id='20' ne '' )"]test[/wpv-conditional] - not work
[wpv-conditional if="( '[types field='internet-shop-link' id='20' ][/types]' ne '' "]test[/wpv-conditional] - not work

How to add specific post id, using the GUI?

#1133254

You could try this:

[wpv-conditional if="( $(wpcf-field).id(15) ne '' )"][types field='field' item='15'][/types][/wpv-conditional]

(change 15, to match the Post ID)

It's actually not in the GUI (only related posts can be added as id) and I reported that to be added.

#1134084

I apologise, this does not work.
I am not sure why it should, it did yesterday, however, I might have fooled myself here with a logic mistake, today i tried this again and I cannot check if a field of a specific post is empty.

I however then made it work like this:

[wpv-conditional if="( '[types field='toolset-single-line' item='21'][/types]' ne '' )"]
[types field='toolset-single-line' item='21'][/types]
[/wpv-conditional]

I reported this issues.

#1134100

Hello, Beda. Thank you for reply. I did try this code too, but it's not work 🙁

[wpv-conditional if="( '[types field='internet-shop-link' item='20'][/types]' ne '' )"]
[types field='internet-shop-link' item='20'][/types]
[/wpv-conditional]

It is not good solution, but i solved my promblem - i added new field - checkbox and did new conditional code:

                [types field='check-not-show-link' item='20' state="checked"]
                   <!-- Show nothing -->
                [/types]
                [types field='check-not-show-link' item='20' state="unchecked"]
                   [types field='internet-shop-link' item='20'][/types]
                [/types]

If the new checkbox is checked - the the field is not showing, if checkbox is not checked - the field is showing

#1134105

Can you grant me access to the site, share the link with the post where the field is stored, and where you check up on the field?
I can then have a look and edit it there if you agree.

#1134134

Please share the login url, since you modified the native WordPress login-paths. I end up in 404's everywhere.

#1134135

I'm sorry, updated the private message

#1134144

That's not a single line but a URL field?
Try to compare against raw values, in those cases.

[wpv-conditional if="( '[types field='internet-shop-link' item='20' raw='true'][/types]' ne '' )"]
[types field='internet-shop-link' item='20'][/types]
[/wpv-conditional]
#1134145

Thank you, Beda! You are awesome! It works, and now i know: to compare fields - they must be raw. Thank you and have a good day! Best support team ever!

#1134169

Great, then we can close here.

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.