Output the slug and name of a CPT single post taxonomy term Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) 2019 Moderator Election Q&A - Questionnaire 2019 Community Moderator Election Resultsecho term name outside the loop, using term slugGet term slug of current postpermalink /category/post-name with custom post type and taxonomywp_query: How to retrieve current term slug in custom taxonomy?Fetch posts list from fist CPT taxonomy term and list under 2. CPTPrint Custom Taxonomy Term NameDisplay associated taxonomy child name on single CPT pageremoving custom tax & CPT slug, adding taxonomy term in front of custom typeOutput the content of a term organised by each of the CPT?Echo term slug op post on archive page

What is the difference between 准时 and 按时?

How to leave only the following strings?

Should man-made satellites feature an intelligent inverted "cow catcher"?

What's the connection between Mr. Nancy and fried chicken?

Coin Game with infinite paradox

Knights and Knaves question

Putting Ant-Man on house arrest

Suing a Police Officer Instead of the Police Department

Is it OK if I do not take the receipt in Germany?

Is Bran literally the world's memory?

Weaponising the Grasp-at-a-Distance spell

Why does my GNOME settings mention "Moto C Plus"?

Is "ein Herz wie das meine" an antiquated or colloquial use of the possesive pronoun?

Sorting the characters in a utf-16 string in java

Like totally amazing interchangeable sister outfit accessory swapping or whatever

Is my guitar’s action too high?

Kepler's 3rd law: ratios don't fit data

What could prevent concentrated local exploration?

What's the difference between using dependency injection with a container and using a service locator?

“Since the train was delayed for more than an hour, passengers were given a full refund.” – Why is there no article before “passengers”?

How can I introduce the names of fantasy creatures to the reader?

Does using the Inspiration rules for character defects encourage My Guy Syndrome?

Why isn't everyone flabbergasted about Bran's "gift"?

Is there a verb for listening stealthily?



Output the slug and name of a CPT single post taxonomy term



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)
2019 Moderator Election Q&A - Questionnaire
2019 Community Moderator Election Resultsecho term name outside the loop, using term slugGet term slug of current postpermalink /category/post-name with custom post type and taxonomywp_query: How to retrieve current term slug in custom taxonomy?Fetch posts list from fist CPT taxonomy term and list under 2. CPTPrint Custom Taxonomy Term NameDisplay associated taxonomy child name on single CPT pageremoving custom tax & CPT slug, adding taxonomy term in front of custom typeOutput the content of a term organised by each of the CPT?Echo term slug op post on archive page



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








1















When I'm on a single post for a custom post type, I want to be able to grab the slug and name of the taxonomy term so I can insert them into a link. Below is what I've tried but it doesn't seem to work.



<?php

$term_slug = get_queried_object()->slug;
$term_name = get_queried_object()->name;

echo '<span class="back-button"><a href="/portfolio/' .$term_slug. '">&larr; Back to ' .$term_name. '</a></span>';

?>


So for example, if I'm on a single post for the custom post type "Projects" and the taxonomy term is "Album Artwork," I want to be able to grab the slug "album-artwork" and the name "Album Artwork" so I can put them into the link. How can I do this?










share|improve this question




























    1















    When I'm on a single post for a custom post type, I want to be able to grab the slug and name of the taxonomy term so I can insert them into a link. Below is what I've tried but it doesn't seem to work.



    <?php

    $term_slug = get_queried_object()->slug;
    $term_name = get_queried_object()->name;

    echo '<span class="back-button"><a href="/portfolio/' .$term_slug. '">&larr; Back to ' .$term_name. '</a></span>';

    ?>


    So for example, if I'm on a single post for the custom post type "Projects" and the taxonomy term is "Album Artwork," I want to be able to grab the slug "album-artwork" and the name "Album Artwork" so I can put them into the link. How can I do this?










    share|improve this question
























      1












      1








      1








      When I'm on a single post for a custom post type, I want to be able to grab the slug and name of the taxonomy term so I can insert them into a link. Below is what I've tried but it doesn't seem to work.



      <?php

      $term_slug = get_queried_object()->slug;
      $term_name = get_queried_object()->name;

      echo '<span class="back-button"><a href="/portfolio/' .$term_slug. '">&larr; Back to ' .$term_name. '</a></span>';

      ?>


      So for example, if I'm on a single post for the custom post type "Projects" and the taxonomy term is "Album Artwork," I want to be able to grab the slug "album-artwork" and the name "Album Artwork" so I can put them into the link. How can I do this?










      share|improve this question














      When I'm on a single post for a custom post type, I want to be able to grab the slug and name of the taxonomy term so I can insert them into a link. Below is what I've tried but it doesn't seem to work.



      <?php

      $term_slug = get_queried_object()->slug;
      $term_name = get_queried_object()->name;

      echo '<span class="back-button"><a href="/portfolio/' .$term_slug. '">&larr; Back to ' .$term_name. '</a></span>';

      ?>


      So for example, if I'm on a single post for the custom post type "Projects" and the taxonomy term is "Album Artwork," I want to be able to grab the slug "album-artwork" and the name "Album Artwork" so I can put them into the link. How can I do this?







      custom-post-types terms get-terms






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 2 hours ago









      DesiDesi

      47032046




      47032046




















          1 Answer
          1






          active

          oldest

          votes


















          2














          If you’re on a single post, then your code won’t work, because get_queried_object will contain the post (and not a term).



          If you want to get terms of given post, you should use get_the_terms function.



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here


          You also have to remember, that a post may have multiple terms assigned to it, so the line above will get you an array of terms. You can loop through it like so:



          foreach ( $terms as $term ) 
          echo '<span class="back-button"><a href="/portfolio/' .$term->slug. '">&larr; Back to ' .$term->name. '</a></span>';



          And the last thing...



          You should never build term links like you do. There is a function for that to: get_term_link and you should use it instead of concatenating slug of a term with some strings (why? Because some plugins may change the structure of such links and your code will stop working then).



          So the full code can look like this:



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here
          if ( $terms and ! is_wp_error( $terms ) )
          foreach ( $terms as $term )
          echo '<span class="back-button"><a href="' . esc_attr( get_term_link( $term ) . '">&larr; Back to ' . esc_html($term->name) . '</a></span>';







          share|improve this answer























          • Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

            – Desi
            22 mins ago












          • Exactly the same way as you get the name: $term->slug

            – Krzysiek Dróżdż
            21 mins ago











          • Perfect. It's working! Thank you.

            – Desi
            15 mins ago











          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "110"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fwordpress.stackexchange.com%2fquestions%2f335053%2foutput-the-slug-and-name-of-a-cpt-single-post-taxonomy-term%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          2














          If you’re on a single post, then your code won’t work, because get_queried_object will contain the post (and not a term).



          If you want to get terms of given post, you should use get_the_terms function.



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here


          You also have to remember, that a post may have multiple terms assigned to it, so the line above will get you an array of terms. You can loop through it like so:



          foreach ( $terms as $term ) 
          echo '<span class="back-button"><a href="/portfolio/' .$term->slug. '">&larr; Back to ' .$term->name. '</a></span>';



          And the last thing...



          You should never build term links like you do. There is a function for that to: get_term_link and you should use it instead of concatenating slug of a term with some strings (why? Because some plugins may change the structure of such links and your code will stop working then).



          So the full code can look like this:



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here
          if ( $terms and ! is_wp_error( $terms ) )
          foreach ( $terms as $term )
          echo '<span class="back-button"><a href="' . esc_attr( get_term_link( $term ) . '">&larr; Back to ' . esc_html($term->name) . '</a></span>';







          share|improve this answer























          • Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

            – Desi
            22 mins ago












          • Exactly the same way as you get the name: $term->slug

            – Krzysiek Dróżdż
            21 mins ago











          • Perfect. It's working! Thank you.

            – Desi
            15 mins ago















          2














          If you’re on a single post, then your code won’t work, because get_queried_object will contain the post (and not a term).



          If you want to get terms of given post, you should use get_the_terms function.



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here


          You also have to remember, that a post may have multiple terms assigned to it, so the line above will get you an array of terms. You can loop through it like so:



          foreach ( $terms as $term ) 
          echo '<span class="back-button"><a href="/portfolio/' .$term->slug. '">&larr; Back to ' .$term->name. '</a></span>';



          And the last thing...



          You should never build term links like you do. There is a function for that to: get_term_link and you should use it instead of concatenating slug of a term with some strings (why? Because some plugins may change the structure of such links and your code will stop working then).



          So the full code can look like this:



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here
          if ( $terms and ! is_wp_error( $terms ) )
          foreach ( $terms as $term )
          echo '<span class="back-button"><a href="' . esc_attr( get_term_link( $term ) . '">&larr; Back to ' . esc_html($term->name) . '</a></span>';







          share|improve this answer























          • Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

            – Desi
            22 mins ago












          • Exactly the same way as you get the name: $term->slug

            – Krzysiek Dróżdż
            21 mins ago











          • Perfect. It's working! Thank you.

            – Desi
            15 mins ago













          2












          2








          2







          If you’re on a single post, then your code won’t work, because get_queried_object will contain the post (and not a term).



          If you want to get terms of given post, you should use get_the_terms function.



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here


          You also have to remember, that a post may have multiple terms assigned to it, so the line above will get you an array of terms. You can loop through it like so:



          foreach ( $terms as $term ) 
          echo '<span class="back-button"><a href="/portfolio/' .$term->slug. '">&larr; Back to ' .$term->name. '</a></span>';



          And the last thing...



          You should never build term links like you do. There is a function for that to: get_term_link and you should use it instead of concatenating slug of a term with some strings (why? Because some plugins may change the structure of such links and your code will stop working then).



          So the full code can look like this:



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here
          if ( $terms and ! is_wp_error( $terms ) )
          foreach ( $terms as $term )
          echo '<span class="back-button"><a href="' . esc_attr( get_term_link( $term ) . '">&larr; Back to ' . esc_html($term->name) . '</a></span>';







          share|improve this answer













          If you’re on a single post, then your code won’t work, because get_queried_object will contain the post (and not a term).



          If you want to get terms of given post, you should use get_the_terms function.



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here


          You also have to remember, that a post may have multiple terms assigned to it, so the line above will get you an array of terms. You can loop through it like so:



          foreach ( $terms as $term ) 
          echo '<span class="back-button"><a href="/portfolio/' .$term->slug. '">&larr; Back to ' .$term->name. '</a></span>';



          And the last thing...



          You should never build term links like you do. There is a function for that to: get_term_link and you should use it instead of concatenating slug of a term with some strings (why? Because some plugins may change the structure of such links and your code will stop working then).



          So the full code can look like this:



          $terms = get_the_terms( get_the_ID(), '<TAXONOMY_NAME>' ); // <- put real tax name in here
          if ( $terms and ! is_wp_error( $terms ) )
          foreach ( $terms as $term )
          echo '<span class="back-button"><a href="' . esc_attr( get_term_link( $term ) . '">&larr; Back to ' . esc_html($term->name) . '</a></span>';








          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 1 hour ago









          Krzysiek DróżdżKrzysiek Dróżdż

          18.7k73350




          18.7k73350












          • Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

            – Desi
            22 mins ago












          • Exactly the same way as you get the name: $term->slug

            – Krzysiek Dróżdż
            21 mins ago











          • Perfect. It's working! Thank you.

            – Desi
            15 mins ago

















          • Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

            – Desi
            22 mins ago












          • Exactly the same way as you get the name: $term->slug

            – Krzysiek Dróżdż
            21 mins ago











          • Perfect. It's working! Thank you.

            – Desi
            15 mins ago
















          Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

          – Desi
          22 mins ago






          Thank you. How can I get the slug? The reason is because I don't want the link to go to the taxonomy link. I have my own link with "example.com/portfolio/slug"

          – Desi
          22 mins ago














          Exactly the same way as you get the name: $term->slug

          – Krzysiek Dróżdż
          21 mins ago





          Exactly the same way as you get the name: $term->slug

          – Krzysiek Dróżdż
          21 mins ago













          Perfect. It's working! Thank you.

          – Desi
          15 mins ago





          Perfect. It's working! Thank you.

          – Desi
          15 mins ago

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to WordPress Development Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fwordpress.stackexchange.com%2fquestions%2f335053%2foutput-the-slug-and-name-of-a-cpt-single-post-taxonomy-term%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Magento 2 duplicate PHPSESSID cookie when using session_start() in custom php scriptMagento 2: User cant logged in into to account page, no error showing!Magento duplicate on subdomainGrabbing storeview from cookie (after using language selector)How do I run php custom script on magento2Magento 2: Include PHP script in headerSession lock after using Cm_RedisSessionscript php to update stockMagento set cookie popupMagento 2 session id cookie - where to find it?How to import Configurable product from csv with custom attributes using php scriptMagento 2 run custom PHP script

          Can not update quote_id field of “quote_item” table magento 2Magento 2.1 - We can't remove the item. (Shopping Cart doesnt allow us to remove items before becomes empty)Add value for custom quote item attribute using REST apiREST API endpoint v1/carts/cartId/items always returns error messageCorrect way to save entries to databaseHow to remove all associated quote objects of a customer completelyMagento 2 - Save value from custom input field to quote_itemGet quote_item data using quote id and product id filter in Magento 2How to set additional data to quote_item table from controller in Magento 2?What is the purpose of additional_data column in quote_item table in magento2Set Custom Price to Quote item magento2 from controller

          How to solve knockout JS error in Magento 2 Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?(Magento2) knockout.js:3012 Uncaught ReferenceError: Unable to process bindingUnable to process binding Knockout.js magento 2Cannot read property `scopeLabel` of undefined on Product Detail PageCan't get Customer Data on frontend in Magento 2Magento2 Order Summary - unable to process bindingKO templates are not loading in Magento 2.1 applicationgetting knockout js error magento 2Product grid not load -— Unable to process binding Knockout.js magento 2Product form not loaded in magento2Uncaught ReferenceError: Unable to process binding “if: function()return (isShowLegend()) ” magento 2