Drupal

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


1
field_data和field_revision表之间的区别?
我有很多自定义功能;我只想确保自己做对了。 如果我想要节点的最新版本(实时版本),请转到field_data_field_xyz表格,对不对? 我的理解是field_revision_field_xyz保留所有旧版本,对吗?
11 7  database 

3
如何转换Wordpress主题?
我用谷歌搜索,但没有找到任何自动化解决方案。因此,我已手动启动它。映射CSS文件很容易,但是我正在寻找一种映射块/模板的方法。请帮忙。
11 theming 

2
我什么时候应该创建服务或实用程序功能?
在过去的整个星期中,我一直在想这个问题:什么时候应该创建服务或实用程序功能? 在Drupal Core中,我们同时具有服务功能和实用程序功能,但是我找不到它们之间的区别(当我需要创建服务或需要创建实用程序功能时)。 我将以其中具有InternalFunctions类的Modules Weight模块为例。 <?php namespace Drupal\modules_weight\Utility; class InternalFunctions { public static function prepareDelta($weight) { $delta = 100; $weight = (int) $weight; if ($weight > $delta) { return $weight; } if ($weight < -100) { return $weight * -1; } return $delta; } public static function modulesList($force = FALSE) …

1
Drupal file_copy不起作用
我有以下代码: $main_image = glob('main*.{jpeg,gif,png,jpg,JPEG,JPG,PNG}', GLOB_BRACE); if (count($main_image) != 1) die("Could not find main picture !"); $file_path = drupal_realpath($main_image[0]); $file = (object) array( 'uid' => $userID, 'uri' => $file_path, 'filemime' => file_get_mimetype($file_path), 'display' => 1, 'filename' => $main_image[0] ); // copy the file in the correct folder $destination = "public://galerii_imagini/" . …
11 media 

1
Drush dl无法与PHP 7和Ubuntu 16.04一起使用
当我尝试做时: drush dl drupal-8 我收到以下错误: PHP Fatal error: Uncaught Error: Call to undefined function Drush\UpdateService\simplexml_load_file() in /home/alexander/.config/composer/vendor/drush/drush/lib/Drush/UpdateService/Project.php:74 Stack trace: #0 /home/alexander/.config/composer/vendor/drush/drush/lib/Drush/UpdateService/ReleaseInfo.php(64): Drush\UpdateService\Project::getInstance(Array, 86400) #1 /home/alexander/.config/composer/vendor/drush/drush/lib/Drush/UpdateService/ReleaseInfo.php(122): Drush\UpdateService\ReleaseInfo->get(Array) #2 /home/alexander/.config/composer/vendor/drush/drush/commands/pm/download.pm.inc(111): Drush\UpdateService\ReleaseInfo->selectReleaseBasedOnStrategy(Array, '', 'auto', false, NULL) #3 /home/alexander/.config/composer/vendor/drush/drush/includes/command.inc(366): drush_pm_download() #4 /home/alexander/.config/composer/vendor/drush/drush/includes/command.inc(217): _drush_invoke_hooks(Array, Array) #5 /home/alexander/.config/composer/vendor/drush/drush/includes/command.inc(185): drush_command() #6 /home/alexander/.config/compos in /home/alexander/.config/composer/vendor/drush/drush/lib/Drush/UpdateService/Project.php on line 74 …
11 8  drush 

4
如何在用户个人资料页面中添加自定义标签?
我需要在用户个人资料页面中添加自定义标签。我定义了如下路线: mymodule.routing.yml mymodule.account: path: '/user/{user}/custom' defaults: _form: '\Drupal\mymodule\Form\MyModuleUserSettingsForm' _title: 'Custom Settings' user: \d+ requirements: _permission: 'access content' mymodule.links.task.yml mymodule.account: title: Mymodule Settings route_name: mymodule.account base_route: entity.user.canonical mymodule.links.menu.yml mymodule.account: title: My module Settings parent: entity.user.canonical route_name: mymodule.account 然后在清除高速缓存选项卡后出现在配置文件页面中。但是,当我打开URL / user / 1 / custom时,看到未找到页面消息。
11 users  8  routes 

4
如何使用日期选择器在视图中配置公开的筛选器?
如何配置公开的筛选器,以便用户可以按创建日期(最好使用日期选择器)筛选我的网站内容? 我尝试使用“ 内容:作为过滤器创作”,但它为我提供了一个文本字段,用于输入日期,以yyyy-mm-dd hh:mm:ss格式输入日期/时间,这使用户更难以输入日期并且更容易出错。 使用Views 7.x-3的Drupal 8和Drupal 7有什么区别?
11 8  views  datetime 

6
如何将字段添加到菜单项
我需要建立一个主菜单,它是常规菜单的子集。设计团队认为,最好让用户仅在主菜单中拥有最重要的链接,而不要拥有所有内容。有些链接是顶层菜单,有些是子菜单。为此,我希望能够将一个字段作为下拉列表添加到菜单链接项表单中。创建链接时,用户可以使用此下拉菜单选择“ promoteToMainMenuAsBigLink”或“ promoteToMainMenuAsSmallLink”,也可以不使用任何下拉菜单而不在主菜单上显示该项目。 我正在寻找与此Drupal 7解决方案类似的解决方案,但针对Drupal 8。 我希望能够在表menu_link_content_data中的“扩展”旁边添加一列。我希望不必将此信息记录在d7解决方案中所示的其他表中。 我能够在构建的自定义模块中向链接表单添加字段,仅出于测试目的,我仅添加了以以下内容开头的文本字段: custom_menu.module: function custom_menu_form_alter(&$form, FormStateInterface $form_state, $form_id) { if($form_id == 'menu_link_content_menu_link_content_form') { $form['promoteToMainMenu'] = array( '#type' => 'textfield', '#title' => t('Promote to main menu'), '#description' => t('Promote link menu to main menu.'), '#default_value' => '', '#weight' => -9 ); } } 该字段确实以链接形式显示,但从未记录。 有人可以帮我弄这个吗?
11 8  navigation 

3
如何将上传的文件永久保存在file_manged表中?
如何在Drupal 8中将状态为1的上载文件保存在file_managed表中? 每当我上传文件时,该文件就会以状态值0存储在file_managed表中。 我曾经File::load( $form_state->getValue('image'))加载过该文件。接下来我需要做什么? 在Drupal 7中,我将使用$file->status = FILE_STATUS_PERMANENT。Drupal 8的等效代码是什么? class AddBannerForm extends FormBase { public function getFormId() { return 'add_banner_form'; } public function buildForm(array $form, FormStateInterface $form_state) { $form['image'] = array( '#type' => 'managed_file', '#title' => t('Choose Image File'), '#upload_location' => 'public://images/', '#default_value' => '', '#description' => t('Specify an …
11 8 

1
字段集合与段落
我在以前的站点中使用过Field Collection,但是遇到了一些性能问题,所以这次我正在寻找Field Collection的替代产品。我找到了答案的替代场馆藏。 但是我对这些解决方案有何不同(特别是[ 字段集合和段落 ])有什么不同。 也许有人可以帮助解释?这样我才能做出一个好的决定。

2
导出内容类型的字段
Drupal 8的配置导出功能似乎是一个非常有用的功能。但是,我不确定我是否完全理解它是如何工作的。 例如,如果我执行单个导出,请选择“内容类型”,然后选择我的一种内容类型,我希望该导出包含该内容类型的完整描述。但是它不包含有关该内容类型中字段的任何信息。因此,如果您要导出内容类型配置以在另一个站点上使用,则似乎无法做到这一点。 我不确定如果不包含实体所需要的全部数据,那么我会被being用作单一出口。我想念什么吗?

1
{{| t}}和{%trans%}有什么区别?
我注意到Drupal 8支持{% trans %},根据Symfony文档(i18n Extension),它为Twig添加了gettext支持。 {{ |t }}据我所知,是将可翻译字符串添加到Drupal模板的传统方法。根据文档,t()将字符串转换为当前语言或给定语言。 两者都支持多语言网站。 这些扩展之间有什么区别? 我什么时候应该使用另一种?
11 theming  8  i18n-l10n 


3
无需缓存即可获取REST GET
使用本教程 Drupal Console的drupal gprr命令,我已经在Drupal 8中创建了一个自定义REST资源。我能够使用此资源来检索一个简单的JSON对象,该对象通过执行GET来向当前用户问好: http://localhost/example/hello?_format=json 返回的JSON如下所示: { "hello": "tyler" } 正如我所登录的,这是可以预期的。但是,当我注销并在资源上执行另一个GET时,将返回相同的结果: { "hello": "tyler" } 进行完整的Drupal缓存清除可以解决此问题,但是我想专门禁用此资源上的缓存。我怎样才能做到这一点? 作为一种解决方法,我认为向查询字符串添加时间戳会起作用: http://localhost/example/hello?_format=json&time=123456789 但这也将返回完全相同的结果,而不管查询字符串中的时间戳值是多少。 为简便起见,以下是用于构建GET资源的框架代码: class ExampleHello extends ResourceBase { /** * {@inheritdoc} */ public static function create(/* ... */) { return new static(/* ... */); } /** * Constructs a Drupal\rest\Plugin\ResourceBase object. */ …
11 8 

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.