标签: drupal

如何为Drupal View的模块创建自定义过滤器?

我在Drupal 6站点上安装了Profile,CCK和Views2模块.我在用户配置文件中添加了一个字符串字段.我可以通过Views GUI构建器轻松过滤预设值,非常好.但是,我希望根据其他环境变量(即$_SERVER['SERVER_NAME'])来动态设置过滤条件.

某处有一个基本的"如何编写自定义drupal-views-filter"?我一直在寻找通过文档,但我的简单思想并不明显如何做到这一点.

php drupal drupal-views drupal-6

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

Drupal的搜索模块可以搜索子字符串吗?(部分搜索)

Drupal的核心搜索模块,只搜索关键字,例如"三明治".我可以用子串搜索例如"sandw"并返回我的三明治结果吗?

也许有一个插件可以做到这一点?

search drupal partial n-gram

11
推荐指数
1
解决办法
4849
查看次数

Drupal 7:访问page.tpl.php中的自定义节点字段

我在页面内容类型中添加了一个新字段"mood"(图像).有没有办法访问page.tpl.php中存储在此字段中的图像?

drupal drupal-7 drupal-theming

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

可以将Drupal db_query的结果转换为PHP数组吗?

在Drupal中,我可以执行如下SQL:

$query_object = db_query("SELECT * FROM {nodes}");
Run Code Online (Sandbox Code Playgroud)

如果我知道查询只返回一个结果(所以只有1行和1列),我可以直接获取它:

$result = db_result($query_object);
Run Code Online (Sandbox Code Playgroud)

如果我得到了多个结果,我需要使用以下内容循环它们:

$rows[] = array();
while (($row = db_fetch_object($query_object) != FALSE) {
  $rows[] = $row;
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更简单的方法吗?有没有办法可以将所有结果转换为带有单个语句的数组?或者不是那样工作,因为db_result返回一个类似游标的对象,每次只能获取一行?

drupal

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

Drupal 7 hook_menu用于特定内容类型

我尝试将新选项卡添加到特定内容类型'abc',这是代码,但它不起作用,选项卡显示在所有节点上.任何人都可以帮忙吗?谢谢!

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

  $items['node/%node/test'] = array(
  'title' => 'Test',
  'page callback' => 'handle_test',
  'page arguments' => array('node', 1),
  'access arguments' => array('access content'), 
  'type' => MENU_LOCAL_TASK,
  'weight' => 100,
  );
return $items;
}

function handle_test($node){

  $result='hi';
  if ($node->type == 'abc') {
    $result='I am working';
}
Run Code Online (Sandbox Code Playgroud)

drupal drupal-7 drupal-routes

11
推荐指数
1
解决办法
6293
查看次数

是否可以限制php在操作系统级别通过exec传递的命令?

我目前在CentOS机器上托管Drupal 6网站.Drupal(CMS)配置包含几十个不应该作为一般最佳编码实践分叉的第三方模块.但是,其中一些模块使用phpexec命令才能正常运行.

该站点允许管理员通过UI配置在任何页面中嵌入php代码片段,并授予他们可以访问php代码输入格式的权限.我需要将此输入格式保留给管理员,因为有几个节点(页面)和面板窗格使用小的,无害的PHP代码片段,例如,将特定表单嵌入到内容区域中.

问题是,如果有人妥协的管理员帐户,然后他们可以在网站上运行任意PHP代码,从而通过PHP的运行shell命令exec,passthru等有什么办法,从操作系统层面,限制什么shell命令php可以传递给机器吗?这可以通过限制从PHP的某些程序的文件权限来完成吗?

注意:我不能使用php.ini disable_functions指令,因为exec在许多情况下我仍然需要正常运行,例如,模块使用某些shell命令,例如视频编码.

php command-line drupal centos exec

11
推荐指数
2
解决办法
2889
查看次数

为什么文本对齐按钮没有出现在Drupal 7的CK编辑器中?

基本上,我一直在设置和配置来回使用CK编辑器以及重新安装它,但无论出于什么原因,这个WYSIWYG编辑器的文本对齐按钮没有显示,尽管它们似乎是配置的这样做.

我正在使用Drupal 7.19和CK Editor 7.x-1.12.为了澄清,这是CK编辑器作为独立项目,而不是WYSIWYG项目的一部分.

另外要明确的是,这不是按钮不工作或者文本对齐属性被剥离的问题,按钮根本就不存在.对于我的最终用户来说,这是一个易于使用的问题.

为什么会这样?

wysiwyg drupal ckeditor

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

Drupal:MySQL选择属于特定论坛的所有帖子

我需要选择在Drupal中的特定类别(论坛)数组中发布的所有消息(第一篇帖子和回复).

存储的第一个帖子,存储的field_data_body回复field_data_comment_body.

列的结构field_data_bodyfield_data_comment_body相同,在列中body_value有帖子的内容和列中entity_id的唯一ID.

该表field_data_taxonomy_forums包含entity_id列和taxonomy_forums_tid列(这些是论坛类别的ID).该表taxonomy_term_data包含列tid(与列相同taxonomy_forums_tiddescription列(即论坛类别的标题).

所以,我正在寻找一个查询,允许我选择帖子的主体(首先发布和回复)和论坛的描述,指定一个tids 数组(即论坛类别的ID),我' ll在taxonomy_term_data表中手动查找.

所以,例如我正在寻找允许我选择帖子"属于" tids 1456,7622,862和相关tid描述的查询.

这是field_data_body表格的截图: 在此输入图像描述

mysql drupal phpmyadmin drupal-7

11
推荐指数
1
解决办法
519
查看次数

Drupal 7:Localhost/user链接默认为网站/用户

我是Drupal的新手,并且正在玩这个现有的Drupal网站.

我将所有文件的FTP传输到我的本地计算机目录.我目前在一个Vagrant盒子上得到它,我可以访问该网站http://192.168.56.101/html.

我能做到http://192.168.56.101/html/anything-but-user,它把我带到了网站上的适当区域.但是我不能这样做localhost/html/user,因为它将我重定向到网站URL而不是本地URL.

我尝试清除缓存(使用Drush).我扫描了系统中的所有文件,并将网址更改为本地URL [不确定我是否需要执行任何其他命令],而且我似乎无法找到.htaccess导致我这样做的文件中的任何内容.

href="/user我将不胜感激任何意见或搞清楚这个解决方案帮助.

- 更新

有一个名为"安全页面"的模块导致用户和注册链接被锁定和静态,以防止重定向到网络钓鱼站点.我不得不在终端中使用"drush pm-disable securepages"禁用此模块.

html php .htaccess drupal drupal-7

11
推荐指数
2
解决办法
213
查看次数

重写规则不适用于子文件夹中的Drupal 7

所以我有一个在example.com上运行的站点,作为在文件夹中运行的Drupal站点的网关/drupal.我想做什么,我想在登录时在该网关页面上设置一个cookie,然后允许访问example.com/drupal,如果没有设置cookie,则重定向回example.com.

但我的问题是,该规则/drupal在drupal .htaccess 中的文件夹中不起作用,但我测试了它并且在根目录中工作正常.

规则如下

   RewriteCond %{HTTP_COOKIE} !CookieName=test [NC]
   RewriteRule .* http://example.com [L]
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,规则在这里不起作用,用户可以在没有cookie的情况下访问/ drupal文件夹,但是如果我在/ root中放置相同的规则,则会发生重定向,因为没有设置具有该名称的cookie.

.htaccess mod-rewrite drupal

11
推荐指数
1
解决办法
222
查看次数