Задавайте вопросы про Drupal

VE
На сайте с 17.08.2006
Offline
76
#171

vandamme

В том-то и дело, что шикарно сделано. Ушли от битрикса (раньше этот кат. на битриксе был, хтя основной сайт на нем и оставили).

Видимо, яро API поюзали.

Буду искать. Но может найдется "уже искавший" :)

G
На сайте с 22.09.2007
Offline
161
#172

view'er фильтр чего-либо в блоке - это обычный views, в котором exposed filter находится в блоке (в настройках Basic setting - Expose to block), параметры товара -могут быть поля cck или термины таксономии, темизации - css или хуки на крайний случай. Минимум надо доп модуль Better Exposed Filters.

http://www.drupal.ru/node/65802

http://www.drupal.ru/node/55048

---------- Добавлено 06.09.2012 в 15:59 ----------

Pavel_, в User settings, ставим "Only site administrators can create new user accounts."

A4
На сайте с 05.01.2012
Offline
55
#173

Друзья, подскажите почему не работет указанный хук:


function mymodule_page_alter(&$page) {
if (isset($_GET['ajaxrequest'])) {
echo render($page['content']);
drupal_exit();
}
}

Хотя тут: http://drupal.org/node/1259412 написано что он работает.

вот строка оттуда url: $(this).attr('href') + '?ajaxrequest',

Я вообще не понимаю как отправить в друпал гет запрос. По моему личному мнению - это не возможно из за строки в .htacess

RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

то есть гет вообще не возможен, так как запрос вида site.ru/node/1?ajaxrequest

будет преобразован в вид:

site.ru/index.php?q=/node/1?ajaxrequest

и получается вложенность, короче гря бред получается.

Кто подскажет как заставить указанный выше хук работать? Благодарю)

vandamme
На сайте с 30.11.2008
Offline
675
#174

не знаю как насчет гета, но аргумент из строки извлекать легко

arg(n), где n - номер аргумента (0,1,2,3 ...)

к примеру код

if (arg(0) == 'admin') {

//код

}

site/node/47

arg(0) это node

arg(1) = 47

http://api.drupal.org/api/drupal/includes!path.inc/function/arg/6

он сам извлекает из $_GET

A4
На сайте с 05.01.2012
Offline
55
#175

vandamme, Да да, так то оно так. про функцию arg(n) знаю. Но, вся проблема в том, что

site.ru/node/1?ajaxrequest- обращение фактически к странице site.ru/node/1(на которой может быть материал с текстом)

а site.ru/node/1/ajaxrequest - обращение к странице site.ru/node/1/ajaxrequest(на которой ничего нет или даже 404)

Не самому же делать вывод материала) Нет можно конечно через хук hook_menu сделать страничку, потом на ней возвращать статью способом:


if((arg(1)=="node") && is_numeric(arg(2))){
$node = node_load(arg(2));//загружаем материал
print render($node->title);//название материала
print render ($node->body['und'][0]['safe_value']);//текст материала
drupal_exit();
exit();
}

НО. А как же быть с такосономией, категориями там, например? Опять же модуль views - ндао писать с ним взаимодействие какое - то, ведь вдруг пользователь указал что на странице не больше 10 материалов, а модуль выводит все и сразу?)) Нее, это совсем бардак выходит. Вот если б узнать почему такие простые и элегантные строчки(выше в посте) не работают... И как их заставить работать - это бы прям как гора с плеч)

vandamme
На сайте с 30.11.2008
Offline
675
#176

ну так сделайте по подобию функции аргумента свою

она почему то умеет извлекать из гета, а вы нет

$path = $_GET['q'];

http://api.drupal.org/api/drupal/includes!path.inc/function/arg/6

да и при желании можно из site.ru/node/1?ajaxrequest

из сделать $my = explode('?', $otkuda=arg(1));

(я не программер, поэтому деталей не знаю)

DV
На сайте с 01.05.2010
Offline
644
#177

Реставрирую очередной сайт. Поставил metatag/metatags, заработало с пол пинка. ХЗ.

---------- Добавлено 09.09.2012 в 13:11 ----------

Задача.

Нужно генерировать список терминов таксономии. Понятное дело, views может все. При этом, список должен быть основательно закешированным. В идеале, .txt файл, лежащий в корне сайта. Файл будет запрашиваться сторонними серверами довольно часто, и каждый раз дёргать все шестерёнки CMS совсем не рационально.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
G
На сайте с 22.09.2007
Offline
161
#178
DenisVS:
В идеале, .txt файл, лежащий в корне сайта. Файл будет запрашиваться сторонними серверами довольно часто, и каждый раз дёргать все шестерёнки CMS совсем не рационально.

тогда друпал не причём, пишем небольшой скрипт на php, который выбирает термины (mysql_query) и сохраняет (file_put_contents) их в txt файл, запускаем раз

или выводим все термины на экран (любым способом), копируем и сохраняем в txt файл, который заливаем на хостинг

I
На сайте с 02.03.2012
Offline
4
#179
aftamat4ik:
Друзья, подскажите почему не работет указанный хук:

function mymodule_page_alter(&$page) {
if (isset($_GET['ajaxrequest'])) {
echo render($page['content']);
drupal_exit();
}
}

Хотя тут: http://drupal.org/node/1259412 написано что он работает.
вот строка оттуда url: $(this).attr('href') + '?ajaxrequest',
Я вообще не понимаю как отправить в друпал гет запрос. По моему личному мнению - это не возможно из за строки в .htacess
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
то есть гет вообще не возможен, так как запрос вида site.ru/node/1?ajaxrequest
будет преобразован в вид:
site.ru/index.php?q=/node/1?ajaxrequest
и получается вложенность, короче гря бред получается.
Кто подскажет как заставить указанный выше хук работать? Благодарю)

hook_menu попробуйте :-) можно свои урлы делать

DV
На сайте с 01.05.2010
Offline
644
#180

Победил metatag/metatags.

Глюки появились в результате экспериментов с версиями, что-то в базу затесалось. Пришлось снести модуль подчистую, поставить заново и заполнить все теги.

Ещё ерундель наблюдаю с tokens. Для вменяемого ЧПУ (сайт/категория/нода) пользуюсь dev весией tokens, там есть . С этой версией не наблюдаю нужных мне токенов в metatag. Настраиваю url, ставлю релиз tokens, настраиваю метатеги. Всё работает.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий