Drupal

Drupal开发人员和管理员的问答

4
如何在GitHub上维护Drupal项目
我在drupal.org上维护了几个模块。花了数年时间以“惯用的方式”做事(还记得CVS吗?),我想让自己的生活更轻松一点,并使用Gi​​tHub。 尽管可能有政治​​原因,这可能是不受欢迎的,但是否有任何技术原因?我认为单向同步可能像执行cron作业一样简单,它可以从github存储库快速推送到相应的drupal.org存储库。 这就是全部吗?是否有现成的工具可以促进这一过程?

2
主题联系表格
我想在Drupal 8中建立联系表单的主题。我想在表单元素周围放置div(使用bootstrap)。 我还想在某些元素(提交按钮,表单本身)上放置一些类。
11 theming  8  emails 

4
是否有任何性能比较?
这篇文章与一个快速变化的事件有关。 香草Drupal 8与Drupal 7之间是否有可靠的性能比较? 我已经在网上搜索过,但只发现了“ Drupal 7与Drupal 8性能比较 ”一文,这远非令人鼓舞。
11 8  performance 

1
恢复已删除的字段
我有一个具有4个字段的内容类型,每个字段都是一个术语引用。有100个节点,每个节点分配4个术语参考。我无意中从admin> structure> content-types> mycontent-type ...中删除了这些字段之一...导致所有100个节点丢失了该丢失字段所包含的引用术语。 安装数据库管理模块后,我可以看到删除字段的数据库仍然存在,它已重命名为“ field_deleted_field_74” 使用mysql,我已经能够将此数据库重命名为“ field_data_field_originalname”-即对删除的字段使用原始计算机名 此外,我已经能够将该数据库中已删除列的值从“ 1”切换为“ 0”。 我已经用另一个我发现的名为“ field_revision_field_74”的“ ghost”数据库完成了上述操作... 我现在的问题是,我的重命名字段在内容类型管理字段显示中或在admin> reports> fields列表中都没有显示为预先存在的字段。当我运行“草场信息字段”时,它也丢失了。 我该如何找回它?我假设存在另一个需要编辑的数据库。 谢谢!

3
如何从EntityMetadataWrapper对象获取文件URI?
使用一个字段可以很容易地通过字段掌握与节点相关的文件对象EntityMetadataWrapper: $wrapper = entity_metadata_wrapper('node', $node); $images = $wrapper->field_images; 太好了。但是,我想使用标准文件对象的某些属性,但它们不可用。当我查看$images[0]->file使用以上代码时可用的属性时,会看到以下内容: 菲德 名称 哑剧 尺寸 网址 时间戳记 所有者 最值得一提的是,uri缺少该url属性,而在该属性中有一个属性,即图像文件的完整外部URL。我想通过它们的URI(创建缩略图等)来操纵这些图像,所以我就这样做了: $fid = $images[0]->file->fid->value(); $uri = file_load($fid)->uri; 首先,这似乎否定了使用a的全部要点EntityMetadataWrapper。 我想念什么?包装文件对象上的URI在哪里?如果没有它,为了热爱所有美好而纯洁的事物,为什么不呢? 我知道我可以将URL解构回URI,但这感觉非常不必要。
11 7  entities 

5
我应该在hook_menu的描述中使用t()吗?
我一直将t()用于hook_menus标题和描述,如下所示: $items['some-path'] = array( 'title' => t('My Page Title'), 'description' => t('This is a description about what my page is for'), 'page callback' => 'profile_user_page', ); 这对我来说很有意义,因此用户可以根据需要将标题和说明翻译成不同的语言。 然而此评论上DO模块的评论则说: 不,那是错误的,不要那样做-hook_menu()中的描述永远不要使用t()。 这是什么原因,这实际上是最佳做法吗? 同样,如果这是真的,那么我们也应该不使用t()作为标题吗?
11 7  i18n-l10n  routes 

2
如何更改视图中的单个自定义字段值?
我有一个带有字段Global:Custom Text的视图,该字段被修改为链接。我想更改替换令牌以生成此链接,具体取决于其他字段的值。 试图在hook_views_pre_render中修改它,但是我找不到一种方法。 在hook_views_post_render中有两个数组: $view->style_plugin->render_tokens $view->style_plugin->row_tokens 其中包含每行生成的链接,但在pre_render中不存在,并且在post_render中进行更改也不起作用。 我也尝试在template_preprocess_views_view_fields中执行此操作,但是对于该特定视图,此函数不会触发(对于其他视图,则不会触发),我也不知道为什么。
11 7  views 

2
Webform-将值从Drupal 7提交到外部URL
我是在Drupal中创建表单的自称新手。我在Drupal 7网站上托管了一个表单(使用webform模块),并且需要将表单值提交到外部url。我已经研究了一段时间,并编写了一个自定义模块,该模块使用webform模块使用hook_form_alter和自定义提交处理程序/函数(下面粘贴的代码)在外部进行提交。 我一直在使用以下页面作为指南,但无法使该表格正常工作:https : //drupal.org/node/1357136使用drupal_http_post()提交到外部站点:我在做什么错误? 有人可以让我知道我走的路是否正确吗?任何指导都会有所帮助! <?php function webform_extra_form_alter(&$form, &$form_state, $form_id) { //only want form with nid 1171 to submit externally //Note that "webform_client_form_1171" means modify the Webform form for the node with NID "1171". Adjust to match whichever webform node's form you're modifying if($form_id == 'webform_client_form_1171') { $form['#action'] = …
11 7  hooks  webforms  forms 


3
如何在联系人表单中实际设置textarea字段的最大长度
我需要将核心模块联系表的textarea消息限制为一定数量的字符。 这是事实 Form API不允许在textarea字段类型上设置最大长度[纯HTML却可以] 该MAXLENGTH模块,不允许你实际设置的最大长度。它从字段的最大长度中获得最大长度,该长度在每种内容类型的管理字段部分中定义 使用hook_element_info创建新的表单元素类型,仍然不能保证我可以将其添加#maxlength到textarea中。此外,如果我成功了,则需要再次更改联系表单模块,以使我的实际消息textarea字段无效。 所以我可以简单明了地更改它吗? 更改网站中所有textarea字段的最佳方法是什么?
11 forms  emails 


3
自定义拒绝访问页面
我有许多基本页面,需要用户登录才能查看它们。如何自定义拒绝站点访问页面?
11 7 

1
EntityFieldQuery真的效率低下吗?
我是Entity API的认可新手,但正在尝试解决该问题。我正在一个使用多种内容类型并附加了各个字段的网站上工作;没有什么花哨。因此,当我想检索一组条目时,由于无知,我一直直接调用数据库并执行以下操作: $query = db_select('node', 'n')->extend('PagerDefault'); $query->fields('n', array('nid')); $query->condition('n.type', 'my_content_type'); $query->leftJoin('field_data_field_user_role', 'role', 'n.nid = role.entity_id'); $query->condition('role.field_user_role_value', $some_value); $query->leftJoin('field_data_field_withdrawn_time', 'wt', 'n.nid = wt.entity_id'); $query->condition('wt.field_withdrawn_time_value', 0); $query->orderBy('n.created', 'desc'); $query->limit(10); $result = $the_questions->execute()->fetchCol(); (是的,我可能会把这些行折叠成一个$the_questions->语句;请暂时忽略它。) 试图用EntityFieldQuery重写它,我想出了: $query = new EntityFieldQuery(); $query ->entityCondition('entity_type', 'node') ->entityCondition('bundle', 'my_content_type') ->fieldCondition('field_user_role', 'value', $some_value) ->fieldCondition('field_withdrawn_time', 'value', 0) ->propertyOrderBy('created', 'desc') ->pager(10); …
11 7  database  entities 

8
Git现在是安装Drush的唯一方法吗?
试图找出在Linux CentOS系统上安装Drush的正确方法。我已经设置了Git,但是由于我目前不打算为Drush代码做贡献,因此我应该使用Git并不是很明确。 有些说明说要使用PEAR,但是当我转到Drush项目页面时,说明说要从Git获取Drush 6。我找到的教程是演示wget和PEAR,而不是Git。而且,Git项目页面视图上说:“使用我们的Github项目来贡献代码,报告错误或请求功能”,这都不适用。 有经验的Drupalista能否回答以下问题? Git现在是获得Drush的唯一方法吗?一年多前仍有人推荐PEAR时有人问过类似的问题。 如果要使用Git,我已经读过drush不应安装在网站目录中,那么当我调用以下内容时,建议将其安装在哪个目录中? git clone --branch 7.x-5.x http://git.drupal.org/project/drush.git 我期待使用Drush。谢谢!
11 drush 


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.