Welcome, Registration, and other StartingPoints; Foswiki history & Wiki style; All the docs...
Edit | Attach | New | Raw | Delete | History | Print | Tools
You are here: System » HeadlinesPlugin

Headlines Plugin

Description

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

Note: Syndic8.com ( http://www.syndic8.com/ ) is a good site listing many RSS feeds.

Syntax Rules

%HEADLINES{"..."}%

ParameterSorted ascending Explanation Default
"..." source of RSS feed; this can be an url (starting with http) or a web.topic location for internal feeds None; is required
format Format of one item. Can 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
header Header. Can 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
href="..." (Alternative to above) N/A
limit="12" Maximum number of items shown Global LIMIT setting
refresh="60" Refresh rate in minutes for caching feed; "0" for no caching Global REFRESH setting

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. Nnote, that some of the variables are already used above. This is done by purpose to use different feeds with the same formating parameters. If there's a conflict the non-dc tags have higher precedence, i.e. a <title> content </title> is prefered 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 refering to the <content:encoding> content </content:encoding>.

Examples

Slashdot News

Write

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

Business Opportunities Weblog

Write

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

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

Tue, 21 Oct 2014 03:04:21 +0000
The original blog about business opportunities and business ideas for small business entrepreneurs
Tue, 21 Oct 2014 03:04:21 +0000 Dane Carlson

At the agency’s request, a federal court has issued a temporary restraining order on several marketing companies that promote green coffee bean extract and other supplements through supposed free-trial, the FTC said Monday.

It is the consumer watchdog’s first action against companies accused of violating the so-called Restore Online Shoppers’ Confidence Act. The marketing firms allegedly charged consumers without disclosing the terms of the transaction or getting clear consent. The Online Shoppers law is aimed at protecting consumers from unscrupulous Internet marketing. The FTC is hoping to make the ban on such tactics permanent.

Mon, 20 Oct 2014 23:20:58 +0000 Dane Carlson

According to one anonymous startup consultant, most of today’s young entrepreneurs who’s first real work experience is in an internet startup, will turn to franchising in their late thirties.

“There’s a point in everyone’s life, when they need to do something real. There will be a point where they can’t live on energy drinks and candy anymore, and need to get a real job to pay their mortgage, for swim lessons and braces for their kids.” These young people, who came into adulthood in the second decade of the 21st century, won’t settle into place in a corporate job for their rest of their lives. They’ve been born and bred on the idea of making something themselves. “They’re not going to be content pushing papers in a cubicle,” our anonymous consultant said in an conference call last week.

He predicts that a large percentage, somewhere in the range of 50-60% range will turn to franchising in the coming decade and a half. Franchising will appeal to these former-startup founders because of all the aspects that make it unattractive to them right now: including the cookie-cutter approach to building a business, extensive training and franchisor direction, and reduced risk of buying into an existing brand.

“Today’s entrepreneurs aren’t going to be content to just follow the rules, though. Franchisors need to be prepared for this radical and creative influx of talent in the coming years.”

Mon, 20 Oct 2014 14:45:12 +0000 Dane Carlson

I recently had the opportunity to speak with Renzo Aida, owner of Fred Astaire Dance Studio in Dedham, MA. Fred Astaire Franchised Dance Studios is a ballroom dance franchise named after, and co-founded by the famous dancer Fred Astaire.

My questions are below in bold. Enjoy.


Why did choose to buy a Fred Astaire Franchised Dance Studio?

Over the years I frequented many dance studios (independently owned and franchised) and got to see how they were managed. Some were managed well and some were not. I was able to pick up on things I liked and things I didn’t like so that when I was ready to own a studio, I had a good idea of what worked and what didn’t.

I also knew from my previous career that there was significant value in partnering with an strong franchise: brand awareness, marketing and advertising, operating systems, and an established network of franchisees. From a business perspective the systems that are in place are key to a business running efficiently. Having said that, a dance studio is still a small business that requires a personal touch, thus you need the flexibility to do things differently.

I found the right balance with the Fred Astaire Franchised Dance Studios. The company has great systems already in place to support the franchisee, but is not afraid shake things up and try to do things a little differently.

The very fact that that they gave me the opportunity to own a studio without any prior ''dance'' business experience is a tribute to that. They looked at my business background and education and said ''this is the direction that we want to go in.''

How did you bring it to life?

For me it was the basic private equity approach. Find a business with great fundamentals, but not operating at its potential. I liked everything about the studio. The location, the market demographics, the staff, the student base, etc. When the opportunity came to acquire this particular studio, I didn’t waste any time.

Where do you see your Fred Astaire Dance Studio in five years?

We are still a small studio but we are growing. We have a new vision and direction. The changes we made are setting us up nicely for continued growth. The capacity is there and the fundamentals are right for us to double in size in the next 2-3 years and continue to do so through 2019.

If you were to start again, what would you do differently?

This is a tough question. I made many mistakes early on, but I learned from all of them and they helped make me better at my job. I guess the biggest mistake was not thinking through my business plan thoroughly enough. It was full of ideas, but lacked a realistic timeline and strategy. Too many resources were wasted early on in the process. Now I have some experience running a dance studio and I am better prepared.

What does your typical day look like?

No two days are the same so I don't try to plan out my day because if I did, nothing would get done. I usually wake up around 8am and check voice mail and the studio e-mail for new lesson requests, cancellations and other time-sensitive messages. Then I head to the studio to practice my own dancing or head to the gym.

I usually get in a few hours before opening because that's when I have fewer distractions. I spend time preparing and analyzing budgets, P&Ls, and other performance and financial reports so I know where we stand heading into the day. At 1:30 we open the doors. I spend the afternoon in meetings or calls. Whether its meeting with my studio manager, Rachel, or with staff or customers or marketers, there's always someone I need to speak with or some fire that needs to be put out. And that's not even the busy part of the day.

As the afternoon comes to a close, that's when we start to get really busy. There's a lot of activity going on in the evenings as that's when people get off work and come do dance their stress away. I spend time on the floor and reception greeting and speaking with students and observing lessons.

In between I'm usually researching ways to improve and grow the business. Things like what competitions to attend or new events and activities that we can create for our students.

We close up around 10 pm and head home to spend time with my girlfriend before going to bed and doing it all over again the next day.

Fred Astaire Dance Studio 2

What is one trend that really excites you?

Dance Fitness. It began with Zumba, but there are all kinds of dance inspired fitness classes popping up, such as Barre, Pole Fitness, etc. We have a great space to incorporate a fitness program and can't wait to do this.

What was the worst job you ever had and what did you learn from it?

I can't say I’ve ever had a bad job, but I did have some bosses I didn’t click with. I feel like I did learn from them, though, especially that to get the most out of someone, you must treat him/her with respect and make them feel valued.

As an entrepreneur, what is the one thing you do over and over and recommend everyone else do, too?

Keep evolving!

What is one failure you had as an entrepreneur, and how did you overcome it?

My biggest failure was not trusting my own instinct. Part of it was not having the confidence to follow through on my ideas. I let other people with ''experience'' tell me how to run my studio and the results were horrendous. Instead of implementing my vision, there was a strong reluctance to change and things kept getting done the old way and I went along with it. It wasn’t until I started to do things my way that things started to improve. Having some success has given me more confidence to follow through with my ideas and trusting my instinct.

What is one business idea that you are willing to give away to our readers?

Add value, not discounts. Value motivates customers far more than getting a discount. Instead of focusing on clever sales and discounts, focus on improving the quality of the product. Your customers will notice the difference and gladly pay more if they understand the value of the product.

If you could change one thing in the world, what would it be and how would you go about it?

I think if people danced more there would be far less stress in their lives and there would be fewer health issues. If I could magically make everybody take dance lessons I would because the world would be a much better place.

What are your three favorite online tools or resources and what do you love about them?

Google Adwords - by far still the most effective way to advertise

Facebook - great for promoting events and activities to potential customers

Constant Contact - Keeps your current customers informed

What is the one book that you recommend our community should read and why?

I'm not a big reader, especially not self-help books. My advice if you want to learn something, take a class in it. However, when I do if I had to pick just one that everyone should read its Liar’s Poker by Michael Lewis.

Three people we should follow on Twitter and why?

@FredAstaireCorp – People would be surprised to learn about the health and relationship benefits of ballroom dance. This is a good account to follow to stay up to date on that.

@JerrySeinfeld & @SteveCarell – because sometimes you just need a dose of funny.

When was the last time you laughed out loud? What caused it?

We have a great atmosphere here in the studio and there is never a lack of laughter. It's hard to go 20 minutes without a teacher or a student laughing out loud. You wouldn’t believe some of the things our students tell us&hellip

Who is your hero?

The teachers at my studio are my heroes. It takes a combination of a lot of skill and great personality to be a successful dance teacher. Not to mention the fact that they are on their feet all day. They are the ones that make things happen.

Do you (or did you ever) have a mentor?

I had several mentors early in my career, but I also developed strong relationships with former colleagues and classmates that I continuously consult with regularly on business and personal matters. Having a strong network is just as important as having a mentor.

Tell us a secret.

I started taking dance lessons so I could meet girls.

What's your website where people can find out more about Fred Astaire Dance Studios?

www.fredastaire.com

How about you personally?

www.fadsdedham.com

Where can people find your Fred Astaire Dance Studio on social media?

Facebook: https://www.facebook.com/FADSDedham

Twitter: https://twitter.com/FADSdedham

Google+: Fred Astaire Dedham

Plugin Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %<plugin>_<setting>%, for example, %HEADLINESPLUGIN_SHORTDESCRIPTION%. Note: Don't modify the settings here; copy and customize the settings in SitePreferences. For example, to customize the USERAGENTNAME setting, create a HEADLINESPLUGIN_USERAGENTNAME setting in Main.SitePreferences.

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

  • Refresh rate in minutes for cached feeds. Disable caching: 0, default: 60
    • Set REFRESH = 60

  • Maximum number of items shown. Default: 100
    • Set LIMIT = 100

  • Use LWP::UserAgent, or fallback to Foswiki's internal getUrl() method. Default: yes
    • Set USELWPUSERAGENT = yes

  • Timeout fetching a feed using the LWP::UserAgent. Default: 20
    • Set USERAGENTTIMEOUT = 20

  • Name of user agent. Default: FoswikiHeadlinesPlugin/2.21.1
      * Set USERAGENTNAME = FoswikiHeadlinesPlugin/2.21.1

  • Default header: (variables are explained in the syntax rules)
      * Set 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 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)
    • $Foswiki::cfg{PROXY}{HOST} - proxy host, such as "proxy.example.com";
    • $Foswiki::cfg{PROXY}{PORT} - proxy port, such as "8080";
    • $Foswiki::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

  • Download the ZIP file
  • Unzip it in your foswiki installation directory. Content:
    File: Description:
    data/System/HeadlinesPlugin.txt plugin topic
    pub/System/HeadlinesPlugin/style.css default css
    lib/Foswiki/HeadlinesPlugin.pm plugin perl module
    lib/Foswiki/HeadlinesPlugin/Core.pm plugin core
    Check if above examples show a news feed instead of variable.
  • Optionally, run HeadlinesPlugin_installer.pl to automatically check and install other Foswiki modules that this module depends on. You can also do this step manually.
  • Alternatively, manually make sure the dependencies listed in the table below are resolved.
    NameVersionDescription
    Digest::MD5>=2.33Required. Download from CPAN:Digest::MD5
    LWP::UserAgent>=5.803Optional. Download from CPAN:LWP::UserAgent

Plugin Info

Plugin Author: TWiki:Main.PeterThoeny, Foswiki:Main.MichaelDaum (2005-2007)
Copyright: © 2002-2009, Peter Thoeny, TWIKI.NET; 2005-2007, Michael Daum http://wikiring.de
License: GPL (GNU General Public License)
Plugin Version: 2.21.1 (08 Mar 2009)
Change History:  
08 Mar 2009: Ported without changes to Foswiki namespace by Kenneth Lavrsen and put under "Feel Free To Modify" in Foswiki context.
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.008
Plugin Home: http://foswiki.org/Extensions/HeadlinesPlugin
Feedback: http://foswiki.org/Extensions/HeadlinesPluginDev
spacer
Copyright © 2014 Atomikos BVBA. Transaction Management for Extreme Transaction Processing and SOA Environments serving ISV, Commercial, OEM and Open Source Markets
Site map RSS ATOM