Cron cтранное поведение при ручном запуске

Аватар пользователя pentepl pentepl 27 мая 2015 в 2:50

Здравствуйте,
Вводная:
Новичок в Drupal и Web-разработке.
Реализую виджет для портфолио через представление. В результате получается мозаика миниатюрных картинок с подписями. Каждый элемент мозаики - ссылка на сайты с работами. Нода для портфолио состоит из изображения (для миниатюры), заголовка (для подписи) и текстового поля (body) с php кодом для редиректа на сайт с работами. Т.о. ноду отдельно можно только редактировать, а при просмотре сразу открывается др. сайт.
Проблема:
Все бы ничего, но (не сразу заметил) перестал работать автоматически cron. А при ручном запуске редиректит меня на один из сайтов портфолио (странно!!!) Удалил ноду с редиректом на этот сайт, после чего cron редиректит на др. сайт и т.д. Все портфолио удалять не стал, т.к. нод много жалко потраченного времени и так понятно что с этим связано. При чем не зависит от статуса публикации. Все ноды портфолио снимал с публикации - ничего не меняется.

php код применял следующий:
<?php
header('Location: http://site.ru');
exit;
?>
Подскажите пожалуйста как проблему поправить можно. В php не силен. Код нашел в инете. Может php изменить или подругому редирект организвать? Буду рад так же пояснению нафига cron так поступает.

P.S. Предложения типа "зачем так сложно ссылки на работы делаешь" не принимаются. В применяемой теме (шаблоне) пытаюсь использовать весь "живой" функционал (там не все так просто с представлениями как я описал). Поэтому ссылку на работы приходится делать через ноды с редиректами.

Спасибо.

Комментарии

Аватар пользователя pentepl pentepl 27 мая 2015 в 13:23

<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:
А чем не устроили <a href="site.ru" target="_blank">Site 1</a> ?

Я же уточнял что такой вариант мне не походит. Представление устроено таким образом, что использовать его можно только с определенными существующими полями ноды Портфолио. Добавить например поле "ссылка" не получится, представление его не "схавает". Я не знаю как делали это представление поэтому изменить его другими средствами вне модуля "представления" не могу (знаний не ватает). Именно поэтому пришлось пользоваться редиректом.
Вопрос мой больше связан с тем почему так делает cron. И как это обойти.

Аватар пользователя t1mm1 t1mm1 27 мая 2015 в 17:02

Крон это делает, потому что либо там для него прописанно в hook_cron () , либо в правилах.

Вообще, зачем так сложно?
Не проще ли сделать свой шаблон для полей для этой вьюхи и в предпроцессе делать все необходимые проверки?

В общем, как говорит товарищь из Севы, "Ой ёй ёй"[2]

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

Аватар пользователя pentepl pentepl 27 мая 2015 в 17:36

Товарищи профи!
При всем уважении, но нельзя ли чуть конкретней, по сути и по полкам. Как будто я всю эту подробную терраду зря пишу. Говорю же - я новичок. Представление сделано как то так, что манипуляции с полями в редакторе представления не меняют ситуацию. Поэтому чтоб его применить как оно есть (красивое, живое, прыгающее) приходится пользоваться существующим типом ноды (т.н. портфолио) и его полями. Изначально кликая на иконку представления открывалась нода с картинкой в полном ее разрешении. Мне же открытие этой страницы ни к чему надо чтоб сразу на др. сайт. Неужели нельзя поправить ситуацию посредством смены схемы редиректа: php код другой, код редиректа другой (я правда так и не разобрался в чем принципиальная разница между 301-м, 302-м и др. в моем случае), может ява-скриптом сделать редирект.
Если-бы не cron я меня существующая схема устраивает. Настройки cron через админку скудные. Если что надо в php или ini файлах прописать подскажите.

Аватар пользователя gun_dose gun_dose 28 мая 2015 в 9:56

если через редактор представления ничего не меняется, то 90%, что всё к свиньям собачьим переопределено в шаблоне представления. А ноды тут вообще ни при чём. Скорее всего, вы не там смотрите.

Аватар пользователя Orion76 Orion76 28 мая 2015 в 10:01

"gun_dose" wrote:
вы не там смотрите.

И нам не там показываете-)
А без конкретики способа реализации помочь Вам мы ничем не сможем - только предположениями, кому не лень-)

Аватар пользователя pentepl pentepl 28 мая 2015 в 14:46

А что тут я не ясно объяснил? Пока я не вставил этот php код в поле body ноды портфолио проблем с этим вообще не было. Если удалить со всех нод код редиректа проблема исчезнет. При чем тут как устроено представление. Я его вообще менять не хочу всмысле изначального устройства. С представлением, с шаблоном все в порядке.

Я прошу подсказать альтернативные способы редиректа (php-код, js-код) или как настроить cron чтоб он не пользовался этим редиректом.

И вообще тут на форуме с вежливым обсуждением всегда так плохо ("ой ёй ёй", "к свиньям собачьим")? По делу, нормально задать уточняющий вопрос сложно?

Аватар пользователя gun_dose gun_dose 28 мая 2015 в 16:27

объясните мне, накой чёрт вообще нужен редирект из представления? Почему не подходит обычная ссылка? Извини, автор, но мне кажется, что

Аватар пользователя pentepl pentepl 29 мая 2015 в 0:53

gun_dose,

Представление основано как Вы правильно заметили шаблоне. Править шаблон его у меня на данный момент не хватает знаний и времени разбираться. Оно мне зачем если представление прекрасно работает и без багов. Я догадываюсь, что на Ваш профессиональный взгляд я делаю скажем так не совсем грамотно. Но Вам я гляжу проще пинать меня за "дичь", нежели просто спокойно объяснить, что по Вашему мнению редирект применять тут не правильно и почему. Главное никто так и не ответил мне на главный вопрос почему cron так поступает. Повторюсь ХРЕН с ним с представлением. Тут уже просто интерес по поводу cron.

Аватар пользователя pentepl pentepl 29 мая 2015 в 14:51

Проблему решил убрав из кода:

<?php
header('Location: http://site.ru');
exit;
?>

строку: exit;

cron автоматически заработал. Править шаблон не потребовалось

P.S. Умникам на заметку. Читайте текст и суть проблемы повнимательней и будьте уважительней к людям с меньшим опытом и знаниями. А то смысл форума теряется.

Аватар пользователя pentepl pentepl 29 мая 2015 в 18:42

ХулиGUN

Слышь, умник. Я смотрю через жопу и "Помощь пользователям на форумах" можно делать. С такими помощниками лишний раз на форум обращаться неохота. Ты хамло если по человечески ответить не можешь чего лезешь со своими замечаниями. До тебя уже все сказали. Нечего больше добавить валина фиг с обсуждения. А за "в жбан огрести" - ты мне это попробуй в лицо скажи. Ты только на форуме такой борзый или в реале? Помощник, блин.