标签: drupal-7

如何在Drupal 7中的模板中渲染Youtube缩略图

我使用以下模块:

  • 媒体
  • media_youtube
  • 样式

并希望在模板(.tpl)中呈现Youtube视频的缩略图.我应该使用哪种主题功能和什么参数?

我最好的问题是:

$my_media['style_name'] = 'unlinked_thumbnail';
print theme('file_styles',$my_media);
Run Code Online (Sandbox Code Playgroud)

其中$ my_media是一个包含fid,uri,filename,filemime等的数组.

由于我对Drupal很新,所以我尝试理解模块源代码都失败了.我觉得我已经尝试了在youtube和样式模块中定义的样式名称的所有可能组合,但没有得到任何输出.

然而,渲染视频本身就可以正常使用

print theme('media_youtube_video',$my_media);
Run Code Online (Sandbox Code Playgroud)

你们是怎么做到的?

php drupal drupal-7

10
推荐指数
1
解决办法
6211
查看次数

如何在Drupal中导入视图?

如何将视图导入Drupal.我有一个导出的视图,我需要在不同的Drupal安装中导入.我在admin/structure/views中没有导入选项?

谢谢!

编辑:

我找到了解决方案.我必须以用户1登录才能获得此选项.

import drupal drupal-views drupal-7

10
推荐指数
2
解决办法
2万
查看次数

风格Drupal 7登录页面

如何设置Drupal 7的登录页面的样式?我喜欢用不同的方法page-user-login.tpluser-login.tplpage-login.tpl,但没有结果.

有没有一种简单的方法可以在他自己的.tpl文件中使用Drupal 7中的登录页面进行主题化?

drupal login drupal-7 drupal-theming

10
推荐指数
1
解决办法
1万
查看次数

添加注释到自定义节点模块

在我的自定义模块中,我想添加注释功能.我尝试了几件事,但到目前为止还没有锻炼.

// render comments form
$output .= theme('my_module_front_page'); 
$comment = new stdClass;
$comment->nid = $node_good_practice->nid;
$output .= render(drupal_get_form('comment_form', $comment));
return $output;
Run Code Online (Sandbox Code Playgroud)

上面的代码将注释表单放到我的节点页面.

但是当我填写评论表并提交时,它会将我重定向到这个页面:comment/reply/node id然后我必须重新填写我的评论并且评论不会​​被保存.

我想提交并保持在同一页面而不是重定向.提交后必须保存评论.

现在,评论表单出现在我的节点页面(自定义模块模板)上.我输入评论并点击"保存".我被发送到/comment/reply/<node_id>,但所有评论字段都是空的.评论也没有保存.

我想要发生的是:

  • 在节点页面上有一个评论表单
  • 输入评论
  • 点击"保存"
  • Drupal保存评论,并将我重定向回我正在查看的节点/页面.

我尝试过的事情

  • 添加重定向

    $form['#redirect'] = "/success-stories/".$node_good_practice->good_practice_name."/".$node_good_practice->nid;
    
    Run Code Online (Sandbox Code Playgroud)

    它没有改变任何东西.

  • 改变行动

    $form['#action'] = "/success-stories/".$node_good_practice->good_practice_name."/".$node_good_practice->nid;
    
    Run Code Online (Sandbox Code Playgroud)

    它将我重定向到 node/node_id/#comment-17

  • 使用 drupal_build_form()

    $info->nid = $node_good_practice->nid;
    $comment['build_info']['args'][0] = $info;
    $comment['redirect'] = "http://www.google.nl";
    $output .= render(drupal_build_form('comment_form', $comment));
    
    Run Code Online (Sandbox Code Playgroud)

    表单正在显示,但不会重定向; 它发送给comment/reply/node_id.

drupal drupal-7

10
推荐指数
1
解决办法
1811
查看次数

ob_flush需要很长时间才能执行

在我的网站(使用drupal运行)中,该ob_flush函数需要很长时间(在10到100秒之间)才能执行.我如何找出原因?什么能导致这么长时间? 在此输入图像描述

php performance output-buffering drupal-7

10
推荐指数
1
解决办法
813
查看次数

如何解决分类学悖论?

我正在使用" 分类显示 "模块.我使用这样我可以按标题而不是ID来排序我的分类术语,就像默认情况下那样.但是,我还创建了一个名为的分类模板:

taxonomy-term--product_literature_category.tpl.php
Run Code Online (Sandbox Code Playgroud)

如果我启用" 分类显示 "模块并覆盖此路径的分类视图:

/taxonomy/term/%
Run Code Online (Sandbox Code Playgroud)

...它还会覆盖我上面指定的模板.更有意义的是,订单将使我的自定义模板覆盖模块.但它似乎没有这样的方式.但是,如果我禁用"分类法显示",它会再次考虑我的模板.

我有两个选择:

  1. 启用"分类法显示"并找到一种覆盖分类法的方法 - product_literature_category.tpl.php
  2. 禁用"分类法显示"并找到一种通过我自己的自定义排序参数对分类术语进行排序的方法.

我认为1很难(因为对同一件事使用两个模板没有多大意义).这就是为什么我倾向于在默认情况下更简单地对分类视图进行排序,或者以其他方式指定分类术语的顺序.

有谁知道如何做到这一点?

UPDATE

现在,我将解决一个问题,即通过模块更改分类术语的排序.这样我就可以只覆盖特定词汇表的排序.任何能够在这个方向上轻推我的指针都会受到高度赞赏吗?

更新2

我创建了teaser_sorter.module并添加了这个函数:

function teaser_sorter_views_query_alter(&$view, &$query)
{
    print '<pre>'; print_r($view); print_r($query); die();
}
Run Code Online (Sandbox Code Playgroud)

我还确保我的模块支持视图:

function teaser_sorter_views_api() {
   return array(
      'api' => 3,
   );
}
Run Code Online (Sandbox Code Playgroud)

我无法让它达到我的"死".换句话说,它永远不会被称为.事实上,我也尝试重写"hook_views_pre_execute",但这也不会被调用.

有任何想法吗?

views taxonomy drupal-7

10
推荐指数
1
解决办法
253
查看次数

drupal 7中的多个并发数据库连接

我正在为drupal 7网站编写一个包装类,它允许我连接并查询我的phpbb数据库.

连接到外部数据源时(根据drupal文档),您已设置活动数据库,运行查询,然后将活动数据库设置回默认值.

例如

db_set_active('phpbb');
$result = db_query($sql,$args,$opts);                               
db_set_active();//back to default
Run Code Online (Sandbox Code Playgroud)

但有没有办法使用drupal的数据库包装器来创建一个全新的连接,可以永久设置到新的数据库,而无需这样做来回切换废话?当然,我们可以同时处理与多个数据库的连接.

我做了一些谷歌搜索,但还没有发现任何人试图这样做.

drupal drupal-7

9
推荐指数
1
解决办法
1万
查看次数

Drupal 7节点 - >数据库中的字段映射

我试图找出节点如何映射回它们包含的字段用于学习目的.这是怎么做到的?

php mysql drupal drupal-7

9
推荐指数
1
解决办法
4636
查看次数

以编程方式在Drupal 7中按标题获取节点

我有一个模块,以编程方式将大量节点添加到我的Drupal 7站点.为了防止重复,我想检查系统中是否已存在新创建的节点的标题.永远不会出现两个节点具有相同名称的情况.我尝试过使用node_load(),但这似乎不允许我根据标题加载节点.

我很难理解如何继续,所以我想知道这里的人是否可以帮助我.

总结:如何检查具有特定标题的节点是否已存在?

谢谢.

drupal drupal-7 drupal-modules

9
推荐指数
2
解决办法
2万
查看次数

Drupal电子邮件变量没有出现

每当用户注册一个帐户时,自动电子邮件(我可以设置admin/config/people/accounts)不会携带用户名,电子邮件等的已定义变量.

例如.这是我为一封电子邮件设置的内容:

[用户名],

感谢您在[site:name]注册.您的帐户申请目前正在等待批准.一旦获得批准,您将收到另一封电子邮件,其中包含有关如何登录,设置密码和其他详细信息的信息.

- [site:name]团队

括号中的那些变量不会出现.电子邮件照常发送,但是这些变量在哪里,没有插入任何内容.我必须首先启用吗?

php drupal drupal-7

9
推荐指数
1
解决办法
558
查看次数