如何从Drupal 8首页的标题标题中删除"欢迎使用"
在drupal 7中你只需在page.tpl.php中添加这部分代码:
<?php if (!$is_front){
print render($page['content']);
} ?>
Run Code Online (Sandbox Code Playgroud) 模式不是由用户单击的页面上的链接触发的.当用户到达URL时触发模态.
想象一下,一旦用户到达网址就会弹出免责声明.
我完全知道如何在Drupal 7中这样做,所以我将解释我通常使用Drupal 7做什么.
在制作自定义模块时,我经常使用hook_theme,它非常强大且可重复使用!
/**
* Implements hook_theme().
*/
function MODULE_theme() {
$themes = array();
$themes['name_of_theme'] = array(
'path' => drupal_get_path('module', 'module') .'/templates',
'template' => 'NAME_OF_TEPLATE',
'variables' => array(
'param1' => NULL,
'param2' => NULL,
),
);
return $themes;
}
Run Code Online (Sandbox Code Playgroud)
然后我会使用这个主题
theme('name_of_theme', array(
'param1' => 'VALUEA',
'param2' => 'VALUEB'
));
Run Code Online (Sandbox Code Playgroud)
这将返回html,我会很高兴.
所以Drupal 8需要掌握它.
/**
* Implements hook_theme().
*/
function helloworld_theme() {
$theme = [];
$theme['helloworld'] = [
'variables' => [
'param_1' => [],
'param_2' => 'hello',
]
];
return $theme; …Run Code Online (Sandbox Code Playgroud) 我有一个问题,多个AJAX请求修改drupal 8中的表单.
让我解释一下 - 我一直在尝试在drupal中构建一个测验模块,并决定使用一个小部件来创建可变数量的测验问题,在这个问题小部件中是一个可能的答案列表.我在我的问题小部件中创建了一个AJAX按钮,它允许删除答案并在第一次提交时工作,但由于某种原因第二次运行ajax调用时表单被重置(就像没有进行任何更改一样,并没有删除任何答案).在我取消设置答案之后,我已经调试了表单数组,以及第二次运行ajax回调时.
启用ajax的按钮使用默认的ajax replace方法,我尝试了在AJAX回调中返回表单(减去答案)的不同方法,包括简单地取消设置所选表单元素并返回表单,以及使用AjaxResponse和HtmlCommand类.我也尝试过重建表单,通过formbuilder和form_state,没有任何乐趣.此外,每个按钮和答案都有唯一的名称/ ID.
这是我的小部件代码(包括按钮定义):
<?php
/**
* @file
* Contains \Drupal\pp_quiz\Plugin\Field\FieldWidget\QuestionWidget.
*/
namespace Drupal\pp_quiz\Plugin\Field\FieldWidget;
use Drupal\pp_quiz\Controller\QuizController;
use Drupal\pp_quiz\Ajax\AjaxHandler;
use Drupal\Core\Field\WidgetBase;
use Drupal\Core\Field\FieldItemListInterface;
use Drupal\Core\Form\FormStateInterface;
/**
* Plugin implementation of the 'question_widget' widget
*
* @FieldWidget(
* id = "question_widget",
* label = @Translation("Quiz question widget"),
* field_types = {
* "quizquestion_type",
* },
* )
*/
class QuestionWidget extends WidgetBase
{
public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface …Run Code Online (Sandbox Code Playgroud) 我使用以下代码来获取drupal 8中分类术语的父级:
$parent = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadParents($termId);
$parent = reset($parent);
Run Code Online (Sandbox Code Playgroud)
现在我有了父母,如何从中得到父母的提示?
Drupal 8:
我有一个块的代码成功地完成它的工作并返回它.该块称为"RacerProfile",它将其所有内容转储到变量"$ pageContent"中.在最后它返回#markup.好.现在我怎么告诉这个每六个小时失效一次?
/**
* Provides a 'Racer Profile' Block
*
* @Block(
* id = "racer_profile",
* admin_label = @Translation("Slider v1 block")
* )
*/
class RacerProfile extends BlockBase {
/**
* {@inheritdoc}
*/
public function build()
{
// does all the work to make $pageContent via non-drupal
// database queries. However, for this example, let's just
// just imagine it gets the time of day. Then, let's set
// let's set the cache age to 5 seconds …Run Code Online (Sandbox Code Playgroud) 我想为Drupal 8安装启用PHP OPcode缓存.我在Xampp php.ini中有以下内容.但是,我仍然没有启用操作码.我究竟做错了什么??
opcache.enable=1
engine = On
zend_extension=php_opcache.dll
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
Run Code Online (Sandbox Code Playgroud) 我正在使用实体浏览器上传图像和响应式图像样式来显示它们.
我发现创建节点并添加图像后,新用户第一次访问该页面时,图像将不会显示.然后刷新页面将显示图像.
我已尝试使用和不使用itok变量,结果相同.
我尝试使用响应式图像样式和普通图像样式,并使用相同的结果.
首次在后端上传图像时,缩略图不会显示.
图像正确上传,并在文件夹中.
在第一页加载时,正在创建图像样式,我可以在样式文件夹中看到它,它在Windows中打开很好,但如果我查看图像样式URL(.../styles/stylename/public/folder/image .jpg)有一条消息说'图像无法显示,因为它包含错误'.如果我对此做了很多努力,图像会显示出来,然后返回并刷新页面,图像就在那里.
它似乎是浏览器第一次尝试从缓存加载图像并且它不存在,因此URL被破坏.
如果有其他人遇到过这个问题,我很乐意听到.尝试过我能想到的一切.
我注意到 Paragraph 实体没有从数据库中删除。他们宁愿取消与父节点的链接。
如果您创建一个视图,该视图列出段落并附加上下文过滤器,该过滤器按Parent ID.
现在,我找到了一种解决方法,可以创建一个列出内容的视图。将关系附加到段落。这样可以确保只显示链接的段落。
仍然存在数据库中有数百个孤立段落和字段数据的问题。有没有办法清理它们?
编辑: 这显然是一个主要错误,可以在段落模块的问题跟踪器中找到:已删除的段落实体不会从数据库中删除
我已经设置了一个 Drupal 8 的新实例并安装了两个模块:
我还安装了 Barrio 主题(Barrio 5.5.1。)
然后我继续创建了一个包含两个字段的新内容类型(都是段落修订)。当尝试通过导航到“内容”->“添加”来添加新页面时,一切正常,直到我继续对表单显示进行任何修改或 内容类型的显示设置。一旦进行了修改,无论进行了哪些修改,我都会在添加所述内容类型的页面时收到错误 500。
相关日志条目:
var/www/vhosts/some-website.com/httpdocs/core/lib/Drupal/Core/Field/WidgetBase.php on line 510', referer: https://some-website.com/node/add/
[Thu Jun 24 16:33:28.779959 2021] [proxy_fcgi:error] [pid 10213:tid 140020013704960] [client 91.249.132.211:43799] AH01071: Got error 'PHP message: PHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 135168 bytes) in /var/www/vhosts/some-website.com/httpdocs/core/lib/Drupal/Core/Field/WidgetBase.php on line 510'
[Thu Jun 24 16:36:33.558731 2021] [proxy_fcgi:error] [pid 10213:tid 140019649947392] [client 91.249.132.211:62936] AH01071: Got error 'PHP message: PHP Fatal error: Allowed memory size …Run Code Online (Sandbox Code Playgroud)