Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么不';这些主题函数是否可以与Drupal D6一起使用?_Drupal_Drupal Theming - Fatal编程技术网

为什么不';这些主题函数是否可以与Drupal D6一起使用?

为什么不';这些主题函数是否可以与Drupal D6一起使用?,drupal,drupal-theming,Drupal,Drupal Theming,我现在对Drupal6束手无策,我希望第二双眼睛能够指出我今天早上错过的一些语法子规则 假设我有一个主题名为myu-theme 这是一个主题,从银杏的子主题,一个主题,反过来又从银杏的子主题 “魔方”是道的子主题,是一个相当常见的CSS重置主题 我试图理解如何声明我自己的主题函数,这样我就可以 清理我为网站工作的费用页面上的标记 现在我对主题的理解是“如果注册a” 具有hook_主题的主题化函数,将其传递到一个数组中 函数的名称,以后可以使用 主题\功能\来自主题中的名称 例如,如果有一个名为m

我现在对Drupal6束手无策,我希望第二双眼睛能够指出我今天早上错过的一些语法子规则

假设我有一个主题名为
myu-theme

这是一个主题,从银杏的子主题,一个主题,反过来又从银杏的子主题 “魔方”是道的子主题,是一个相当常见的CSS重置主题

我试图理解如何声明我自己的主题函数,这样我就可以 清理我为网站工作的费用页面上的标记

现在我对主题的理解是“如果注册a” 具有hook_主题的主题化函数,将其传递到一个数组中 函数的名称,以后可以使用 主题\功能\来自主题中的名称

例如,如果有一个名为
my
的模块,我会导入hook\u主题 如下所示,定义函数的名称,并定义 应将参数传递给它:

<?php

  function my_theme() {

    $items = array();
    $items['randomtext']   = array('arguments' => array('element' => NULL));
    $items['button_links'] = array('arguments' => array( '$links' => NULL, '$attributes' => NULL));

    return $items;
  };
还是不走运

为什么这些主题功能不起作用?还有什么好处呢 这会让你在主题中简单地声明这样的函数吗

  function manual_random_text($element) {
        $output = ' <h1>This is gives me everything I aleady need, 
                    'without relying on the weird themeing sytem. It's perfect for' . $element . '</h1>';
        return $output;

  }
功能手册\u随机\u文本($element){
$output='这是我需要的一切,
“不依赖奇怪的主题系统。它非常适合于“$element”。”;
返回$output;
}

啊,与问题保持一段距离后,我看到了问题所在

为了实现这一点,我需要添加我在其中声明函数的主题的前缀,以使其可供我使用

因此,如果我的模块名为
my
,则所需的主题函数名为:

function my_random_text($element) {
        $output = ' <h1>, 
                    'This is finally outputting content. Now I can: ' . $element . '</h1>';
        return $output;
}
函数我的随机文本($element){
$output=',
'这终于可以输出内容了。现在我可以:'.$element';
返回$output;
}
问题是,如果我要创建一个对一个主题函数的覆盖,而这个主题函数并不存在,比如
random\u text
,那么它就没有可以覆盖的函数了。 “主题覆盖”一词表明存在一个默认的主题化函数来覆盖-在许多主题中,我们不是对函数进行显式覆盖,而是创建在特定情况下使用的替代方案

我现在假设,如果我想将函数定义为
theme\u function\u name
,而不是
themename\u theme\u function\u name
,我需要在模块中定义它

这是发现这些信息的一个有用的线索

  <h1>This is some very random text with this text concatenated: some arbitrary words</h1>
  theme('my_randomtext', 'getting desparate');
  theme('randomtext', 'really losing my rag now');
  function manual_random_text($element) {
        $output = ' <h1>This is gives me everything I aleady need, 
                    'without relying on the weird themeing sytem. It's perfect for' . $element . '</h1>';
        return $output;

  }
function my_random_text($element) {
        $output = ' <h1>, 
                    'This is finally outputting content. Now I can: ' . $element . '</h1>';
        return $output;
}