【问题标题】:Drupal-7: Feed Import custom cron jobs from the same moduleDrupal-7:Feed 从同一模块导入自定义 cron 作业
【发布时间】:2015-04-23 20:04:16
【问题描述】:

我安装了启用了 Feed 导入模块的 Drupal 7(与 Feed 模块不同!)。从这个模块中,我需要从几个具有不同时间表的 xml 提要中导入数据。例如,饲料 A 应该每天导入一次,但饲料 B - 每周一次。

我做过研究,建议 Elysia Cron 或 Ultimate Cron 应该有助于做到这一点。但是我不知道需要做什么才能真正实现可以在不同时间导入不同的提要。

如果我以 Ultimate Cron 案例为例,那么使用他们的 API Ultimate_cron.api.php https://www.drupal.org/project/ultimate_cron 我发现了以下建议:

我在 Feed 导入模块中创建了一个钩子,并定义了一个新的 cron 任务(以导入已在 Feed 导入中定义的 Feed,名称为“test API feed RAW”)。代码如下所示:

function feed_import_base_cronapi() {
  $items = array();

  $items['test_api_feed_raw_cron'] = array(
    'title' => t('test API feed RAW')
  );

  return $items;
}

但是,当我进入管理布局中的 Cron 页面并手动执行新创建的任务时,没有任何反应。说明cron任务执行成功,但没有数据导入。

似乎这个新创建的任务实际上并没有与 Feed 导入模块中定义的 feed 链接。或者它没有触发该提要的导入。

我在这里错过了什么和做错了什么?我对 php 和模块开发不是很擅长,任何帮助将不胜感激。

我已经用谷歌搜索并寻找了各种解决方案,但没有任何效果。我真的觉得我错过了一些非常基本和明显的东西。但当然它也可能相反,我正在尝试实现一些非常复杂的东西..

【问题讨论】:

    标签: import drupal-7 cron feed cron-task


    【解决方案1】:

    在同事的帮助下找到了解决方案。如果有一天有人需要,会在这里发布。

    我在这里缺少一个触发实际提要导入的回调函数。我也从 Ultimate Cron 更改为 Elysia cron。 (但不确定这是否真的有影响)

    触发 feed 导入的实际函数来自 feed_import_base.module

    _feed_import_base_process_feed($feed);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-19
      • 1970-01-01
      相关资源
      最近更新 更多