Пробовал совсем отключить views - проблема сохраняется.
Проблема с дублями актуальна. В поисковиках часто не реальная страница (урл с синонимами), а дубли для которых она является родительской страницей. (допустим вместо сайт.ру/dom/derevo может оказаться уже несуществующая сайт.ру/node/57/talk или сайт.ру/dom/derevo/talk1
Где копать, подскажите?
С переменной "teaser" тоже кое-что творилось сайтом, это подсказывало, что код работает, но не совсем верно. Ну а дальше, интуитивно, по содержимому функции phptemplate_preprocess_node довел до конца.
Благодарю)
Что-то не так в этом коде - идею понял (в функции находится $variables['teaser'] и в ней [node-url] меняется на $variables['node_url'], но ошибку пока не нашел. Выводится в анонсе [node-url] без замены (кэш чистил).
С созданием модуля справлюсь (по аналогии с имеющимися - Сtrl C <-> Сtrl V, ну и редактируем) ..
Этот вариант попробую обязательно и отпишусь, только чуть позже.
Спасибо огромное)
Да, я понял, что нужно в эту сторону посмотреть.. Просто это мне не знакомо пока.
Буду благодарен за примерный кусок кода для этих целей..
В любом случае, спасибо за консультацию)
Этот код:
<?php
if (arg(0) == 'taxonomy' && is_numeric($tid = arg(2)) {
$result = db_query("SELECT nid FROM {term_node} WHERE term_node.tid=%d',$tid");
$nids = array();
while ($row = db_fetch_object($result)) {
$nids[] = $row->nid;
}
foreach($nids as $nid){
$node = node_load($nid);
print $node->title;
}
}
?>
как раз и должен был вернуть нужный nid и вывести title
Для того чтобы token_filter отобразил token_custom нужен тип "Глобальный", значение return $node->title; работает только в теле ноды, но на странице термина нет, вот я и мудрил с тем кодом..
Да, как раз и использую token_filter и token_custom. Но token_filter использует только токены Global. А token_custom позволяет создавать токены Global. Код, который рассматривали выше, я встраивал через token_custom и используя token_filter, вставлял в нужные места анонса, но код так и не заработал.
В данном случае [node-url] и [node-title] не работают, т.к не относятся к "token Global".
Спасибо, за помощь.. (продолжаю поиски)
Честно, мои знания в api, мягко говоря, не очень.
Я так понимаю первый вариант (сразу в хуке выполнить все правки) более рациональный.. Но не совсем понимаю, что придется поправить и где.
Второй вариант проще, я так понял должно работать следующим образом:
template_preprocess_node(&$variables); где необходимо менять значение $variables
Ну, примерно, так.. вместе с картинками может быть просто упоминание "node_title" в анонсе, которое также установится автоматом.. Т.е. анонс будет полностью автоматизирован - написав его один раз - он подойдет для всех нод (при условии, что у меня будут автоматом получатся заголовки и урл-ы нод)
Ну допустим, в анонсе содержится картинка (нод с анонсами куча), которая будет ссылаться на ноду. Чтобы не вбивать каждый раз урл ноды и не исправлять содержимое поля alt="node_title", нужно получить значения..
У меня для термина выводятся анонсы нод. В этих анонсах я коротко описываю сами ноды. Чтобы автоматизировать как-то этот процесс мне нужно получить заголовки нод и их адреса (это на закуску:-)). Но пока не получается..
Неправильная работа 404 ошибки
Модуль global redirect не устанавливал. Есть Url alter, Sub-path URL Aliasing.
Неправильная работа 404 ошибки
Пробовал совсем отключить views - проблема сохраняется.
Проблема с дублями актуальна. В поисковиках часто не реальная страница (урл с синонимами), а дубли для которых она является родительской страницей. (допустим вместо сайт.ру/dom/derevo может оказаться уже несуществующая сайт.ру/node/57/talk или сайт.ру/dom/derevo/talk1
Где копать, подскажите?
[Решено] Как получить nid зная tid?
С переменной "teaser" тоже кое-что творилось сайтом, это подсказывало, что код работает, но не совсем верно. Ну а дальше, интуитивно, по содержимому функции phptemplate_preprocess_node довел до конца.
Благодарю)
[Решено] Как получить nid зная tid?
Итого:
function phptemplate_preprocess_node(&$variables) {
$variables['content'] = str_replace('[adress]', $variables['node_url'], $variables['content']);
$variables['content'] = str_replace('[text]', $variables['title'], $variables['content']);
}
уже пользуюсь)
[Решено] Как получить nid зная tid?
..
[Решено] Как получить nid зная tid?
CSoft - все получилось!
Ваш код заработал (после небольшой игры с переменными).
Спасибо, спасибо, спасибо! ))
[Решено] Как получить nid зная tid?
Что-то не так в этом коде - идею понял (в функции находится $variables['teaser'] и в ней [node-url] меняется на $variables['node_url'], но ошибку пока не нашел. Выводится в анонсе [node-url] без замены (кэш чистил).
[Решено] Как получить nid зная tid?
С созданием модуля справлюсь (по аналогии с имеющимися - Сtrl C <-> Сtrl V, ну и редактируем) ..
Этот вариант попробую обязательно и отпишусь, только чуть позже.
Спасибо огромное)
[Решено] Как получить nid зная tid?
Да, я понял, что нужно в эту сторону посмотреть.. Просто это мне не знакомо пока.
Буду благодарен за примерный кусок кода для этих целей..
В любом случае, спасибо за консультацию)
[Решено] Как получить nid зная tid?
но..
[Решено] Как получить nid зная tid?
Этот код:
<?php
if (arg(0) == 'taxonomy' && is_numeric($tid = arg(2)) {
$result = db_query("SELECT nid FROM {term_node} WHERE term_node.tid=%d',$tid");
$nids = array();
while ($row = db_fetch_object($result)) {
$nids[] = $row->nid;
}
foreach($nids as $nid){
$node = node_load($nid);
print $node->title;
}
}
?>
как раз и должен был вернуть нужный nid и вывести title
[Решено] Как получить nid зная tid?
Только код чуть сложнее для выводе в теле ноды:
if ( (arg(0) == 'node') && is_numeric($nid = arg(1)) ) {
$node = node_load($nid);
print $node->title;
}
[Решено] Как получить nid зная tid?
Модуль пока такой не нашел..
[Решено] Как получить nid зная tid?
Для того чтобы token_filter отобразил token_custom нужен тип "Глобальный", значение return $node->title; работает только в теле ноды, но на странице термина нет, вот я и мудрил с тем кодом..
[Решено] Как получить nid зная tid?
Да, как раз и использую token_filter и token_custom. Но token_filter использует только токены Global. А token_custom позволяет создавать токены Global. Код, который рассматривали выше, я встраивал через token_custom и используя token_filter, вставлял в нужные места анонса, но код так и не заработал.
В данном случае [node-url] и [node-title] не работают, т.к не относятся к "token Global".
Спасибо, за помощь.. (продолжаю поиски)
[Решено] Как получить nid зная tid?
Ладно, будем ознакомиться и копать дальше, спасибо за советы. *решить пока не удалось
[Решено] Как получить nid зная tid?
Честно, мои знания в api, мягко говоря, не очень.
Я так понимаю первый вариант (сразу в хуке выполнить все правки) более рациональный.. Но не совсем понимаю, что придется поправить и где.
Второй вариант проще, я так понял должно работать следующим образом:
template_preprocess_node(&$variables); где необходимо менять значение $variables
[Решено] Как получить nid зная tid?
..
[Решено] Как получить nid зная tid?
Ну, примерно, так.. вместе с картинками может быть просто упоминание "node_title" в анонсе, которое также установится автоматом.. Т.е. анонс будет полностью автоматизирован - написав его один раз - он подойдет для всех нод (при условии, что у меня будут автоматом получатся заголовки и урл-ы нод)
[Решено] Как получить nid зная tid?
Inj - огромное спасибо, мы почти у цели)
[Решено] Как получить nid зная tid?
Ну допустим, в анонсе содержится картинка (нод с анонсами куча), которая будет ссылаться на ноду. Чтобы не вбивать каждый раз урл ноды и не исправлять содержимое поля alt="node_title", нужно получить значения..
[Решено] Как получить nid зная tid?
CSoft - выручай, ведь решение уже близко.. как я понимаю)
[Решено] Как получить nid зная tid?
У меня для термина выводятся анонсы нод. В этих анонсах я коротко описываю сами ноды. Чтобы автоматизировать как-то этот процесс мне нужно получить заголовки нод и их адреса (это на закуску:-)). Но пока не получается..
[Решено] Как получить nid зная tid?
Вроде бы все нормально, но вот положительный результат отсутствует пока.. не выводит заголовок..
Работает такой код:
<?php
if (arg(0) == 'taxonomy' && arg(1) == 'term') {
$nid = 89;
$node = node_load($nid);
print $node->title;
}
?>
но хотелось бы получать $nid автоматом..
[Решено] Как получить nid зная tid?
Красиво), но на 6-ке не работает..