Сделал себе каталог по этой инструкции.
После этого Pathauto перестал создавать полноценно алиасы.
Должен сделать 860 алиасов таксономии, делает 278 и на этом затыкается.
При этом, когда пытаешься сделать еще алиасов - пишет что "сделал еще 100 алиасов", но смотришь список где "удалить алиасы" - цифра осталась прежней, 278.
Это лечится ?
Комментарии
Вот что я вижу в "удалить синонимы"
Цифра 278 перманентной остается, не взирая на то, что я пытаюсь сделать еще синонимов, коих в целом должно быть 800+. Так было уже, работало до того как я сделал каталог. Что молго сломаться ?
я понял фишку) жирный незачет pathauto за это.
кол-во алиасов которое он пишет это алисы для стандартных путей таксономии, тоесть taxonomy/term/, а мы на шаге1 изменили для таксономии пути на catalog/.
Решение:
выполнить код
например создать с этим кодом блок и 1 раз зайти на страницу.
или просто выполнить запрос в phpmyadmin
DELETE FROM url_alias WHERE src LIKE 'catalog/%'
Пока не выходит через phpmyadmin
Говорит что "#1146 - Table 'work.url_alias' doesn't exist"
может потому что у меня префикс _work ?
думаю да
Я предположение верное сделал, но что делать с этим предположением дальше я не знаю, не мастер я малахитный.. Изменить данную тобой SQL строку мне надо ?
DELETE FROM _work_url_alias WHERE src LIKE 'catalog/%'
Удалено строк: 0. ( запрос занял 0.0192 сек. )
Проблема осталась
278 из 860 алиасов создаются
UPD
дополнительное наблюдение: проблема с алиасами только того словаря, который используется при создания каталога по вашей статье. Другие словари таксономии получили свои алиасы без проблем.
Видимо, придется откатываться на старый бэкап и искать способ делать каталог иначе
посмотрите есть ли в таблице _work_url_alias в поле src что-то похожее на catalog
смотрел, нету
я уже откатываюсь..
еще раз попробую заново
а там посмотрим
UPD
откатиться получилось только на сегодняшнее утро, где я уже сделал каталог по вашей статье и где перестал работать pathauto
попробую обновить pathauto до .dev версии, может спасёт
но, честно говоря, опускаются руки, я не знаю как починить произошедшее
прошу помощи
UPD
откатился на позавчера, где каталога и в помине нет
создаю заново по статье
pathauto трогать не буду
Вообще, у меня подозрение, что механизм создания каталога в той статье как-то затрагивает функционал работы pathauto в будущем. Но доказать не могу, т.к. я проектник и аналитик, а не программист. Проверю - сообщу о полученных результатах.
Если у кого-то не получается - рекомендую:
Перед созданием каталога - тщательно продумайте и сделайте все алиасы таксономии заранее.
Сделайте полный бэкап сайта (чтобы не мучаться как я сутки восстанавливая).
Не трогайте pathauto в шаге №3 этой статьи.
В PHP коде, предложенном Автором, ВНИМАТЕЛЬНО посмотрите на первые строки, где задаются переменные, например порядковый номер словаря таксономии, который вы будете использовать для создания каталога. Эту нужную цифру можно увидеть в админке таксономии, если навести мышкой на линк словаря.
В остальном инструкция 100% работоспособная. Автору благодарность.
P.S.
Я его таки-допилил, работает
Чтиво по теме
Последний мой вопрос по теме:
Главная страница каталога получилась так:
А дочерняя получилась так:
Как подправить дочернюю страницу, чтобы была табличного вида, как и родительская, с счетчиком контента содержащегося в каждой категории (цифры в скобках) ?
UPD
Хотел поставить этой теме статус [РЕШЕНО] - не нашел как
Дополнительная информация после проведенной аналитики:
проблема с "не создаванием алиасов" была в Taxonomy Redirect.
Если его включать как написано в статье - с алиасами новыми беда.
Если его выключить - проблема с созданием новых алиасов исчезает.
Но, появляется беда с дочерними ссылками каталога.
Первая страница отображения каталога показана верно, с родителями и детями, но если кликнуть на родителя - будет просто страница этого термина, а не страница со ссылками на детей.
Идей по решению пока нет.
Taxonomy Redirect нужен для того чтобы использовать разные представления для разных словарей таксономии, при этом сохраняя возможность создавать алиасы автоматически для этих терминов.
1) он нужен
2) после того ка вы убедились что алиасы для ващих терминов отсутствуют, ставьте галку для создания алиасов для терминов без них.
3) установите кол-во алиасов для одновременного создания штук 500. и обновляйте пока не напише что нечего обновлять.
4) проверьте через phpmyadmin если ли новые алиасы
1. Поставил Taxonomy Redirect, сделал перенаправление как указано в статье, создавал алиасы 30 минут. Постоянно была надпись "создано 167 алиасов" и так без конца. Алиасы для словаря, который не затронут модулем Taxonomy Redirect - создались. Алиасы словаря, который указан для перенаправления в Taxonomy Redirect - не создалось ни одного.
2. Убрал перенаправление в Taxonomy Redirect, сам модуль не убирал. Алиасы для обоих словарей таксономии спокойно создаются.
сайт в интернете? доступ бы, оч интересно посмотреть
увы, пока я учусь друпалу, он живет у меня на домашнем линуксовом сервере
могу скриншотов накидать например )
вот что я понял)
1) алиасы нормально создадутся когда создаёте новый термин
2) для массового создания для каталога надо выполнить код:
$path = 'catalog/'; // путь, тот что указывали в taxonomy_redirect (catalog/!tid), но без !tid
_pathauto_include();
$result = db_query("SELECT tid, vid, name, description, src, dst FROM {term_data} LEFT JOIN {url_alias} ON CONCAT('%s', CAST(tid AS CHAR)) = src WHERE src IS NULL AND vid = %d", $path, $vid);
$count = 0;
$placeholders = array();
while ($category = db_fetch_object($result)) {
$count += _taxonomy_pathauto_alias($category, 'bulkupdate');
}
drupal_set_message(format_plural($count,
'Bulk generation of terms completed, one alias generated.',
'Bulk generation of terms completed, count aliases generated.'));
выполнить код можно через devel, по адресу site.ru/devel/php
Патчавто:
получается так:
Ссылка в каталоге получается такая (и видно, что у родителя есть дети):
Если войти в родителя - детей нет:
Делаю Pathauto "catalog/all -> catalog" и Taxonomy redirect "catalog/!tid"
Смотрю снова каталог, ссылки изменились, убралось всё, остались только "tid"
Захожу по той же ссылке, что и выше, жду что напишут опять "здесь материала нет", но...
Поразмышляв, думаю что views, taxonomy redirect и pathauto не могут договориться между собой из-за моих кривых рук )
На всякий случай экспорт Views
И еще одна мысль: у нас получается одинаковый контент по ссылкам /catalog и /catalog/all
Гугль например такое отслеживает и якобы наказывает ректально, обзывая тебя при этом "sandbox". Точно не уверен, где-то
на заборев интернете про это прочитал.Нашел хостинг, думаю завтра смогу уже показать.
UPD
не получилось с хостингом )
Проблема всё еще жутко актуальна и неработоспособна
Any help ?
пример рабочий, без живого сайта не смогу помочь
Сработало
Но
1.Терминов таксономии у меня 1300 уже, а скрипт создал 500+ и больше не хочет.
2.Каждый термин таксономии у меня переведен на дополнительные языки. А скрипт эту взаимосвязь не учел, связь нарушена.
Вернул всё в исходное состояние. Стараюсь добыть хостинг