- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 35
Восстановить можно только в БД вручную если появились ошибки в дереве…
Если меню «сломано» зачем дополнительно что-то ставить? Исправляйте в БД, скорее всего сбился порядок сортировки, в 1.9 такое случалось иногда при удалении пунктов у которых есть вложенные…
Первое что делаете исправляете ошибки деревьев, если еще не исправили.
Второе — удаляете поочередно пункты меню, все.
Третье — создаёте их заново…
Если всё работает, создаёте бакап в БД таблицы cms_menu
Запомните!Если через базу данных удалить один из пунктов меню, или одну из категорий компонента статей .
( все будет работать до следующей операции с меню), удалить, добавить, переместить!!!!!
Тогда появятся закономерные ошибки.Проверка деревьев, имеет два решения, одно из них не исправление жестких ошибок.Тоесть в базе создана ПРОТИВОЛОГИЧНАЯ логика, основы вложенных множест.
Все ошибки ложатся на плечи ВАШИ, и не более.
ps//Не важно, но ошибки были созданы в процессе лично вашего управления, и анализировать можете только вы. НО факт что ва создали ошибку, точно ваш прокол.
Уверенность потому что много времени затрачено на изучение класса вложенных множеств.
function tree_al_ns($s_table,$i_value=0,$k_parent=0){ if(!$r) return false; { $k_item=$f[0]; $i_right=tree_al_ns($s_table,$i_value+1,$k_item); if($i_right===false) return false; update ".$s_table." set NSLeft=".$i_value.", NSRight=".$i_right." where id=".$k_item." ")) return false; $i_value=$i_right+1; } return $i_value; } if(tree_al_ns('cms_cat_cats')===false)echo 'error'; else echo 'ok';
Nested sets error: UPDATE cms_menu SET NSLeft = NSLeft - 0, NSRight = NSRight - 0 WHERE NSLeft >= AND NSRight <=
- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 35