Блог пользователя - K0r5hun

Безопасно ли использование адреса страницы в db_select?

22 мая 2012 в 14:22

Необходимо для каждой страницы вывести список ссылок.
В таблице БД хранятся адрес страницы(dpath), адрес ссылки(url), текст ссылки.

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

Вывод заголовка страницы title с помощью CCK

23 декабря 2011 в 16:43

Появилась необходимость вывести изменённый заголовок страницы.

1) Создаём в Типе материала новое CKK Текстовое поле: field_page_title

Вариант 1:
Модули page_title + token позволяют вывести данное поле.

В настройках модуля page_title (/admin/config/search/page-title) у страницы "Content Type - Страница" поставьте галочку и задайте следующее значение:
[node:field_page_title]

Недостаток в том, что если поле не заполнено, то в заголовке выводится текст с названием поля [node:field_page_title].

Вариант 2:
Вообщем стал я искать другой способ и решил данный вопрос через систему хуков слева и справа Smile

Для этого добавляем код в файл template.php с вашей темой. WOLQRU - заменяем на название вашей темы, field_page_title - заменяйте на название вашего дополнительного поля.

function WOLQRU_preprocess_html(&$variables, $hook) {
  if ($node = menu_get_object()) {
    $title = field_get_items('node', $node, 'field_page_title');
    if($title != false) {
          $variables['head_title'] = $title[0]['value'];
    }
  } else {
    $variables['head_title'] = drupal_get_title();
  }
}

Теперь если значение в поле CCK не задано - то выводится стандартное, если задано - то выводится значение из поля.

Не удаляются записи через API

11 ноября 2010 в 10:26

Здравствуйте.

Не удаляются ноды с помощью API из под крона.

Есть некий файл, часть кода приведена ниже. Он при получении GET запроса удаляет записи. Get запрос можно отправить в ручную со страницы сайта (из под админа работает, из под гостя нет). Мне сейчас необходимо добиться, чтобы эта процедура осуществлялась автоматически через крон.

PS В файле также есть функция добавления! При этом она работает даже из под гостя! Есть какие-то предположения?

Процедура удаления:

<?php
$delquery 
"SELECT node.nid AS nid
FROM node node
WHERE node.type in ('tovar')"
;

$deldata db_query($delquery);
while (
$delitem=db_fetch_object($deldata)) {
    
node_delete($delitem->nid);
    echo 
". ";
}}
?>

API подключаю в отдельном php файле следующим образом:

<?php
//require the bootstrap include
require_once $_SERVER["DOCUMENT_ROOT"].'/includes/bootstrap.inc';

//Load Drupal
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
?>

Создание списка новостей

13 августа 2008 в 11:57

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

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

Поиск галереи для сайта.

4 июля 2008 в 11:39

Необходим следующий функционал:

  1. Собственно сама галлерея с изображениями;
  2. Хранение изображений определённого альбома в определённой подпапке. Дабы не создавалась мусорка с хранением всех картинок в одном месте;
  3. Загрузка пользователями фотографий в некоторые альбомы;
  4. Создание личного фотоальбома у каждого пользователя;
  5. Превьюшки у картинок;
  6. Автоуменьшение картинок до заданного размера, например 1024*768
  7. ;

  8. Комментарии, заголовки и т.п.

Создаются, но не показываются комментарии гостей. D6

20 февраля 2008 в 1:41

Использую Дрюпал 6.
Создаю комментарии от гостя - они создаются, увеличивается их количестве в счётчике, но на странице не отображаются (не видно ни из под гостя, ни из под админа). В настройках прав стоят access comments, post comments, post comments without approval.
Также созданные гостем комментарии не отображаются на страницах admin/content/comment, admin/content/comment/approval.

Поменял значение поля uid в БД с 0 на 1(админ) - комментарии стали нормально отображаться и на странице с текстом и в администрировании комментариев.

Создание дополнительного меню на подобие primary_links

19 февраля 2008 в 14:42

Создал дополнительное одноуровневое меню, наподобие primary_links, в footer'е.
Для тех кому интересно, выкладываю небольшой порядок действий.

Вначале создал меню, которое будет выводиться внизу темы admin/build/menu/add
При этом в машинном имени (machine-name) использовал следующее название блока: footer-links

В файле themes/тема/template.php добавил следующие строки: