Drupal 7 将短代码添加到所见即所得

问题描述 投票:0回答:2

我需要能够将当前年份添加到所见即所得的网站上的某个位置。 类似于“现在是[YEAR]年”。 我可以为它创建模块,但它很复杂。有更好的主意吗? 我已经安装了 ckEditor。

drupal drupal-7
2个回答
1
投票

您可以使用 https://www.drupal.org/project/shortcode,并扩展它以创建您自己的自定义短代码并在 ckeditor 中使用它。

自定义短代码创建参考链接: http://briannadeleasa.com/blog/drupal-php/shortcodes-drupal-yes-you-can

例如,查看这 3 个函数来创建我们的按钮简码:

/**
 * Define our process callback function for our [button] shortcode. This
 * takes in our shortcode attributes from the shortcode and if empty, sets the property
 * to the default value stated in this function.  We then pass in our attributes to the
 * theme() function which outputs the HTML.
 *
 * $attrs = shortcode_attrs(array(
 *     'attribute' => 'default_value_goes_here'
 * ),
 */
function custom_shortcodes_shortcode_button($attrs, $text) {
    $attrs = shortcode_attrs(array(
        'link' => 'http://mywebsite.com'
      ),
      $attrs
    );

    return theme('shortcode_button', array('link' => $attrs['link'], 'text' => $text));
}

/**
 * This function uses the attributes passed in to return the HTML of this shortcode.
 */
function theme_shortcode_button($vars) {
  return '<div class="button"><a href="' . $vars['link'] . '">' . $vars['text'] . '</a></div>';
}

/**
 * This function outputs some tips to the user beneath the WYSIWYG editor so they know
 * what the shortcode does and how to use it.
 */
function custom_shortcodes_shortcode_button_tip($format, $long) {
  $output = array();
  $output[] = '<p><strong>' . t('[button link="http://URLhere.com"]text[/button]') . '</strong> ';
  if ($long) {
    $output[] = t('Outputs text that is displayed as a button, which links to a specified URL.') . '</p>';
  }
  else {
    $output[] = t('Outputs text that links to a URL.') . '</p>';
  }

  return implode(' ', $output);
}

0
投票

您可以使用 token_insert 来做到这一点。

安装此模块时,您可以通过以下方式插入年份:日期:[Y]

© www.soinside.com 2019 - 2024. All rights reserved.