【问题标题】:Adding custom CSS to Drupal 7 to hide the message将自定义 CSS 添加到 Drupal 7 以隐藏消息
【发布时间】:2011-03-09 12:49:50
【问题描述】:

我使用我的自定义块在my Drupal 7 installation的首页显示一个Flash游戏,但也有烦人的消息:

<div id="first-time"><p>No front page content has been created yet.</p>
<div class="item-list"><ul><li class="first last">
<a href="/node/add">Add new content</a></li> 
</ul></div></div>

在它下面,我无法删除它。请问有添加自定义CSS的钩子吗?在我的模块中,我想让 #first-time 为浅灰色或不可见。

我不希望仅仅为了摆脱该文本而添加空白内容。

谢谢! 亚历克斯

更新:

我已将以下内容添加到我的模块中:

function game_init() {
  drupal_set_message('XXX init called XXX');
  if (drupal_is_front_page()) {
    drupal_add_css('#first-time {color: green;}', 'inline');
  }
}

但在我的首页中看不到那个 CSS 代码或 XXX 字符串。

UPDATE2

哦,我必须清除缓存,现在它可以工作了(这里的 Drupal 文档似乎是错误的 - 上面写着“内联” CSS 没有被缓存...)

【问题讨论】:

    标签: css drupal drupal-7


    【解决方案1】:

    隐藏 CSS 是错误的做法。为什么您将内容创建为自定义块

    • 您应该创建一个“Page”并在配置->站点信息中将此页面设置为首页

    随便。您也可以使用这些选项中的任何一个,但不推荐

    • 您还可以通过仅添加标题来添加 BlankPage(然后将其隐藏在 page.tpl.php 上的 PHP 中)
    • 您可以在 /templates/themes/bartik.info 中添加您的 css
    • 您可以在自定义模块的 _init() 挂钩上调用 drupal_add_css。

    块用于在每个页面中显示信息(尽管我们可以设置为仅在某些页面上显示)。比如说。菜单或购物车等。

    【讨论】:

    • 好的,这很好。我应该覆盖什么钩子来创建一个嵌入我的 Flash 游戏的页面(一个节点?)?如果可能,请为 Hello-World 页面编写几行代码
    • @Alexander Farber:你为什么需要写一个钩子来嵌入你的Flash游戏?如果您将正文中的“文本格式”设置为“完整 html”。您可以在页面中嵌入任何 html 标签(所谓的节点)。
    • 不,我需要钩子,因为我通过 FlashVars 参数将用户 ID、头像、性别和城市传递给我的游戏的 .swf 文件。所以我写了一个 game_block_view() 来做到这一点。但是这里的节点可能更好?
    • @Alexander Farber:如果您是程序员类型的人,您可以在自定义模块“游戏”的 game_init() 函数中添加 drupal_add_css()。如果您是管理员,您可以启用“PHP 过滤器”模块,该模块将为内容带来新的“文本格式”。
    【解决方案2】:

    如果你想为模块添加一些 CSS,你应该使用drupal_add_css()

    【讨论】:

    • 所以我必须调用 drupal_add_css('#first-time { color: white; }', 'inline');但从哪里来?从我的 game_block_view(); ?
    • 添加 CSS 的一个好方法是在你的模块中实现 hook_init() 并将 drupal_add_inside() 放入其中。
    • 由于某种原因,我的 game_init() 没有被调用,但是 game_block_view()、game_block_info() 和 game_user_login() 被调用了。我需要清除缓存还是其他什么?
    【解决方案3】:

    为什么不简单地将这个 CSS 添加到您的主题中?

    【讨论】:

    • 谢谢,但是在哪里?在 Bartik 主题的管理菜单中找不到它
    • @AlexanderFarber 您必须直接在主题中编辑 css 文件 - 无论您将主题放在哪里(即在 /themes/ 目录或 /sites/all/ 中),您都可以找到它们主题/)
    猜你喜欢
    • 1970-01-01
    • 2018-06-21
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多