Questions tagged «8»

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





4
如何获取当前的节点ID?
在Drupal 7中,如果我想获取当前显示的节点的节点ID(例如node/145),则可以使用arg()函数获取它。在这种情况下,arg(1)将返回145。 如何在Drupal 8中实现相同的目标?
51 nodes  8 

6
如何在其他站点上导入配置?
当我尝试导入另一个站点的配置时出现此错误: 无法导入暂存的配置,因为它源自与该站点不同的站点。您只能在此站点的克隆实例之间同步配置。 我有10个客户,我需要将我的站点配置与10个不同的网站同步。 网站UUID是与其他网站共享配置的问题。有解决方案吗?

15
从节点上的field_image获取图像URL
所以我有这个节点: object(Drupal\node\Entity\Node)[1862] protected 'values' => array (size=17) 'vid' => array (size=1) 'x-default' => string '7' (length=1) 'langcode' => array (size=1) 'x-default' => array (size=1) 0 => array (size=1) 'value' => string 'en' (length=2) ... (more fields) 'field_image' => array (size=1) 'x-default' => array (size=1) 0 => array (size=5) 'target_id' => …
42 media  8  theming 

13
如何从活动配置中删除配置对象?
我正在为Drupal 8编写一个自定义模块。它在名为modules / mymod / config / install / field.storage.bloom_stem.bs_twitter_ac.yml的文件中定义了一个字段存储配置对象。 问题是,在卸载模块时不会将其删除。它显然被遗弃了,因为当我重新安装模块时,我崩溃了。 drush -y pm-uninstall mymod drush cr drush -y en mymod 异常'Drupal \ Core \ Config \ PreExistingConfigException'和消息'mymod提供的配置对象(field.storage.bloom_stem.bs_twitter_ac)已存在于活动配置中' 因此,似乎我需要一些手动删除此配置对象的方法。在卸载模块时,我是否还需要提供一些删除它的代码?

4
从开发->阶段->生产迁移(CMI)配置的建议工作流程是什么?
几个月前,我们有一个drupalcamp,有人问如何使用新的配置(CMI)系统管理部署。一种可能的理想工作流程是将配置保留在版本控制中,并且仍然能够在团队成员之间迁移配置。 我们在会议室中能够发现的最好结果(部分基于DrupalCon Portland的演讲)是: 告诉版本控制忽略活动的配置目录。 将所有配置复制到暂存目录并提交到版本控制。 并使用settings.php在两个环境之间反转活动目录目录。但是,尽管弄清楚从一台服务器到另一台服务器的部署工作流程虽然复杂但可行,但从多个本地环境(即多个开发人员)到开发人员(或彼此之间)的建议工作流程是什么?可能的问题是每个团队成员会共享相同或相似的环境,那么如何改变一个队友的机器?

10
手动禁用模块
在Drupal 7中,我可以手动编辑{system}数据库中的表以禁用Stubbon模块。在我的Drupal 8网站上,这张桌子不见了。 如何在Drupal 8中手动禁用模块?
39 8 

4
如何获取被引用实体的实例?
我有一个节点对象,其图像字段名为field_image。当我做 $node ->get('field_image') ->first() ->getValue() 我得到一些属性而不是实体对象的数组。该数组如下所示: 'target_id' => string '8' (length=1) 'alt' => string '' (length=0) 'title' => string '' (length=0) 'width' => string '587' (length=3) 'height' => string '458' (length=3) '_loaded' => boolean true '_accessCacheability' => object(Drupal\Core\Cache\CacheableMetadata)[1092] protected 'cacheContexts' => array (size=0) ... protected 'cacheTags' => array (size=0) ... …
35 8  entities 

9
如何启用开发人员/调试模式?
安装drupal 8核心(使用标准配置文件)。每当我遇到异常/错误时,都会出现空白页,显示“网站遇到错误。请稍后重试。” (如下图所示)文本,没有关于错误的详细信息/跟踪。
35 8  debugging 

7
以编程方式创建节点
如何以编程方式创建带有日期和图像字段的节点? 我知道我可以在Drupal 7中使用以下代码来做到这一点。 global $user; $node = new stdClass(); $node->title = "YOUR TITLE"; $node->type = "YOUR_NODE_TYPE"; node_object_prepare($node); // Sets some defaults. Invokes hook_prepare() and hook_node_prepare(). $node->language = LANGUAGE_NONE; // Or e.g. 'en' if locale is enabled $node->uid = $user->uid; $node->status = 1; //(1 or 0): published or not $node->promote = …
34 8  nodes 

4
如何获取网站的基本URL
我的网站位于http://drupal8.local/。如何获得该URL 的drupal8.local部分? Url::fromRoute('<'current'>')或base_path()返回URL的路径parth;例如,对于http://drupal8.local/a/b/c/d/e/f,/a/b/c/d/e/f'当我只需要获取时,它们将返回' 'drupal8.local'。 如何获得URL的那一部分?
34 8  uri 

6
如何更新模块的配置?
我正在Drupal 8中构建一个自定义模块。它包含一些YAML配置文件。 在开发过程中,我需要更改并添加到配置中,例如,将另一个字段添加到我的自定义实体中。 目前,我发现让Drupal注意到更改的唯一方法是卸载模块并重新安装。 有没有办法让Drupal检查模块提供的配置文件是否与活动配置相同,如果不相同,则更新活动配置?如何处理模块更新?在D7 hook_update_N中将使用PHP添加字段,但是看起来这应该由D8中的CM处理吗? 更新模块中的yml文件后我尝试过的事情: drush cr,配置同步。 手动将所有更新的配置文件复制到sites/default/files/config_XXX/staging/-但这会出现此错误“无法导入暂存的配置,因为它源自与该站点不同的站点。您只能在此站点的克隆实例之间同步配置。” 。 使用配置管理器手动导入文件。这可行,但是显然必须有一种更自动的方法。 [EDIT]手动使用config_update模块检查更改并“还原”到模块的配置。同样,这是手动的。 编辑:从管理配置-做和不做 不要 尝试通过更改模块的config / install目录中的文件来更改站点上的活动配置。这将不起作用,因为Drupal仅在安装模块时从该目录读取。 ...但是将会发生变化,除非模块绑定到他们在第一个发行版本中所需的任何配置,并且可能永远不会更新或添加配置。 提前致谢。

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.