1

Weird issue where a tag was not found using the tags search query. That tag is in the CMS (in news entries) as well as the DB, and even shows up in other queries. Query in question:

{%
    set tag = craft.tags({
        search: { query: slug }
    }).limit(1)
%}

All but this tag can't be found for some odd ghostly reason.

3

You don't need to use the search parameter in this case. I'd avoid using it where ever possible.

{% set tag = craft.tags.slug(slug).first() %}
6
  • I tried that as well with no luck. It's odd because this isn't a search query. Not really sure what was happening behind the scenes, but thanks for posting this.
    – biko
    Apr 13 '16 at 6:14
  • Also I'm not sure whether tags.slug() works. slug() works with entries though. craftcms.com/docs/templating/craft.tags
    – biko
    Apr 13 '16 at 6:17
  • It's missing in the documentation, but it should work (it's there in the db table and I'd also used it with success). So yes, odd indeed. Do you have a field with handle "query", because that's what query:slug does, see the table of searching syntaxes.
    – carlcs
    Apr 13 '16 at 6:31
  • Also, what's the error you're seeing with this approach? Because I just noticed you didn't use first in your question to get just one tag, so it returns an array.
    – carlcs
    Apr 13 '16 at 6:34
  • My apologies. Your query does work! I was using the first() method somewhere further down the code because I was testing the length of the array first. Your query didn't work before because first() was being executed twice. Thanks @carlcs!
    – biko
    Apr 16 '16 at 23:39
2

Turns out that Craft's search indexes were corrupted. After rebuilding the search indexes, that damn tag was correctly showing up.

Hope this helps anyone that might have had just content gone mysteriously MIA.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.