drupal 6: как написать запрос для вставки в тип контента - PullRequest
0 голосов
/ 26 января 2010

Я создал тип контента с именем history когда пользователи хотят открыть определенную страницу, история контента должна быть вставлена ​​с новой строкой.

Я использую правила, но застрял с запросом.

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

Ответы [ 3 ]

0 голосов
/ 26 января 2010

Хм, кажется немного странным использовать тип контента для вашей истории просмотра, но я пойду с этим. Итак, вы хотите, чтобы история создавала новый узел всякий раз, когда просматривается определенная страница, верно? Вам нужно будет использовать пользовательский модуль для этого.

Вы можете написать модуль, который реализует hook_init () , чтобы сделать что-то вроде:

<?php
    MODULENAME_init() {
        if (drupal_get_path_alias($_GET['q']) == 'the_path_alias_of_your_page') {
            // create your node here, see http://api.drupal.org/api/function/node_submit/6 for example
            // then save it using node_save($node)
        }
    }

Очевидно, что это действительно грубо, но это поможет вам начать.

Вы уверены, что не можете просто использовать Google Analytics или подобное?

0 голосов
/ 27 января 2010

Не очень хороший способ создать тип контента для журналов. Просто создайте простую таблицу со столбцами: nid (идентификатор узла), посещенный (дата и время посещения), uid (идентификатор пользователя, для гостей = 0)

В вашем модуле добавьте:


/**
 * Implementation of hook_exit().
 */
function YOURMODULENAME_exit() {
  drupal_bootstrap(DRUPAL_BOOTSTRAP_PATH);

  if ((arg(0) == 'node') && is_numeric(arg(1)) && (!arg(2))) {
    global $user;
    $node = node_load(arg(1));
    if (in_array($node->type, array('some_content_types'))) {
      db_query('INSERT INTO {somelogtable} VALUES(%d, %d, %d)', $node->nid, time(), $user->uid);
    }
  }
}

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

0 голосов
/ 26 января 2010

Не может модуль статистики помочь вам? «Он подсчитывает, сколько раз и откуда просматривается каждое из ваших сообщений».

...