Support » Plugin: Menu Item Visibility Control » Add Menu Item to Future Posts

  • Resolved wearviral

    (@wearviral)


    Hello,

    Thanks for the plugin.

    I’d like to figure out a way to add a menu item everytime I create a new post of a certain type. For example, I’d like to add a menu item named “Learn French” to any new posts I add that has a tag or a slug that is/contains “french.” In other words, instead of having to add another is_single(id) condition to my “Learn French” menu item everytime I create a new post, I want the new post to be somehow recognized as fitting in the conditions to display the “Learn French” menu item when users are on that post.

    Here’s 2 approaches I tried but don’t seem to work

      has_tag (59) – Tag 59 is called “daily-french” but I don’t think this works because it isn’t in The Loop.
      has_term (‘french’) – I would think this would work as my slug is “french-etc…” but it doesn’t

    Do you have any ideas?

    • This topic was modified 11 months, 3 weeks ago by  wearviral.
    • This topic was modified 11 months, 3 weeks ago by  wearviral.
    • This topic was modified 11 months, 3 weeks ago by  wearviral.
    • This topic was modified 11 months, 3 weeks ago by  wearviral.
Viewing 6 replies - 1 through 6 (of 6 total)
  • Plugin Author shazdeh

    (@shazdeh)

    In single post pages (#) the whole page is technically “in the loop”, so you should be able to use conditional tags in the menus with no issues. You mentioned “create a new post of a certain type”, are you using a custom taxonomy as well? In such cases you’d have to use has_term along with the second parameter to specify the taxonomy:

    
    has_term( 100, 'my_tax' )
    

    Thanks for the reply. NOt sure I understand it.

    “100” in your example represents the taxonomy id? (I’m using tags). If so, why would I use “my_tax” to specify the taxonomy again?

    FYI: I am using a custom post type with a custom taxonomy. Ideally I’d just like to do a catch-all term that shows the menu everytime the word “french” is used in the slug of any post type.

    Plugin Author shazdeh

    (@shazdeh)

    why would I use “my_tax” to specify the taxonomy again?

    because WP needs it. See the codex: https://codex.wordpress.org/Function_Reference/has_term. You have to specify the taxonomy as well as the term ID.

    Okay I think I understand. But do you know why this still doesn’t work:

    has_term(‘french’,’sfwd-lessons’)

    sfwd-lessons is the taxonomy name and ‘french’ is the term that exists in the slug, but it doesn’t seem to be working still.

    Actually sfwd-lessons is the custom post name. The taxonomy name is ‘ld_lesson_category’

    But it still doesn’t work. Even when I add the post id. Doesn’t show up anywhere. ANy ideas?

    has_term(‘french’, ‘ld_lesson_category’, 78)

    Okay I solved the problem. My menu was indeed outside the loop. Also I should have used the exact tag name as the term. This worked:

    has_term (‘Daily-French’, ‘ld_lesson_category’, get_adjacent_post( false, ”, true ))

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘Add Menu Item to Future Posts’ is closed to new replies.