Questions tagged «7»

版本标记应用于仅适用于版本的问题,而不仅仅是说明网站使用的版本。

9
使用随机排序时如何删除重复项?
我创建了一个视图,在其中显示节点标题和徽标(cck字段)。在论据中,我通过了分类术语名称。 结果,一个节点显示2或3次。我已经在“查询”设置中选中了不同的复选框,但这也无法正常工作。我使用了随机排序,这似乎会导致重复。当我删除随机排序时,它可以正常工作。 如何在不禁用随机排序的情况下避免重复?
31 7  views 

4
如何使用drupal_mail()通过自定义模板发送电子邮件
我想使用该drupal_mail()功能发送电子邮件,但使用自定义HTML模板,以使其与我的网站设计保持一致,但是我是钩子和模块等的完全新手,因此,我希望您提供一些解释或请初学者指导。 我可以自己创建模板,我只需要知道如何drupal_mail()使用它即可。
31 7  hooks  emails 

8
如何制作州要求的表格?
我有一个下拉列表,根据选择的内容显示各个字段,并且我知道可以用状态切换可见性,但是当我尝试使用必填项时,会显示*跨度,但实际上并不是必需的。我的意思是,即使它是“必需的”,我也可以单击“提交”,而不会收到来自drupal的错误消息。我是在做错什么,还是当前在Drupal 7.8中已解决? $form['host_info'] = array( '#type' => 'select', '#title' => t("Host Connection"), '#options' => array( 'SSH2' => t('SSH2'), 'Web Service' => t('Web Service'), ), '#default_value' => t(variable_get('host_info', 'SSH2')), '#description' => t("Specify the connection information to the host"), '#required' => TRUE, ); $form['ssh_host'] = array( '#type' => 'textfield', '#title' => t("Host …
31 7  javascript 



2
消除折叠内容中的阻止渲染的JavaScript和CSS
我正在建立一个Drupal 7网站。这些是我使用的一些模块:自适应主题(主题),视图和内容窗格,面板,迷你面板,无处不在的面板,页面管理器,菜单的Superfish,Addthis,选择(下拉)。 为了提高网站性能以及处理CSS和JS文件,我使用了Advagg模块。 在运行Google的Pagespeed测试时,出现以下错误,提示为“ Should Fix”: 在首屏内容中消除渲染阻止JavaScript和CSS 您的页面有6个阻止脚本资源和8个阻止CSS资源。这会导致页面渲染延迟。如果不等待以下资源加载,则无法呈现页面上的首屏内容。尝试延迟或异步加载阻塞资源,或直接在HTML中内联这些资源的关键部分。 这是Google提供的信息: 删除阻止渲染的JavaScript 优化CSS交付 有什么办法可以更改Advagg模块或Drupal核心的设置并解决此问题? 还有另一种方法可以实现这个目标吗? 更新 -根据mikeytown2答案实施更改后,我在Google的Pagespeed测试中收到以下消息: 在首屏内容中消除渲染阻止JavaScript和CSS 您的页面有6个阻止脚本资源和4个阻止CSS资源。这会导致页面渲染延迟。 如果不等待以下资源加载,则无法呈现页面上的首屏内容。尝试延迟或异步加载阻塞资源,或直接在HTML中内联这些资源的关键部分。

5
hook_form_alter中“ und”的语言键的最佳实践
我正在自定义模块中以某种形式进行修改。代码如下: function my_module_form_alter(&$form, &$form_state, $form_id) { if ($form_id == "someID") { $form['field_charity_author']['und'][0]['value']['#value'] = arg(3); //$form['field_charity_author']['#type'] = 'hidden'; } } 但是,我认为硬编码und是不好的。在这种情况下,正确修改表单字段的正确方法应该是什么?
30 7  entities  hooks  i18n-l10n 

4
大型站点的节省内存的缓存清除策略?
我的Drupal 7站点中有一个拥有数千个字段,一堆内容类型,超过25个视图以及数百个(很快成千上万个)配置文件类型。因此,我正在使用一个更好地缓存实体字段信息的核心补丁(http://drupal.org/node/1040790),以及-dev版本的Views,它可以通过显示更好地缓存视图(而不是一个HUGE)视图缓存中包含所有视图数据的行)。 这已帮助站点上的大多数页面加载了20-30MB的已用RAM,而不是160MB +(不是为10MB +的字段和视图拉出cache_ *表行,这些补丁有助于使cache_ *数据保持更高的效率)。 但是,这带来了一个问题,即缓存重建需要很长时间。通常超过一两分钟。在这段时间内,Drupal根本不会加载任何页面(因为它尚未尝试读取的缓存尚未建立,因此其他请求必须等待)。 在低流量周期中,这没什么大不了的。一百个左右的用户只需等待一分钟,即可加载页面。但是在高流量周期中,Apache服务器开始发疯,CPU负载超过40,并且由于所有工作线程都处于等待状态并最大程度地占用了内存,从而导致交换,内存很快就装满了。这有点像死亡螺旋。重新启动httpd可以清除问题,但是恢复正常需要5到10分钟。 我的目标是做到这一点,以使缓存清除不会使站点瘫痪。首先,如果我使用admin_menu的单个缓存清除功能(例如“ CSS和JS”,然后是“菜单”,然后是“主题注册表”,等等),事情进展顺利,直到我点击了“ Page and else”选项。那是在重置视图的缓存时(一个非常占用CPU和数据库的操作,需要缓存视图的数量),并且在重置字段信息缓存时(在此站点上也是CPU和数据库的消耗)。 所以...我的问题/想法: 使用drush和/或其他shell脚本,是否有可能比“一次清理所有缓存并希望进行干净的重建”更加智能地清除缓存? 我可以在清除缓存时阻止HTTP请求,以使apache不会被一堆带有缓存标记的请求所阻塞吗? 如果我可以清除Drupal /正常httpd请求之外的缓存,则可以为缓存清除操作设置更高的PHP memory_limit,并退出我的通用memory_limit(现在设置为256MB,以防任何单个httpd线程需要清除缓存) ...)。 基本上:除了单击UI中的按钮或使用之外,是否有任何智能,优雅的方式使用Drupal清除所有缓存drush cc all? [ 编辑说明:我的主要问题是缓存重建,这(a)需要一段时间,并且(b)阻止所有其他请求,直到重建完成。我想找到一种方法来使它在高流量时不会那么致命。]
30 7  drush  caching  performance 

2
以编程方式使用Search API
问题:需要使用Search API以编程方式运行我自己的搜索。我发现的每个google结果都适合教给非开发人员如何将模块与Views一起使用,而没有按照我的意愿进行操作的结果。 信息: 使用本地数据库服务代替Solr或任何其他服务。 数据未存储在数据库中,将与其他结果一起显示。 内容将在“类型”选项卡中分组。 由于各种原因而不使用视图。 已启用Facets API,但也不知道如何使用它。 原因:因为我想让搜索页面位于/ site-search,并且在页面参数后没有/ node / keyword。还将要求自定义此功能,使其超出可能提供相同类型功能的其他模块的范围。而且我想学习如何执行此操作,但是还没有找到有关如何完成此操作的任何教程或其他见解。 剩下的:我已经创建了搜索页面,并在其上执行以下搜索: $term = $_SESSION['my-search']['term']; $server = search_api_server_load('database'); $index = search_api_index_load('default_node_index'); $query = new SearchApiQuery($index); $query->keys($term); $query->fields(array('title','body:value')); $srv= new SearchApiDbService($server); $result = $srv->search($query); 在提交搜索表单时设置会话变量,然后将用户重定向到/ site-search以执行搜索并显示结果。 如果我输出$ result,我会看到它是一个包含不同信息的数组,其中包括一个结果集,该结果集是节点ID及其分数的数组。 我可以遍历这些内容,抓取节点并自己显示结果,但我认为必须有其他方法来呈现搜索结果。我还没有找到,那就是问题所在。 我一直在搜索Search API和Facet API中的不同类,但在它们中找不到任何看起来像它们可以建立结果输出的东西。 任何帮助,将不胜感激。 结果示例: Array ( [result count] …
30 7  search 

2
表单的自定义验证?
我需要向表单添加自定义验证,让我们说添加文章表单。 我原本希望hook_FORM_ID_validate()可以处理此类问题,但是在API文档中找不到任何相关内容。 向表单添加自定义验证的方法是什么?
30 7  forms 

2
如何创建test_endpoint?
我是drupal的新手,并且正在使用用于REST和RESTWS模块的服务模块。我使用了RESTWS,并可以通过http://base_url/node/1.xml获取节点的内容, 现在我需要从外部PHP应用程序向drupal添加节点和用户。我在Google上搜索了一下,发现这里需要使用http:// base_drupal_url / drupal7 / test_endpoint / users。我试图从Drupal 7创建服务,但是我不知道在端点标题,名称和端点路径上应该给出什么,我想我需要在curl中提供相同的端点路径。 关于如何检查是否安装了REST Server以及如何创建端点路径的任何帮助将大有帮助。 我正在将Drupal 7与服务模块services-7.x-3.0-rc3一起使用
29 7  services 

5
表单中的动态选择列表(取决于下拉列表)
我正在使用Drupal七。我想使选择列表中的选项取决于表单中另一个选择列表中选择的值。我敢肯定这已经被问过很多次了,但是我很难找到一个明确的答案。 该表格供用户输入工作历史记录。他们需要选择一个中队,该中队是对中队字段类型的节点引用,并且在下拉列表中。但是,中队取决于城市的下拉列表。用户首先需要选择一个城市,然后将其过滤中队的选项。在中队内容类型中,我为城市创建了一个分类法,并将其标记为中队。 我将非常感谢您提供有关实现此目标的最佳方法(最简单的方法)的任何指示,或任何有帮助的在线有用资源。
28 7  ajax  forms 

8
如何使用db_query()仅获得一个结果
我正在从使用mysql_fetch_array()等的“老派” PHP MySQL方法过渡,并且我通过在模块中使用数据库API尝试变得更加Drupally。 我只想返回并打印出一个值。例如: $query = db_query("SELECT zip FROM {zipcodes} WHERE city = :city LIMIT 1", array(":city" => $city)); 我知道其中存在值,我可以使用数据库API之外的传统方法来访问和打印它。 print $query->zip 不管用。 API文档非常清晰。 有人可以告诉我访问这些值的正确方法吗? 有没有人可以推荐的好教程?
28 7  database 

7
为单个模块更新b
是否可以通过Drush执行单个模块的更新功能?我可以看到drush updatedb哪个不使用模块名作为参数,而是运行所有可用的更新。然后这里drush pm-update也检查新文件。该文件说: (与pm-updatecode + Updatedb相同) 这是否意味着如果我运行drush pm-update所有可用的(更新的update_function出口)更新,就会被执行?有没有办法只(db)更新一个模块?
28 7  drush  updating 

5
如何用视图覆盖分类法/术语/%列表?
我有一个附加到内容类型的词汇表。只能选择一个术语对使用此内容类型创建的节点进行分类。该词汇表称为“车辆”,术语为“汽车,卡车,轮船”。内容类型也称为车辆。 我使用自动路径,以便显示[vocabulary:name] / [term:name],因此在渲染时将显示site.com/vehicles/trucks,例如,将显示所有卡车...典型的Drupal素材。好... 现在,我有一个视图,它是带有路径“车辆”的页面。设置为显示内容类型“车辆”的所有项目。此页面视图还设置为接受参数“分类术语ID”。 请注意,如果存在分类法术语,则为分类法路径生成的url别名与提供了参数的“视图”页面完全相同: URL别名分类路径=车辆/卡车。带有参数=车辆/卡车的视图页面。 这是故意的。我的目标是在不存在参数的情况下显示该内容类型的所有结果,并且当存在参数时,最重要的是根据该分类术语过滤结果,并保持与不使用参数时相同的字段和结构(与site.com/vehicles)。 问题是,这无法正常工作。site.com/vehicles正确显示了我的视图和相关过滤器。site.com/vehicles/trucks仅显示Drupal提供的常规,未格式化的分类法列表。 这是因为分类标准术语ID参数配置不正确吗? 这是在Views之后触发分类法挂钩的重要问题吗?如果是这样,如何在这里重新调整权重,使其正确触发并为我提供所需的结果? 我知道您将要提出的建议-视图带有分类/术语/%视图,以覆盖drupal默认视图。 但是,对于我来说,这是行不通的。我有多种内容类型,每种内容类型都有自己的词汇表,每种都有自己的视图和不同的字段集(例如房屋和汽车,具有非常不同的字段集)。如果所有内容类型都具有相同的字段,则分类法/项/%可以使用,那么我可以模仿那些覆盖的内容,但是既然不是这种情况,我如何正确地获取带有参数的路径以显示基于那个词汇并保持我的领域结构? 抱歉,这令人困惑。该站点的链接以供参考http://www.buyagainbaby.com。该站点当前确实使用了分类法/术语/%作为替代,但是同样,它必须进行更改,以便每个视图都负责根据分类法呈现结果集。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.