尝试将社交媒体链接添加到 Drupal 网站
Posted
技术标签:
【中文标题】尝试将社交媒体链接添加到 Drupal 网站【英文标题】:Trying to add social media links to Drupal website 【发布时间】:2019-09-02 21:15:05 【问题描述】:我正在尝试将社交媒体图标添加到我的 drupal 网站并关注 this guide 尝试安装它们。该模块似乎安装得很好,但是当我尝试将其配置为在单击保存时添加不同的链接时,它会将我带到一个简单地说 The website encountered an unexpected error. Please try again later.
我已经尝试卸载/重新安装插件,但似乎没有任何作用。我的设置中是否缺少某些权限?我对 drupal 几乎是全新的
编辑:错误的网址是admin/structure/block/manage/socialmedialinks?destination=/node
以及一些错误日志:
TypeError: Argument 2 passed to Egulias\EmailValidator\EmailValidator::isValid() must implement interface Egulias\EmailValidator\Validation\EmailValidation, bool given,
【问题讨论】:
显示错误的页面的 URL 是什么?启用更好的错误报告以更好地了解错误可能是什么,查看THIS 了解它是如何完成的 @2pha 我没有意识到有一个完整的 Drupal 堆栈交换,很好。经过一些更多的实验后,它看起来只是指定电子邮件地址的问题(instagram 被添加得很好。)我在我的帖子中添加了一些错误消息信息。 模块(带有补丁)的问题似乎与您的问题HERE 有关。嗯,也许这应该是一个答案。 【参考方案1】:social_media_links drupal 模块版本 8.x-2.6 在检查电子邮件地址的有效性时似乎存在错误。 模块的问题队列中有一个问题HERE。 该问题附有一个补丁(附在下面):
diff --git a/src/Plugin/SocialMediaLinks/Platform/Email.php b/src/Plugin/SocialMediaLinks/Platform/Email.php
index 007e59f..2926d47 100755
--- a/src/Plugin/SocialMediaLinks/Platform/Email.php
+++ b/src/Plugin/SocialMediaLinks/Platform/Email.php
@@ -4,7 +4,6 @@ namespace Drupal\social_media_links\Plugin\SocialMediaLinks\Platform;
use Drupal\social_media_links\PlatformBase;
use Drupal\Core\Form\FormStateInterface;
-use Egulias\EmailValidator\EmailValidator;
use Drupal\Core\Url;
/**
@@ -29,9 +28,9 @@ class Email extends PlatformBase
*/
public static function validateValue(array &$element, FormStateInterface $form_state, array $form)
if (!empty($element['#value']))
- $validator = new EmailValidator();
+ $validator = \Drupal::service('email.validator');
- if (!$validator->isValid($element['#value'], TRUE))
+ if (!$validator->isValid($element['#value']))
$form_state->setError($element, t('The entered email address is not valid.'));
【讨论】:
这绝对是我遇到的问题,谢谢。更新代码,我需要什么插件才能接收更改,或者只是尝试再次添加电子邮件地址?以上是关于尝试将社交媒体链接添加到 Drupal 网站的主要内容,如果未能解决你的问题,请参考以下文章