[SOLUTION] Joomla 3.7.x menu glitches – “Error publishing 1 category because at least one of its parents is not published or one of its descendants…”

If after updating to Joomla 3.7.x you have started glitching menu when trying to add a new item and gives an error:

Failed publishing 1 menu item as at least one of its parents is unpublished or one of its children is checked out.”

Or in the Russian localization:

Category 1 publication error because at least one of her parents is not published or one of her descendants is extracted.

…It means that during the upgrade the old menu items referring to components (like banners, contacts, etc.) that have been unsupported for a long time were removed.

The easiest way to solve this is to delete old, unused menu items and empty the recycle garbage can (this is important, until you clear it, the glitch won’t go away).
But this helps only half the time (if the site is relatively new). If that doesn’t help, there are two other ways to solve the problem:

The first way is to use SQL-queries to clean up the old menu items from the database. You can make them yourself, something like
UPDATE `#_menu` SET `menutype` = 'main' WHERE `id` = ***;

but it’s easier to use this guide. Many of this solution has helped, but to me – no, because my site on Joomla exist from 2004 and the database is especially a hard mess… So here is the second, my author’s way, which solved the problem:

  1. Be sure to make a backup! We will have to edit the database, and we can’t joke about it
  2. Log in to phpMyAdmin
  3. choose table **_menu on the left (it will be named, for example, j25_menu)
  4. press the “overview” button (at the top left)
  5. sort the table by ‘menytype’ first and delete the ‘menu’ values
  6. now sort the table by ‘title’ and clean up old components like com_banners , com_contact and other stuff you don’t have installed and use. Do not delete what you do not know; google components that you do not know about.
  7. If it’s still glitchy, sort by ‘path’ and take another look around for obsolete menu items.
If you broke something, roll back to a backup and try again.
I look forward to your comments! 😀

This entry was posted in Joomla (en). Bookmark the permalink.

Leave a Reply

🇬🇧 Attention! Comments with URLs/email are not allowed.
🇷🇺 Комментарии со ссылками/email удаляются автоматически.