Headlines Plugin

Show headline news in TWiki pages based on RSS and ATOM news feeds from external sites


This plugin displays RSS and ATOM feeds from news sites. Use it to build news portals that show headline news.


  • RSS (Rich Site Summary) is an XML standard used to publish frequently updated works such as blog entries, news headlines and audio.
  • Atom is an XML syndication format used for web feeds.
  • Syndic8.com at http://www.syndic8.com/ lists many RSS and ATOM feeds.

Syntax Rules


Parameter Explanation Default
"..." Source of RSS or ATOM feed; this can be an url (starting with http) or a web.topic location for internal feeds None; is required
href="..." (Alternative to above) N/A
refresh="60" Refresh rate in minutes for caching feed; "0" for no caching Global REFRESH setting
limit="12" Maximum number of items shown Global LIMIT setting
header="..." Header. May include these variables:
- $channeltitle, $title: title of channel (channel.title)
- $channellink, $link: link of channel (channel.link)
- $channeldescription, $description: description (channel.description)
- $channeldate, $date: publication date of the channel (channel.pubDate)
- $rights: copyrights of the channel (channel.copyright)
- $imagetitle: title text for site (image.title)
- $imagelink: link for site (image.link)
- $imageurl: URL of image (image.url)
- $imagedescription: description of image (image.description)
Global HEADER setting
format="..." Format of one item. May include these variables:
- $title: news item title (item.title)
- $link: news item link (item.link)
- $description: news item description (item.description)
- $date: the publication date (item.pubDate, item.date)
- $category: the article category (item.category)
Global FORMAT setting
touch="..." Touch (edit/save) topics if the feed has updates. Specify a comma-space delimited list of TopicNames or Web.TopicNames, such as "%TOPIC%, NewsLetter". Useful to send out newsletter using MailerContrib, showing new feeds since last newsletter. To update feeds, visit topics with feeds in regular intervals (using cron with wget or the like). N/A

The header and format parameters might also use variables rendering the dc, image and content namespace information. Note, that only bits of interest have been implemented so far and those namespaces might not be implemented fully yet.

Rendering the dc namespace

The following variables are extracting the dc namespace info, that could be used in header and format. Note that some of the variables are already used above. This is done by purpose to use different feeds with the same formatting parameters. If there's a conflict the non-dc tags have higher precedence, i.e. a <title> content </title> is preferred over <dc:title> content </dc:title>.

  • $title: channel/article title (dc:title)
  • $creator: channel creator (dc:creator)
  • $subject: subject text; this will also add an image according to the subject hash list, see above (dc:subject)
  • $description: ... (dc:description)
  • $publisher: the channel/article publisher (dc:publisher)
  • $contributor: ... (dc:contributor)
  • $date: ... (dc:date)
  • $type: ... (dc:type)
  • $format: ... (dc:format)
  • $identifier: ... (dc:identifier)
  • $source: ... (dc:source)
  • $language: ... (dc:language)
  • $relation: ... (dc:relation)
  • $coverage: ... (dc: coverage)
  • $rights: ... (dc: rights)

Rendering the image namespace

An image:item is converted into an <img> tag using the following mappings:

  • src: image url (rdf:about attribute of the image.item tag)
  • alt: image title (title)
  • width: image width (image:width)
  • height: image height image:height)

Rendering the content namespace

The variable $content is referring to the <content:encoding> content </content:encoding>.


Slashdot News


%HEADLINES{ "http://slashdot.org/slashdot.rdf" 
  header="*[[$link][$title]]:* $description" 
  format="$t* [[$link][$title]]"
to get the latest Slashdot news as a bullet list format:

HeadlinesPlugin ERROR: 501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)

Business Opportunities Weblog


%HEADLINES{ "http://www.business-opportunities.biz/feed" limit="2" }%

to get the latest postings on the "Business Opportunities" weblog:

Wed, 12 Dec 2018 04:09:44 +0000
The original blog about business opportunities and business ideas for small business entrepreneurs
Wed, 12 Dec 2018 04:09:44 +0000 Laurie Bennett
Photo by Kaboompics .com from Pexels

You’re opening your new restaurant. You’ve managed to attract a great team of servers. The kitchen staff you’ve hired is on point. The bar looks super and the dining area is well-nigh perfect.

However, have you considered a restaurant point of sale system (POS) yet? A POS is usually a key component. However, new restaurant owners commonly overlook this piece, even though it can determine whether your new restaurant succeeds or not.

Most, if not all, lucrative restaurants employ the use of a premium quality POS system. The tricky part is that not every POS has been designed to satisfy your establishment’s specific needs. Below are a few things you need to consider before you choose a POS for your new restaurant.




1. Is It Intuitive and Fast?

It’s an extremely fast-paced world we live in today. Moreover, restaurants seem to be moving at an even faster pace. Not only does your POS system need to be moving at a blazing fast speed, but it also needs to be easy to use as well.

The quicker your staff can get comfortable with using it, the speedier the operations they do with it will be.


2. Does It Track Your Inventory?

Tracking inventory is one of the things most business owners would really love to make easier. While it’s not all that glamorous, tracking inventory is a vital part of your new restaurant’s success.

A high-quality POS system can help you do that. It might not solve all your tracking inventory issues. However, it can certainly help a great deal. Most of high-quality systems have the ability to track such things as ingredient usage and orders. Most will also keep a running tally of things your business has sold and let you know when re-ordering time comes.


3. Do You Often Change Your Services and Menu?

If your menu is basic, fixed, and doesn’t change much, you won’t need to bang your head too much over menu flexibility. However, if your establishment has menu items that rotate and change a lot, then you might want to consider getting POS software that has a lot of menu flexibility.

Not only will menu flexibility make it easier to take orders on demand using the POS system, but it also helps your restaurant’s customers order your special and temporary menu items more quickly and easily.


4. How Loyal Is Your Customer Base?

Whether or not your restaurant can depend on loyal customers can determine the features that your business needs the most. For instance, if you are located in or near an airport, you might not have the same customers coming in over and over again. On the other hand, if you’re situated near a college campus, most of your customers are probably loyal ones.

If customer loyalty is important to your new restaurant, then you might want to consider POS software that has inbuilt loyalty program capability. At the least, choose one that can store customer history easily.


The Right POS Can Make or Break Your New Restaurant

Having quality point of sale software generally means smooth operations. It could literally determine the success of your new restaurant business. Hopefully, this article has given you some of that much-needed insight around the topic. Choosing a high-end POS system really doesn’t have to be that hard, does it?

The post How to Pick a POS System for Your New Restaurant appeared first on Business Opportunities.

Wed, 12 Dec 2018 04:08:30 +0000 Lean Fernandez
Image Credit: geralt on Pixabay

Have you been looking for a way to kick start your entrepreneurial dreams? Online Entrepreneur Academy is the solution you’ve been searching for.

Every day, there seems to be a new story about someone turning their life around by building a profitable online business. Maybe you have conducted some research yourself and looked for ways to make money online.

In the course of your research you’ve likely stumbled across tips about building an attractive website. You’ve learned how to create posts with rich media. Perhaps you’ve gotten some ideas about monetizing a blog or a website to generate some income.

However, you’ve probably also discovered that applying these strategies in practice is easier said than done. Not to mention the fact that many of these tips you uncover online fail to address the core principles you need to master to become a successful online entrepreneur.


This Unique Program Is Ahead of Its Time

Here’s where the Online Entrepreneur Academy steps in. This is the first online entrepreneurial training program of its kind. Unlike most training courses currently on the market, the Online Entrepreneur Academy runs on a full one-year curriculum.

There’s just no way you would be able to learn everything you need to know about online entrepreneurship in only the few short weeks other programs give you. However, it’s not just the length of the program that sets this program apart. Its their unique approach to teaching their members that makes this the most compelling online entrepreneurship training course to date.


Get Equipped to Follow Your Dreams

Founder Alex Dee envisions a world in which ordinary individuals feel that they’re in control of their own lives.

If you’re working in an office or in any traditional day job, then you know how frustrating it can be to go to work day after day with no foreseeable growth in your career. What’s more, the unpredictability of your job in today's ever-evolving market can be wearing on your spirit. It can feel like you’re hitting a dead end.

However, Alex encourages you to get ahead of the market and do what you truly want to do with your life.

Drawing from his personal life experiences, Alex has created this program to teach students the timeless principles of entrepreneurship in a step-by-step fashion. Moreover, during the year you’ll be taking this course, you’ll learn how to apply these timeless principles in today’s online environment.


You’ll Start by Defining a Need

You’ll start your one-year process by defining a need in the marketplace. Then you’ll go about developing a plan to fill that need.

You might already have a business idea in mind. However, if another entrepreneur has already launched a product similar to what you have in mind, it could prove challenging to grab a share of your target market. Online Entrepreneur Academy has a team of industry experts who will guide you in understanding your niche. In other words, they will help you to find a gap in the market which you alone can fill. This will present you with a massive opportunity to generate income, while at the same time helping others.

After finalizing your business concept, the training program moves on to explore the various platforms you can use to promote your business. For example, you’ll learn to develop a website using your own domain. You’ll learn about using your social media accounts and email to promote your new business. And you’ll learn all about how to develop and optimize sales funnels.




Develop Your Marketing Skills

With the help of marketing professionals, you’ll learn how to leverage these different platforms to establish name recognition for your business. This will allow you to inform your target audience about your products or services. Additionally, you’ll learn the importance of driving targeted traffic to your online properties.


Get Hands-on Sales Training

Online Entrepreneur Academy also teaches you how to increase profits using time-tested sales techniques such as back-end sales and upselling. Then, by using strategically designed projects and strategies, you’ll immerse yourself in real-life scenarios. Collaborating with other members will also teach you the value of delegating tasks and maximizing the strengths of each member.


Interact with Other Members and Experts

The step-by-step approach utilized by the professionals at Online Entrepreneur Academy ensures that each student receives individualized instruction. Each member will work with an enrollment counselor to guide them in customizing an individual plan. Moreover, counselors also keep track of students’ progress and assure that each one is on track.


Step Up to Your Success with Online Entrepreneur Academy

Alex believes that Online Entrepreneur Academy is an unparalleled opportunity for anyone who wants to become the next success story in online entrepreneurship.

New members are being accepted now, with special pricing leading up to the official launch in April 2019, when the live curriculum will begin.

Make 2019 your year by enrolling now with Online Entrepreneur Academy. You’ll soon find yourself transitioning out of your current job and into the freedom of working for yourself with an online business!

The post Online Entrepreneur Academy: State of the Art Training for Entrepreneurs appeared first on Business Opportunities.

Plugin Settings

Plugin settings are stored as preferences settings. Do not change the settings here, they are here only for illustration purposes showing the default values. Define the settings in Main.TWikiPreferences. For example, to customize the HEADLINESPLUGIN_USERAGENTNAME setting, add a * Set HEADLINESPLUGIN_USERAGENTNAME = ... bullet in Main.TWikiPreferences.

  • Refresh rate in minutes for cached feeds. Set to 0 to disable caching:

  • Maximum number of items shown:

  • Use LWP::UserAgent if set to 1, or fallback to TWiki's internal getUrl() method if set to 0:

  • Timeout fetching a feed using the LWP::UserAgent:

  • Name of user agent:
    • Set HEADLINESPLUGIN_USERAGENTNAME = TWikiHeadlinesPlugin/2011-07-08

  • Default header: (variables are explained in the syntax rules)
      * Set HEADLINESPLUGIN_HEADER = <div class="headlinesChannel"><div class="headlinesLogo"><img src="$imageurl" alt="$imagetitle" border="0" />%BR%</div><div class="headlinesTitle">$n---+!! <a href="$link">$title</a></div><div class="headlinesDate">$date</div><div class="headlinesDescription">$description</div><div class="headlinesRight">$rights</div></div>

  • Default format of one item: (variables are explained in the syntax rules)
      * Set HEADLINESPLUGIN_FORMAT = <div class="headlinesArticle"><div class="headlinesTitle"><a href="$link">$title</a></div>$n<span class="headlinesDate">$date</span> <span class="headlinesCreator"> $creator</span> <span class="headlinesSubject"> $subject </span>$n<div class="headlinesText"> $description</div></div>

  • Values taken from configure: (only supported if CPAN:LWP is installed)
    • $TWiki::cfg{PROXY}{HOST} - proxy host, such as "proxy.example.com";
    • $TWiki::cfg{PROXY}{PORT} - proxy port, such as "8080";
    • $TWiki::cfg{PROXY}{SkipProxyForDomains} - domains excluded from proxy, such as "intra.example.com, bugs.example.com";

Style Sheets

The default HEADER and FORMAT settings use the following styles. See the style.css file defining the default CSS properties (indentation illustrates enclosure).

  • headlinesRss: output of the HeadlinesPlugin (div)
    • headlinesChannel: channel header (div)
      • headlinesLogo: channel logo (div)
      • headlinesTitle: channel title (div)
      • headlinesDate: channel date (div)
      • headlinesDescription: channel description (div)
      • headlinesRight: channel copyright (div)
    • headlinesArticle: one news item (div)
      • headlinesTitle: article title (div)
      • headlinesDate: article date (span)
      • headlinesCreator: author of article (span)
      • headlinesSubject: subect category of the article (span)
      • headlinesText: article text (div)

Plugin Installation Instructions

Note: You do not need to install anything on the browser to use this plugin. The following instructions are for the administrator who installs the plugin on the TWiki server.

  • For an automated installation, run the configure script and follow "Find More Extensions" in the in the Extensions section.

  • Or, follow these manual installation steps:
    • Download the ZIP file from the Plugins home (see below).
    • Unzip HeadlinesPlugin.zip in your twiki installation directory. Content:
      File: Description:
      data/TWiki/HeadlinesPlugin.txt Plugin topic
      pub/TWiki/HeadlinesPlugin/style.css Default CSS
      lib/TWiki/Plugins/HeadlinesPlugin.pm Plugin Perl module
      lib/TWiki/HeadlinesPlugin/Core.pm Plugin core
    • Set the ownership of the extracted directories and files to the webserver user.
    • Make sure the dependencies listed in the table below are resolved.
      Digest::MD5>=2.33Required. Download from CPAN:Digest::MD5
      LWP::UserAgent>=5.803Optional. Download from CPAN:LWP::UserAgent

  • Plugin configuration and testing:
    • Run the configure script, enable the plugin in the Plugins section
    • Configure the plugin: See plugin settings above.
    • Test if the installation was successful: See example above.

Plugin Info

  • One line description, shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Show headline news in TWiki pages based on RSS and ATOM news feeds from external sites

Plugin Author: TWiki:Main.PeterThoeny, TWiki:Main.MichaelDaum
Copyright: © 2002-2012 Peter Thoeny, TWiki.org
© 2005-2007 Michael Daum http://wikiring.de
License: GPL (GNU General Public License)
Plugin Version: 2012-09-05
Change History:  
2012-09-05: TWikibug:Item6837: Doc fixes
2011-07-17: TWikibug:Item6764: Add VarHEADLINES variable documentation; doc improvements; setting NO_PREFS_IN_TOPIC
2011-07-08: TWikibug:Item6725: Change global package variables from "use vars" to "our"
2010-05-16: TWikibug:Item6433: More doc improvements
2010-04-25: TWikibug:Item6433: Doc fix: Changing TWIKIWEB to SYSTEMWEB
2010-02-27: TWikibug:Item6313: Fixed bug in ATOM feed with <link ...></link> instead of <link ... /> -- Peter Thoeny
2009-09-30: fixed bug in lastBuildDate of feeds affecting touch parameter functionality -- Peter Thoeny
2009-08-29: added touch parameter -- Peter Thoeny
12 Feb 2009: {PROXY}{HOST} supports domain with and without protocol -- Peter Thoeny
06 Feb 2009: added {PROXY}{SkipProxyForDomains} configure setting, added USERAGENTNAME plugin setting -- Peter Thoeny
11 Dec 2008: added {PROXY}{HOST} and {PROXY}{PORT} configure settings -- Peter Thoeny
13 Sep 2007: fixed parsing of content:encoded
23 Jul 2006: improved atom parser; if a posting has no title default to 'Untitled'
26 Apr 2006: added lazy compilation
10 Feb 2006: packaged using the TWiki:Plugins/BuildContrib; minor fixes
03 Feb 2006: off-by-one: limit="n" returned n+1 articles; make FORMAT and HEADER format strings more robust
23 Jan 2006: released v2.00
05 Dec 2005: internal feed urls must be absolute
02 Dec 2005: added web.topic shorthand for internal feeds
29 Nov 2005: fixed CDATA handling
21 Nov 2005: added ATOM support; extended RSS support; added dublin core support; added content support; optionally using LWP to fetch feeds to follow redirections; corrected CPAN dependencies ; recoding special chars from html integer to entity encoding to increase browser compatibility; added css support; use getWorkArea() if available
11 May 2005: TWiki:Main.WillNorris: added DevelopBranch compatability
31 Oct 2004: Fixed taint issue by TWiki:Main.AdrianWeiler; small performance improvement
29 Oct 2004: Fixed issue of external caching if mod_perl or SpeedyCGI is used
02 Aug 2002: Implemented caching of feeds, thanks to TWiki:Main/RobDuarte
11 Jun 2002: Initial version (V1.000)
Perl Version: 5.8
TWiki:Plugins/Benchmark: GoodStyle 100%, FormattedSearch 99.5%, HeadlinesPlugin 94%
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/HeadlinesPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/HeadlinesPluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/HeadlinesPluginAppraisal

Related Topics: VarHEADLINES, TWikiPlugins, AdminDocumentationCategory, TWikiPreferences

Topic revision: r6 - 2012-09-05 - TWikiContributor
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.HeadlinesPlugin.