treusp: Блог

Главные вкладки

Nodeaccess - views ТОЛЬКО для определенной роли

26 сентября 2015 в 19:24

Всем привет!
Делаю views, который будет показывать материалы (типа блог).
Имею роли пользователей (anonym, authenticated, partner, moderator)
Использую nodeaccess, чтобы некоторые материалы сделать доступными только партнерам и модераторам, а анонимным или просто авторизованным пользователям не показывать.
Views прекрасно показывает. Скажем, для авторизованного пользователя 35 статей, а для с ролью Партнер - 42

Вопрос: как показать статьи, которые доступны только Партнеру? Т.е в данном случае 7 штук?

В принципе я не уперся в nodeaccess. Пробовал и Access by Term и Taxonomy Access Control

Как восстановить только данные (слишком сильно все попортилось)

8 ноября 2014 в 0:29

Здравствуйте!
После переноса сайта на другой хостинг вылезла проблема. Все показывается, но залогиниться невозможно.
Шаманством типа "удалить все модули" залогиниться удалось, но войти в меню администрирования - нет: "На сайте произошла непредвиденная ошибка. Пожалуйста, повторите попытку позже."
Извращался типа сначала удалил все модули, залогинился (это видно по появлению надписий "Выйти" вместо полей ввода имени/пароля), потом подложил модули обратно. Получилось войти.
Есть куча ошибок типа

Переопределение полей в "полном виде"

26 апреля 2014 в 23:41

Я переопределил поля через Views с использованием custom formatters.
Все отлично, они выводятся списком...
Но хочется, чтобы нажатием на название открывался "полный вид". Если сделать просто "Содержимое:Заголовок" в качестве ссылки, получается вид некрасивый. Названия полей, где они не нужны (во Views метки были отключены), никаких custom formatters.
Как сделать, чтобы подробный "единичный вид" тоже был красивым (а-ля настраивался через Views)?
А еще чтобы была кнопочка "Редактировать", но только когда администратор смотрит (у посетителей она не видна)?

ImageField Или что-то подобное

21 апреля 2014 в 22:26

Здравствуйте!
Есть нужда
а) Вставлять в материал изображение
б) Чтобы оно показывалось в самой статье, во Views (когда лента таких статей...)
в) При нажатии на него оно показывалось более крупно (ightbox?)

Пробовал сделать, создавая поле типа Изображение.
1) При добавлении материала картинка действительно загружается. Но progress bar крутится непрестанно и никогда не останавливается.
С этим жить можно. Но потом при правке материала оно точно так же не удаляется (крутится колесико, и все тут).
Друпал просит добавить apc.rfc1867=1, но на моем хостинге, похоже нельзя (впрочем, в техподдержку написал, ибо библиотека APC на самом деле установлена)
2) Как прикрутить к этому тот же lighbox?

Превьюшка страницы в ВКонтакте

9 июля 2012 в 22:18

Когда во ВКОнтакте добавляешь на стену ссылку на страницу формируется некая превьюшка фрагмента этой страницы.
У меня это получается самое дебильное место - кусочек от формы подписки внизу экрана:

Есть ли какой трюк, чтобы такая операция с сайтом на друпале выдавала что-то более осмысленное, например, начало статьи (заголовок, левый угол первого абзаца..)?

Как править тестовый сайт, а потом деплоить его на продакшн?

1 июля 2012 в 23:10

Есть большое желание не мучить боевой друпал, а что-то делать с тестовым, а потом переносить это на боевой сервер.
Даже не смог запрос для поиска внятно сформулировать, все не то находится.

Хочется иметь копию сайта у себя на локальной машине.
Добавлять/настраивать модули, править CSS, даже иногда просто материалы добавлять.
И лишь в определенный момент переносить все это на реальную систему.

Как такое можно сделать?

Сам начал так:

  • заархивировал и перенес к себе всю директорию друпала
  • через Sypex Dumper 2.0.9 забэкапил и воостановил всю базу
  • в hosts себе прописал левое имя сайта и поправил sites.php, сделав их одинаковыми

Что получилось:

  • Главная страница открывается корректно

Как выборку таксономии заменить Views'ом?

28 июня 2012 в 20:57

Есть таксономия. При нажатии этого свойства в конкретном материале появляется списко материалом, подходящих под этот термин.
Но я хочу это изобразить в более приличном виде через Views.
Пытался тупо в свойствах Views поменять URL на такой же, как в таксономии (tax/term1).
Вроде даже раз сработало, но потом опять стандартное некрасивое полезло.

Можно такое сделать?
Наверное я могу в .htaccess залезть и редирект сделать, но как-то это криво.
Можно же и покрасивее, да?

Почему в индексе Яндекса страницы только первого уровня?

11 июня 2012 в 13:26

Почему-то на моем блоге ngfw.ru в индексе яндекса находятся только страницы сайта первого уровня (/blog, /about...)
И ни одной из /2011/нечто

Исключенные страницы по разделам: http://clip2net.com/clip/m122789/1339406139-clip-12kb.png
Действительно, /2010, /2011, /2012 у меня отсутствуют.

Но внутри-то страницы есть, к примеру, http://ngfw.ru/2012/3d-security-mirror-port-kit
Если глянуть http://ngfw.ru/sitemap.xml (он Яндексу скормлен), там тоже все перечислено.

Хоть на сайте использую поиск Google, но и Яндексовый создал.
И в нем если проверить robots.txt и ту же страницу, все норм, она разрешена.
http://clip2net.com/clip/m122789/1339406461-clip-4kb.png

Можно ли link field заставить отображаться как audio?

1 июня 2012 в 23:12

Храню мультимедийные файлы не на локальном хостинге, а на внешних ресурсах.
Ссылки на них даю как на свой сайт, но эту директорию переадресовываю в .htaccess типа
RewriteRule ^F/(.*).*$ http://dl.dropbox.com/u/XXXXXXXX/F/$1 [L,QSA]
Вопрос - как красиво показывать такое содержимое?
Использовать audiofield - так мне не надо аплоадить файл на хостинг. Надо готовую ссылку на него указать.
Использовать link field - отлично указываю ссылку, но как настроить, чтобы показывалась не ссылка, а какой-то медиаплеер?

Views при перезаписи удаляет скрипты, object

1 июня 2012 в 23:07

Хочу, чтобы в материале выводился аудиофайл.
Но с некоторыми наворотами, в частности то же имя для других целей использовалось.
Поэтому создал простое текстовое поле с именем файла (ни путей, ни даже .mp3)
И во views сказал перезаписать поле

<object data="http://flash-mp3-player.net/medias/player_mp3_maxi.swf" height="20" type="application/x-shockwave-flash" width="200"><param name="movie" value="http://flash-mp3-player.net/medias/player_mp3_maxi.swf" /><param name="bgcolor" value="#ffffff" /><param name="FlashVars" value="mp3=/f/Media_pub/[field_file_name].mp3" /></object>

Так вот этот фрагмент в выводе напрочь отсутствует.

Показать Link field как аудио

31 мая 2012 в 21:56

Храню мультимедийные файлы не на локальном хостинге, а на внешних ресурсах.
Ссылки на них даю как на свой сайт, но эту директорию переадресовываю в .htaccess типа
RewriteRule ^F/(.*).*$ http://dl.dropbox.com/u/XXXXXXXX/F/$1 [L,QSA]

Вопрос - как красиво показывать такое содержимое?
Использовать audiofield - так мне не надо аплоадить файл на хостинг. Надо готовую ссылку на него указать.
Использовать link field - отлично указываю ссылку, но как настроить, чтобы показывалась не ссылка, а какой-то медиаплеер?

Добавить скрипты в HEAD для определенного материала

18 мая 2012 в 10:45

Есть ряд скриптов (например, optincrusher), которые нормально работают, когда кусок их вынесен в HEAD. A если просто в тело статьи - всякие предупреждения вываливаются.
И если надо везде его показывать, можно и templates/html.tpl.php руками поправить (хотя я предпочел бы более универсальный способ).

А вот как сделать, чтобы некий фрагмент только на избранных типах материала появлялся?
Какое-то условие на php? (я не девелопер, но скопипастить строчку if смогу)
Или все-таки есть человеческий способ модификации head без влезания в код?

Спасибо!

Как быстро изменить категории (таксонометрию)?

2 мая 2012 в 12:04

Есть посты в блоге. Некоторые из них я помещаю на главную путем установки определенной категории в таксонометрии.
Через какое-то время, чтобы убрать статью с главной, приходится ее редактировать, убирать категорию, сохранять.

Помнится, в Wordpress можно было фильтрануть по категории, получить список статей, и убрать их из этой категории одним махом.

Есть что-то подобное в Drupal?

Общая авторизация для http и https

28 апреля 2012 в 22:36

Захожу на сайт по https для администрирования, чтобы пароль не перехватили по дороге.
Все хорошо, но при создании материала у меня автоматически постится !title !url в Твиттер.
И url туда попадает в виде https://...

Я бы согласился авторизоваться по https, а потом переключаться в http для создания поста, но при этом не сохраняется авторизация.

Посоветуете что-нибудь?
Спасибо

Media:Youtube. При редактировании ОК, При показе - черный квадрат. Почему?

16 апреля 2012 в 11:09

Настроил модуль Media, к нему Youtube, Vimeo.

При вставке все хорошо. Указываю ссылку на youtube (даже по новой нотации youtu.be) и в режиме редактирования вижу, что засосалось название с ютуба.

А после сохранения - черный квадрат со ссылкой Download file.

Что не так?

В "редактировании типов файлов" ставил Youtube выше всего, MediaElement в самый низ.

Но вот толком не понимаю, когда сказываются какие параметры. (Originbal, Large, Ссылка..)
Мож где напутал.

Как вставить аудио в тело ноды (а не в поле)?

15 апреля 2012 в 10:39

Хочу вставлять аудиофайлы не в конец ноды, как через AudioField, а тексте ноды, перемежаясь с текстом.

Ну примерно как при использовании модуля Video я пишу
[video:http://www.youtube.com/watch?v=XXXXXXXXXX width:640px height:478px]

Что посоветуете?

Конечно я могу взять просто SoundManager2, включить в заголовок, rfr standalone версию...
Но есть подводный камень.
Я его же назначил как обработчик поля, поскольку во многих случаях такой подход вполне подходит и дает простую возможность контроля доступа.

И получается, что если поле с mp3 файлом проигрывается вполне достойно, то не очень хорошо проигрывается файл в тексте ноды.
<a class="sm2_button" href="http://domain.ru/system/files/Audio/xxx.mp3">sm2_button</a>

Audio для локальных файлов

2 апреля 2012 в 9:29

Подскажите, пожалуйста, удобный способ вставки аудио в тело постов?

К примеру, с помощью video_filter я могу не большой код с ютьюба вставлять, а написать
[video:http://www.youtube.com/watch?v=xxxxxxxx]

Можно ли так же сделать с аудио? Причем для проигрывания либо локальных файлов, либо находящихся где-то. Ну навроде:
[audio:http://my.site/a/xxx.mp3]
Желательно, чтобы можно было выбрать аудиоплеер.

Всякие podfm не катят, поскольку на их сайте можно легко посмотреть список всех загруженных файлов пользователя. А у меня предполагается часть контента отдавать только зарегистрированным пользователям.

Впрочем, если есть какой-то подкастный сайт с возможностями близкими к ютубовской "доступно только тем, у кого есть ссылка" - тоже вариант.

TinyMCE коверкает переводы строк

1 апреля 2012 в 22:10

Ставлю TinyMCE через WYSIWYG.
Все хорошо, даже спеллчекер Smile

Но почему-то возникает проблем а с переводами строк
Вот беру из Word (с очисткой)

Мультисайт и htaccess

15 января 2012 в 21:05

Я уже знаю, как подсовывать разные robots.txt для разных сайтов в случае мультисайтинга.

Но есть задачка, которую никак не придумаю, как решить.

1. Основной домен (пусть будет xxx.ru)
Его хочу делать прямо в Интернете, а не локально, чтобы показывать избранным.

2. Он не должен быть доступен публично.
Только избранным, по авторизации.

3. С него должен быть редирект на субдомен.
Типа простой человек вводит xxx.ru и попадает на promo.xxx.ru
(временно конечно)

4. С него должны скачиваться файлы.
xxx.ru/F/test.txt должен быть доступен

Сейчас это реализовано добавлением блока с Java скриптом на главной странице, который показывается неавторизованным (и не показывается авторизованным).

Но:
а) Иногда успевают увидеть, что там на главной промелькивает

CKEditor не использует CSS темы. Почему?

14 января 2012 в 14:20

Использую CKEditor через wysiwyg. И расстраивает одна маленькая деталь - в процессе редактирования стили Heading (H1..) показываются "по своему", совершенно не так, как в preview.
Хотя в настройках и стоит "использовать тему":

профиль CKEditor для Full CKEditor
CSS редактора: Использовать CSS темы

В принципе я пробовал и явно указывать в духе "%b%t/style.css,/sites/all/themes/ngfw2/style.css" однофигственно.

Не перекрывается функция в template.php

14 января 2012 в 13:05

Использую модуль Aggregator.
Хочу обернуть его ссылки в noindex/nofollow
Можно поменять

function theme_aggregator_block_item($variables) {
  // Display the external link to the item.
// Was:   return '<a href="' . check_url($variables['item']->link) . '">' . check_plain($variables['item']->title) . "</a>\n";

  return '<noindex><a rel="nofollow" href="' . check_url($variables['item']->link) . '">' . check_plain($variables['item']->title) . "</a></noindex>\n";
}

И это работает. Но, насколько я знаю, правильно перекрыть функцию в template.php
Поэтому пробую сделать так:

        case 7:
          require_once("drupal7_theme_methods.php");
          break;
    default:
                  break;
}

/* !!! MY*/

Проблема с Мультисайтингом на GoDaddy Hosting Connection

12 января 2012 в 18:23

Несколько месяцев назад частично переехал на GoDaddy, да в не простой, а в их Европейский ЦОД, что дает пинг всего 40 ms при Штатовских ценах.
В основном ради Друпала и файлохранилища (легальных файлов).

И в первый раз в жизни решил не самостоятельно Drupal устанавливать, а воспользоваться их встроенной системой "GoDaddy Hosting Connection".

Друпал установился. Завел на нем первый сайт. Все здорово, летает за копейки.

Best practice по настройке файловой системы в мультисайтинге

6 января 2012 в 12:37

Подскажите, плиз, best practice по настройке файловой системы в мультисайтинге.

Ну т.е. мультисайтинг настроен, все работает.
В свойствах файловой системы прописано sites/xxx.ru/files
Но криво ведь давать доступ к файлам и картинкам по типу http:/xxx.ru/sites/xxx.ru/files/Img/zzz.jpg
Гораздо приятнее было бы просто http:/xxx.ru/Img/zzz.jpg, правда?

И технически вполне можно подменить для конкретного сайта хоть в settings.php хоть в .htaccess.

Перепутаны client

9 октября 2011 в 21:20

Кучу ответов и на формуме и в гугле просмотрел.
Все равно не понимаю.

open_basedir /var/www/clients/client0/web10/web:/var/www/clients/client0/web10/tmp: и т.п.

А у меня реально /var/www/clients/client3/web10/tmp

Очень похоже, все работает из под client3, в нужном месте создается tmp, если я указываю, к примеру, sites/zzz.ru/tmp
Но при попытке импорта из вордпресса все равно ругань

«
Warning: file_exists(): open_basedir restriction in effect. File(/var/www/clients/client3/web10/tmp/phpndfvWi) is not within the allowed path(s): (/var/www/clients/client0/web10/web:/var/www/clients/client0/web10/tmp) в функции file_unmanaged_copy() (строка 855 в файле /var/www/clients/client3/web10/web/includes/file.inc).
Указанный файл /var/www/clients/client3/web10/tmp/phpndfvWi не может быть скопирован потому, что файла с таким именем не существует. Пожалуйста, убедитесь, что вы указали правильное имя файла.
»

Ну где PHP в друпале берет значение для open_basedir?

Как прописать таксономию непосредственно в таблицу

2 июля 2011 в 20:05

Есть материал "Цитата". Соответственно есть список цитат. Но при их импорте я забыл сопоставить им поля из таксономии.
Конечно я могу открывать каждую цитату и прописывать ей поле из таксономии, но может это можно попроще сделать?
Например, было бы здорово иметь некий вид, где в табличке пара колонок - собственно текст и поле, куда я могу быстренько таксономию вписать.

Реально это сделать? Как?