Drupal 7: как получить детали абзаца из узла? - PullRequest
0 голосов
/ 10 июля 2019

В D7 я хочу получить детали / значения абзаца по узлам.Позвольте мне объяснить, что я делал ранее.

Шаг 1: I Созданы термины таксономии

Шаг 2: Я создал группы абзацев с помощью этой таксономии (Ссылка на термин)

Шаг 3: Назначьте абзац с некоторымидругие абзацы в типе контента говорят «Article»

Шаг 4: Создан некоторый контент на основе типа контента Article

Теперь я хочу получить информацию со страницы статьи.Для этого я создал модуль и поместил в него следующую функцию и коды:

module_name_views_query_alter {
    $nodeid = ((filter_xss(arg(0)) == 'node') && (is_numeric(filter_xss(arg(1)))) ? (filter_xss(arg(1))) : '');
    $node = node_load(trim($nodeid));
    print_r($node->field_page_content); die(); // In Content pane, I placed the paragraphs
}

Результат ниже:

Array
(
    [und] => Array
        (
            [0] => Array
                (
                    [value] => 140
                    [revision_id] => 140
                )

            [1] => Array
                (
                    [value] => 2825
                    [revision_id] => 2825
                )

            [2] => Array
                (
                    [value] => 190
                    [revision_id] => 190
                )

            [3] => Array
                (
                    [value] => 4652
                    [revision_id] => 4652
                )

            [4] => Array
                (
                    [value] => 4663
                    [revision_id] => 4663
                )

        )

)

Я могу получить информацию, написав кодкак показано ниже:

$entities = entity_load('paragraphs_item', array('4652'));

Но значение «4652» я принял как жестко закодированный.Это не хорошо.4652 обозначает абзац «Лента новостей», насколько я знаю.Но как я могу проверить, что 4652 для пункта "Лента новостей"?Есть ли какая-нибудь функция, чтобы я мог написать, как показано ниже?

HOOK_function($node->field_page_content) { ... }
...