Compose tips

Text Formats

Filtered HTML

  • [style:class_name]Content[/style] - Insert a div with a defined class name.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Using custom PHP code

    Custom PHP code may be embedded in some types of site content, including posts and blocks. While embedding PHP code inside a post or block is a powerful and flexible feature when used by a trusted user with PHP experience, it is a significant and dangerous security risk when used improperly. Even a small mistake when posting PHP code may accidentally compromise your site.

    If you are unfamiliar with PHP, SQL, or Drupal, avoid using custom PHP code within posts. Experimenting with PHP may corrupt your database, render your site inoperable, or significantly compromise security.

    Notes:

    • Remember to double-check each line for syntax and logic errors before saving.
    • Statements must be correctly terminated with semicolons.
    • Global variables used within your PHP code retain their values after your script executes.
    • register_globals is turned off. If you need to use forms, understand and use the functions in the Drupal Form API.
    • Use a print or return statement in your code to output content.
    • Develop and test your PHP code using a separate test script and sample database before deploying on a production site.
    • Consider including your custom PHP code within a site-specific module or template.php file rather than embedding it directly into a post or block.
    • Be aware that the ability to embed PHP code within content is provided by the PHP Filter module. If this module is disabled or deleted, then blocks and posts with embedded PHP may display, rather than execute, the PHP code.

    A basic example: Creating a "Welcome" block that greets visitors with a simple message.

    • Add a custom block to your site, named "Welcome" . With its text format set to "PHP code" (or another format supporting PHP input), add the following in the Block body:

      print t('Welcome visitor! Thank you for visiting.');
      
    • To display the name of a registered user, use this instead:

      global $user;
      if ($user->uid) {
        print t('Welcome @name! Thank you for visiting.', array('@name' => format_username($user)));
      }
      else {
        print t('Welcome visitor! Thank you for visiting.');
      }
      

    Drupal.org offers some example PHP snippets, or you can create your own with some PHP experience and knowledge of the Drupal system.

  • ShortCodes usage

    1. [quote (class="additional class" | author="author name")]text[/quote] Formats the text like as a quote.

      Sample css:

      .quote { display:block; float:left; width:30%; margin:20px; margin-left:0; padding:5px 0 5px 20px; font-style:italic; border-left:3px solid #E8E8E8; line-heigh:1.5em; font-size:14px; letter-spacing: 1px; word-spacing: 2px; } .quote.right{ float:right; margin-right:0; margin-left:20px; }

       

    2. [img src="image.jpg" (class="additional class"|alt="alt text")/] Inserts an image based on the given image url.

    3. [highlight (class="additional class")]text[/highlight] Inserts span.highlight around the text.

      Sample css:

      span.highlight{ background-color:red; } span.highlight2{ background-color:cyan; }

       

    4. [button path="path" (class="additional class")]text[/button] Inserts a link formatted as a button. Use the url parameter for the link.

    5. [dropcap (class="additional class")]text[/dropcap] Makes dropcap from the text.

      Sample css:

      .dropcap { display:block; float:left; font-size:38px; line-height:38px; vertical-align:baseline; padding-right:5px; }

       

    6. [item (class="additional class"|id=item id|type=div,d,span,s)]text[/item] Inserts an html item (type parameter = div or span) around the given text.

      Additional class names can be added by the class parameter. The id parameter gives the html an unique css id.

       

    7. [clear (class="additional class"|id=item id|type=div,d,span,s)]text[/clear] Inserts a float-clearing html item (type parameter = div or span) around the given text. Use the simple [clear /].

      Additional class names can be added by the class parameter. The id parameter gives the html an unique css id.

       

    8. [link path="the Drupal path"]link text[/link] Inserts aliased Drupal path around the link text.

      If you omit the text and the closing [/link] tag, you get back the URL only.

      Additional parameters for the link:
      • title for link title. Default value is the link text. Use <none> to disable.
      • class for CSS classes.
      • style for additional CSS rules.
      • id for unique HTML id. (No need to use # sign.)
      Parameters for the URL:
      • html If true, enables HTML in the text. Default is false.
      • absolute Provides absolute URL if true. Default is false.
      • fragment The fragment of the URL.
      • alias If false, it disables aliased URL. Default is true.
      Samples:
      • Simple link with title: [link path="node/5" title="My little title"]link text[/link]
      • Link with class, style, no title: [link path="node/5" title="<none>" class="button my-button" style="text-transform: uppercase;" id="my-button"]button text[/link]
      • Absolute path with fragment: [link path="node/6" absolute="true" fragment="jump-to-content" /]

       

    9. [random (length="8") /] Inserts a random text with the given length.

       

    10. [embed_content nid=nodeid (class="additional class")][/embed_content] Embed a node by nid into the text. Additional class names can be added by the class parameter.

  • Lines and paragraphs are automatically recognized. The <br /> line break, <p> paragraph and </p> close paragraph tags are inserted automatically. If paragraphs are not recognized simply add a couple blank lines.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs are automatically recognized. The <br /> line break, <p> paragraph and </p> close paragraph tags are inserted automatically. If paragraphs are not recognized simply add a couple blank lines.
Scroll to Top