Изменить вывод модуля amp в template.php

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

Аватар пользователя nik_neman nik_neman 29 января 2018 в 19:36

Здравствуйте. Использую модуль AMP. Настроил вывод ld+json в нем, но он не выводит поле 'Image'. Валидатор ругается следующим образом: 'A value for the image field is required.'
Нашел в коде где выводится ld+json. Вывод image там не нашел.
Я могу добавить в модуле следующим образом:

<?php
function amp_node_view($node$view_mode$langcode) {
    
// custom added field image
    
$img_custom 'https://example.com/logo.png';
    
$img_items field_get_items('node'$node'field_image');
    if (
file_exists($img_items[0]['uri'])) {
      
$img_custom file_create_url($img_items[0]['uri']);
    }
    
$metadata_json['image'] = $img_custom;
}
?>

Так все выводится и проверку прохожу, но менять напрямую что-то в коде модуля плохая ведь практика.
Пытался сделать допустим таким образом в template.php в шаблоне который используется для AMP.

<?php
function amp_module_implements_alter(&$implementations$hook) {
  if (
$hook == 'amp_node_view') {
       
// тут пытаюсь изменить вывод
  
}
}
?>

Но из этого нечего не вышло.
Как такое можно организовать? Заранее спасибо.

Комментарии

Аватар пользователя ХулиGUN ХулиGUN 30 января 2018 в 0:43

nik_neman wrote:

Спасибо. То есть остаётся только редактировать прямо в модуле?

Нет. Создать свой модуль и реализовать в нём нужный Вам хук