Программно создать пункт меню в Joomla

Я создал компонент в Joomla 2.5, который создает новую статью и добавляет эту статью в пункт меню.

Создание статьи работает нормально, но у меня возникли проблемы с созданием пункта меню.

У меня есть следующий код:

                //add the article to a menu item
                $menuTable = JTable::getInstance('Menu', 'JTable', array());

                    $menuData = array(
                    'menutype' => 'client-pages',
                    'title' => $data[name],
                    'type' => 'component',
                    'component_id' => 22,                  
                    'link' => 'index.php?option=com_content&view=article&id='.$resultID,
                    'language' => '*',
                    'published' => 1,
                    'parent_id' => '1',
                    'level' => 1,
                );

                // Bind data
                if (!$menuTable->bind($menuData))
                {
                    $this->setError($menuTable->getError());
                    return false;
                }

                // Check the data.
                if (!$menuTable->check())
                {
                    $this->setError($menuTable->getError());
                    return false;
                }

                // Store the data.
                if (!$menuTable->store())
                {
                    $this->setError($menuTable->getError());
                    return false;
                }

Ошибка, кажется, с установкой parent_id и уровня. При отладке библиотек / joomla / database / tablenested.php устанавливает parent_id и level в 0. Это вызвало следующую ошибку на моей странице администратора:

Предупреждение: str_repeat () [function.str-repeat]: второй аргумент должен быть больше или равен 0 в /Applications/MAMP/htdocs/joomla_2_5/administrator/components/com_menus/views/items/tmpl/default.php on линия 129

Ответы на вопрос(4)

Ваш ответ на вопрос