Skip to main content

ION Orchard Food Directory

ION Orchard Food Directory

ION Orchard is a luxurious shopping mall that puts together familiar retail brands all within the eight levels of the development which total up to be 66,000 square metres. From top brands to high street fashion and lifestyle brands, ION Orchard has over 300 retail, F&B and entertainment stores, catering a wide variety of both local and foreign brands that wish to set up their signature flagship stores here in Singapore.

Besides shopping, ION Orchard has a significant amount of retail space dedicated to dining. With so many dining choices to choose from, it can be hard to navigate your way through the mall. We have made things simple by providing you with this ION Orchard Food Directory.

#B4-06/06A ION Orchard
2 Orchard Turn
Singapore 238801
Tel: +65 6509 8641
Sun to Thu & PH: 11am – 10pm
Fri, Sat & Eve of PH: 11am – 10.30pm

Awfully Chocolate Christmas Log Cake

#B4-50 ION Orchard
2 Orchard Turn
Singapore 238801
Tel: +65 6884 6377
Daily: 10am – 10pm

Bake Cheese Tart Singapore

#B4-33 ION Orchard
2 Orchard Turn
Singapore 238801
Daily: 10am – 10pm

#B4-38 ION Orchard
2 Orchard Turn
Singapore 238801
Tel: +65 6238 2090
Daily: 10am – 10pm

#B4-08/09 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4434
Sun to Thu: 9.00am – 10.00pm
Fri & Sat: 9.00am – 10.30pm

#B4-58/59 ION Orchard
2 Orchard Turn
Singapore 23880
Daily: 9.30am – 9.30pm

#B4-60 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8511
Daily: 8am – 10pm

#B4-63 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6238 8006
Daily: 11am – 10pm

#B4-39/40/41/42 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8101
Daily: 11am – 10.30pm

Gyoza Ya

#B4-56 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4647
Daily: 11.30am – 10.30pm

Haagen Dazs

#04-27-32 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4421
Daily: 10am – 10pm

#B3-18 ION Orchard
2 Orchard Turn
Singapore 23880
Daily: 11am – 10pm

#B3-15/16 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6834 4483
Daily: 11am – 10pm

#B4-54 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6636 8622
Daily: 10am – 10pm


#B3-25/26 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8638
Sun to Thu: 11.30AM – 10PM
Fri to Sun: 11.30AM – 10.30PM

#B4-70 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6634 2254
Daily: 11.30am – 9.30pm

#B3-17 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8283
Mon to Fri: 11am – 10pm
Sat and Sun: 10.30am – 10pm

Imperial Treasure Steamboat

#04-09/10 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6636 9339
Lunch: 11am – 3pm
Dinner: 6pm – 11pm

#B3-24 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8600
Daily: 11am – 10pm

#B3-K1 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 5098
Daily: 10am – 10pm

Itacho Sushi

#B3-20 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8911
Daily: 11am – 10pm

#B4-66 ION Orchard
2 Orchard Turn
Singapore 23880
Daily: 10am – 10pm

#B4-37 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 3776
Daily: 10am – 10pm

#B4-45/46 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4355
Daily: 10am – 9.30pm

#04-11A, #05-01 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6634 1411
Lunch: 11:30am – 3pm
Dinner: 3.30pm – 11pm
Weekends & Public Holidays: 11.30am – 11pm

#B4-34 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 3301
Daily: 11am – 10pm

#B4-52 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4245
Daily: 11am – 10pm

Mr Churro Churros

#B4-61 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 1300
Daily: 10am – 10pm

Nara Thai Cuisine

#B3-21 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6634 5787
Daily: 11.30am – 10pm

Old Chang Kee
#B4-36 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6303 2400
Daily: 10am – 10pm

Paradise Dynasty XLB

#04-12A ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9118 (Does not accept reservations)
Daily: 11am – 10pm

Pezzo Pizza

#B4-51 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6844 4222
Daily: 10am – 10pm


#04-12 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4296
Lunch: 11.30am – 3pm
Dinner: 5.30pm – 10pm
Weekends & Public Holidays
Lunch: 11.30am – 4.30pm
Dinner: 5.30pm – 10pm


#55-01/#56-01 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6592 5118
Lunch: 11.00am – 2pm
Dinner: (Thu – Sun) 6pm – 10pm / Dinner (Fri & Sat) 6pm – 10.30pm
Sky Bar: 11am – 11.30pm
Brunch (Weekend): 11am – 2pm / Afternoon Tea 2pm – 6pm

Saveur Art

#04-11 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6634 1141
Daily: 12pm – 9.30pm

Seoul Yummy Budae Jjigae

#B3-22 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 4045
Sun to Thu: 11.30am – 10pm
Friday, Saturday, Eve of PH & PH: 11.30am – 10.30pm

#B4-30 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 6008
Daily: 8am – 9.30pm

#B3-59 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 8028
Daily: 8am – 11.30pm


#B1-31 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6884 5967
Weekdays: 10.30am – 10.30pm
Weekends & PH: 10.30am – 10.30pm

Taste Paradise

#04-07 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9660
Lunch: 11.30am – 3.00pm
Dinner: 6.00pm – 11.00pm
Weekends & Ph
Lunch: 11am – 4.30pm
Dinner: 6pm – 11pm

#B4-64 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6238 8519
Daily: 10am – 10pm

#B4-03 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9278
Sun to Thu: 7.30am – 10.30pm
Fri, Sat & Eve of PH: 7.30am – 11pm

Teppei Syokudo Kaisendon

#B4-57 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9882
Daily: 10am – 10pm

TCC Chocolate Cake

#B2-49 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 6106
Sun to Thu: 10am – 10pm
Fri, Sat, Eve of PH & PH: 10am – 11pm

#B4-07 ION Orchard
2 Orchard Turn
Singapore 23880
Daily: 10am – 10pm

#B1-12 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9742
Daily: 7.30am – 11pm

Crabmeat Linguine

#03-22/28 to 34 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6734 2700
Daily: 10am – 10pm

#B4-67/68 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6634 5378
Daily: 10.30am – 10pm

#B4-53 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 1127
Daily: 11am – 9.30pm

#B4-55 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6636 5835
Daily: 10am – 10pm

TWG Tea Salon

#02-20/21 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6735 1837
Daily: 10am – 10pm

#B3-23 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 9366
Daily:11.30am to 10pm

#B3-19 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6509 1555
Daily: 10am – 10pm


#B4-71/72 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6238 0458
Daily: 7.30am – 10pm

#B4-62 ION Orchard
2 Orchard Turn
Singapore 23880
Tel: +65 6238 6682
Daily: 10am – 10pm

For more recommendations, read our Ultimate Orchard Road Food Guide which covers more than 100 restaurants, cafes and eateries you must dine at.

Let’s block ads! (Why?)



Freebie: 10 High Quality Summer Letterings

Together with Freepik, we are releasing this Hongkiat-exclusive freebie offering of 10 Summer Letterings great for a design that is fit for the beach and perfect for paradise. The letterings are available in cursive, uppercase and lowercase and in numbers as well.

Check out these freebies and follow the instructions to get your hand on these files. All letterings are available in AI and EPS format.


Let’s block ads! (Why?)


Ashley Sutton Breaks Into Hong Kong with His Newest Bar, Ophelia

ophelia wanchai

Former Australian miner Ashley Sutton is renowned for his outrageous bars in Bangkok and the influential tastemaker has recently opened a whimsical nightlife playground in the heart of up-and-coming Hong Kong district Wan Chai.

The fantastical concept bar is none other than Ophelia – a peacock-themed cocktail speakeasy that is unlike anything we have ever seen.

Located on the first level of new development Lee Tung Avenue, Ophelia’s entrance is a mysterious-looking manmade bird shop that perfectly fits the setting of a dark fairytale.

Unveil the thick velvet curtain and a magical realm awaits; waitresses are donned in traditional cheongsam costumes and dancers perform inside life-size bird cages on iron swings.

ophelia bar

Ophelia’s out-of-the-world design has been inspired by the lavish opium dens of the 19th century and no expenses have been spared to create this dreamy fantasyland.

The aviary-style venue boasts 600,000 ceramic hand-painted tiles, lavish couches, elaborate metalwork and of course, actual peacock feathers!

ophelia hongkong ashley sutton

The bizarrely captivating watering hole showcases an impressive cocktail list and popular drinks include the Cheongsam (HK$ 130++) and Ophelia Negroni (HK$ 125++). The former is a concoction of artisanal pomegranate cordial, cinnamon mint, lemon, lime, Ocho Tequila and vermouth, while the latter is a mix of Tanqueray Gin, La Quintinye vermouth and campari.

Unsurprisingly, Ophelia is currently the most sought after bar in the Pearl of the Orient.

And here’s a piece of good news to all fans of Ashley Sutton – he will soon be opening two more concepts in Hong Kong.

Shop 39A-41A, 1/F, The Avenue
Lee Tung Avenue, Wan Chai, Hong Kong
Tel: +852 2520 1117
Tue to Thu: 6pm – 2am
Fri and Sat: 6pm – 3am
Nearest Station: Wan Chai

Let’s block ads! (Why?)



The “Sent From My iPhone” Signature Has Evolved Past Crass Bragging, According To Research

By | August 27th, 2016

As anyone who was around when Apple released the first iPhone almost ten years ago will remember, there was one thing that used to happen that made it clear you owned an iPhone while simultaneously making you come across as a bit, shall we say, crass. We are, of course, talking about the not-so-humble “Sent from my iPhone” signature that Apple’s Mail app appended to outgoing emails by default.

Over the years, many have used the signature as a way of making sure everyone knows they own an iPhone. Initially, that was something to brag about – iPhones were hugely expensive and rare, particularly outside the United States, so making sure everyone knew you were using one was a brag of considerable proportions. Like we say, it was crass.


Fast forward to today, however, and the signature is once again making a comeback, but it’s fine this time around. In fact, it makes perfect sense.

Having been repurposed, sort of, at least, the “Sent from my iPhone” signature is now used as an apology for poor spelling, grammatical errors or simply a lack of content. By reminding people that an iPhone was used to construct an email, the composer is essentially making sure people know why there may be errors, or why their reply was a sentence or two long. It’s a disclaimer of sorts, and it makes plenty of sense.

This is also confirmed by researchers Caleb T Carr and Chad Stefaniak, who came to the same conclusion in their paper Sent From My iPhone: The Medium and Message as Cues of Sender Professionalism in Mobile Telephony. It’s a mouthful, but it’s spot in this regard.

Those who remember a time even before the iPhone will remember that BlackBerry devices offered a similar signature at the time. RIM, however, is now all but irrelevant. Who knew a simple email signature would outlive RIM with regards to relevance?

Not the company itself, that’s for sure.


(Source: ResearchGate)

You might also like to check out:

Related Stories

Let’s block ads! (Why?)

Redmond Pie


Food Review: Putien restaurant Kitchener Road – Michelin one star winner

Putien restaurant Kitchener Road – Michelin one star winner

What can be more rewarding being recognized and awarded the 2016 Michelin Guide Singapore one star? This is probably the best endorsement for Putien restaurant at Kitchener road to acknowledge for their culinary skills and exceptional service standards.

Putien restaurant don’t just serving good food, it serves hospitality with human touch. We were at the Kitchener road Putien restaurant for dinner, two tables of diners were celebrating someone birthday and the Putien staffs gathered around the tables formed the choir with the Putien’s own version of birthday theme, interesting?

PUTIEN cuisine carries the essence of Putien’s spirit – Tasty, Simple & Heart-Warming Comfort Food, nothing too fanciful but dishes served are unpretentious and invigorating.

Braised Pig Intestine 14.5

Putien restaurant kitchener road 1

Nine-fold Intestine hand folded manually loop after loop and braised with spices to give the right springy texture, completely no pork stench with every bite was simply lovely.

Baked Putien clams on Hot Plate 20.9 / 31.9

Putien restaurant kitchener road 3

The imported clams are harvested from the beach along the Putien area, select only the perfect right size of 6cm which are the most ideal size for its meaty, juicy and full of goodness texture. A dip on the bed of salt served with the baked clams makes a perfect enjoyment to the taste sensory.

Steamed Putien Clams with Wine 20.9 / 31.9

Putien restaurant kitchener road 5

The Putien clams can be experienced in different way, the chef recommended the steamed clams with wine, the clams were cooked with wine and blended well with the natural juices from the clam, the combination was a pot of beautifully brewed broth full of the sweet-savoury taste.

Deep Fried Pigs Trotters with Salt & Pepper 5.9 per pc and min 2 pcs

Putien restaurant kitchener road 4

Deep fried plus pig trotters with salt scare many health conscious people off with its name. Specifically using only 7-inch pig trotter from Australia, each trotter then goes through a 12-hour-long culinary method before being served, the crunchy skin and the tantalizing collagen rich content make this sinfully delicious dish irresistible. High cholesterol? Forget it! Let the guilt feel later.

Bamboo Herbal Prawn 5.9

Savour the sweetness of live prawns, with the light fragrance of nourishing chinese herbs such as angelica root and chinese wolfberries infused in chinese wine.

Sambal White Water Snowflake 12.9 / 18.9

Putien restaurant kitchener road 7

White water snowflake is a type of water-grown green vegetables not easily available and is imported from Taiwan, it has a crisp texture and stir fried with sambal created a veggie dish that was refreshing and salivating.

PUTIEN Lor Mee 9.5 / 18.5 / 27.5

Putien restaurant kitchener road 8

Silky Putian noodles with pork belly, prawn and clam braised in luscious gravy.

Hot Yam Paste with Ginkgo Nuts 4.9

Putien restaurant kitchener road 10

Smooth, delicate texture of yam paste with ginkgo nuts and just the right level of sweetness that leaves you yelling for more.

Our Verdict: Putien restaurant Kitchener Road

At Putien Kitchener road, the food may seem to be ordinary and down to earth type of ingredients, however, it is the simplicity that speak for the volume, we enjoyed every delicacy created by the chefs and the highly satisfaction of the gastronomical experience that it will always hold a place in our heart.

Putien restaurant Kitchener Road

A:127 Kitchener road, Singapore 208514

T:+65 6295 6358

Lunch:11.30am-3pm (Last Order: 2.30pm)
Dinner:5.30pm-10.30pm (Last Order:10pm)

Let’s block ads! (Why?)

I Eat & Eat


Apple’s 2017 iPhone Once Again Rumored To Axe Physical Home Button

By | August 26th, 2016

A new report is focusing on Apple’s potential plans to introduce a dedicated iPhone for the Japanese market with support for the country’s FeliCa payment technology, but also briefly touches on the possibility of Apple entirely removing the iconic Home button from the device in the 2017 iPhone.

Apple’s 2016 iPhone range – likely to be named the iPhone 7 and iPhone 7 Plus – will be unveiled to the world next month at a dedicated event, but rumors are already beginning to circulate about the ongoing future of the range.


This is by no means the first time that it’s been suggested that Apple holds internal plans to remove the mechanical Home button from the iPhone. The existing Home button has been one of the ever presents on Apple’s iPhone range after being introduced on the company’s first smartphone back in 2007, and has been a regular feature on every model since. With that said, there is growing speculation that Apple will look to move across to OLED display technology from 2017 onwards, which in turn will bring a new focus allowing the user to control and interact with the device entirely through the new display.

As part of that focus, the Wall Street Journal had initially floated the idea of Apple removing the Home button in favor of a touch-sensitive option that would potentially be integrated into a full device touch panel on the front of the future iPhone. To back that claim up, and to corroborate this latest report, KGI Securities has also reported on its belief that Apple will ship an all-glass design in the very near future.

They often say that there’s no fuel without fire, and given the fact that this rumor continues to surface, it’s very likely that there’s some substance to it. The challenge for Apple will actually be producing a beautiful design that manages to integrate the same functionality that the current Home button provides, but without the inclusion of a physical button.


The 2016 iPhone, which is due for launch next month, will be the first iPhone to ship to market without the inclusion of the 3.5mm headphone jack, which in itself proves that the company is more than willing to make radical design changes for the greater good. How would you feel about an all-glass iPhone without the Home button?

(Source: Bloomberg | Top image: iPhone 7 concept render by Martin Hajek)

You may also like to check out:

Related Stories

Let’s block ads! (Why?)

Redmond Pie


River South (Hoe Nam) Noodles House (河南肉骨大蝦面) @ Tai Thong Crescent – Super Shiok Prawn Noodle


River South (Hoe Nam) Noodles House (河南肉骨大蝦面) is a well known prawn noodle stall in Macpherson area which was first established in 1971. I probably should not labelled it as a stall as they owned the entire coffeeshop selling the popular prawn noodles. Over the years, a simple bowl of prawn noodle has included more variety to suit the taste and request of customers such as pork ribs, pig tails, pig intestines and even baby abalone.

Prawn Noodle Soup with Pig Tails 4.2/5

There is around 10 variety of prawn noodles available at the stall. First I tried the Prawn Noodle Soup with Pig Tails ($ 5.50/$ 7.50/$ 10). I had the medium size at $ 7.50 which comes with 3 huge prawns and succulent pig tails. I like the fact that the prawns are peeled, leaving on the head and tail. It allows for easy consumption and at the same time enhanced the presentation. The cloudy soup was sweet and robust with the beautiful prawny flavour. If you need a further kick to the soup, you can help yourself to the chilli powder on the table.

Prawn Noodle Dry with Pork Ribs 4.5/5

Beside the prawn noodle soup with pig tails, I also tried the Prawn Noodle Dry with Pork Ribs ($ 5.50/$ 7.50/$ 10). The noodle and soup is served separately. I find the soup tasted sweeter compared to the prawn noodle soup version. I suspect this is because of the noodle in the soup diluting it, reducing the sweetness. The other highlight of the dry version is the chilli sauce and fried shallot that enhanced the whole enjoyment of the dish.


Actually this is not my first visit to the stall. I tried to check out the place on several occasions but I have ended in disappointment. Not sure why but it was closed during my previous visits. It seems like they don’t really follow their business hours. Hence do prepare for disappointment if you plan to check out the place.

River South (Hoe Nam) Noodles House
31 Tai Thong Crescent
Singapore 347859
Tel: +65 62819293
Nearest MRT: Potong Pasir (NE Line)

Opening Hours:
Tue-Sun: 6am – 430pm, 6pm – 430am
(Closed on Mon)

1) Alight at Potong Pasir MRT station. Take Exit B. Turn left and walk down Upper Serangoon Road. Turn left onto Tai Thong Crescent. Continue on Tai Thong Crescent and walk to destination. Journey time about 6 minutes. [Map]

Let’s block ads! (Why?)

SG Food on Foot | Singapore Food Blog | Best Singapore Food | Singapore Food Reviews


How to Use AMP with WordPress

AMP is a communal efforts that promises a better page load performance for websites in the mobile environment. But, as you can find from our previous tutorial, you will have to sacrifice fancy stuff from your website, and strictly follow the rules, comply with guidelines, and get pages validated. It sounds like a lot to do, doesn’t it?

10 Important Accelerated Mobile Pages (AMP) Components You Should Know

10 Important Accelerated Mobile Pages (AMP) Components You Should Know

Accelerated Mobile Pages or AMP is Google’s initiative to make the mobile web faster. To achieve this goal,…Read more

Fortunately, if you’ve built your website with WordPress, you can apply AMP to your website in a snap using a plugin named AMP-WP. It is shipped with more features than what meets the eye. So, let’s see how it works.


To begin with, login to your website, go to Plugins > Add New screen. Search for “AMP; install and activate the one from Automattic.

Once activated, you can view the AMP-converted post by adding the /amp/ trail at the end of the post URL (e.g., or with ?amp=1 (e.g. if you are not using the Pretty Permalinks feature on your website.

And as you can see above, the post has been given basic stylings, which you can further customize.

To note

There are a few things you should know about the state of the plugin at the moment:

  • Archives — Category, Tag and Custom Taxonomy — are currently not supported. They will not be converted into AMP-compliant format. However, Custom Post Types can be initiated into AMP through a Filter.
  • It does not add in a new setting screen in the Dashboard. Customization is done at the code level with Actions, Filters, Class.
  • The plugin does not currently encompass every AMP custom elements such as amp-analytics and amp-ad out of the box. If you need these element you will have to include it by hooking into the Actions or Filters of the plugin.
How to Use WordPress Action Hooks in Theme Customization

How to Use WordPress Action Hooks in Theme Customization

WordPress child themes give a relatively easy way to customize the look and feel of a theme. If…Read more


The plugin provides numerous Actions and Filters that provides flexibility over customizing the styles, the page content, and even the HTML markup of the AMP page as a whole.


I’m sure this is one thing that you want to change immediately after activating the plugin, such as changing the header background color, the font family, and the font size to better match your website brand and personality.

To do so, we can employ the amp_post_template_css Action in the functions.php file of our theme.

 function theme_amp_custom_styles() { ?>         nav.amp-wp-title-bar {                 background-color: orange;         } <?php } add_action( 'amp_post_template_css', 'theme_amp_custom_styles' ); 

If we look through the Chrome DevTools, these styles are appended within the <style amp-custom> element, and overrides the preceding style rules. Hence the orange background color is now applied to the header.

You can proceed writing the style rules as you normally do. But, bear in mind a few restrictions, and keep the style sizes to below 50Kb. If ever in doubt, please refer to our previous article on how to get your AMP pages validated.


If you seem to have to change a lot beyond just the styling, you migh twant to look into customizing the entire Template. The plugin, amp-wp, provides a number of built-in templates, namely:

  • header-bar.php
  • meta-author.php
  • meta-taxonomy.php
  • meta-time.php
  • single.php
  • style.php

These templates are much like the regular WordPress template hierarchy.

Each of these templates can be taken over by providing file of the same name under the /amp/ folder in the theme. Once these files are in place, the plugin will pick them up instead of the default files, and allow us to change the output of these templates entirely.

 twentytwelve ├── 404.php ├── amp │   ├── meta-author.php │   ├── meta-taxonomy.php │   ├── single.php │   └── style.php 

You can rewrite the entire styles through the style.php file, or modify the entire AMP page structure to your need with the single.php. Still, you will have to keep the change to comply with AMP regulations.

List of Hooks and Filters

As mentioned earlier, this plugin is shipped with a number of Actions and Filters. It’s not possible to cover each in this article. But we can go with a cheatsheet, the summary, as well as the snippets you need:


The amp_init; action is useful for plugins that rely on AMP for their plugin to work; it runs when the plugin is already initiated.

 function amp_customizer_support_init() {         require_once dirname( __FILE__ ) . '/amp-customizer-class.php'; } add_action( 'amp_init', 'amp_customizer_support_init' ); 

Similar to wp_head action, we can use amp_post_template_head to include additional elements within the head tag in AMP pages like meta, style, or script.

 function theme_amp_google_fonts() { ?>         <link rel="stylesheet" href=",400italic,700,700italic%7CRoboto+Slab:400,700&subset=latin,latin"> <?php } add_action( 'amp_post_template_head', 'theme_amp_google_fonts' ); 

amp_post_template_footer this Action is similar to the wp_footer.

 function theme_amp_end_credit() { ?>         <footer class="amp-footer">                 <p>&copy; 2016</p>         </footer> <?php } add_action( 'amp_post_template_footer', 'theme_amp_end_credit' ); 

amp_content_max_width is used to set the maximum width of the AMP page. The width will also be used to set the width of embedded elements like a Youtube video.

 function theme_amp_content_width() {         return 700; } add_filter( 'amp_content_max_width', 'theme_amp_content_width' ); 

amp_site_icon_url is used to set the icon — favicon and Apple icon — URL. The default falls to the image uploaded via the Site Icon interface, which was introduced in version 4.3.

 function theme_amp_site_icon_url( ) {     return get_template_directory_uri() . '/images/site-icon.png'; } add_filter( 'amp_site_icon_url', 'theme_amp_site_icon_url' ); 

amp_post_template_meta_parts is for when you need to customize the meta data output of the post, such as the author name, the category, and the timestamp. Through this filter you can shuffle the default order, or remove one of the meta out of the AMP page.

 function theme_amp_meta( $ meta ) {          foreach ( array_keys( $ meta, 'meta-time', true ) as $ key ) {                 unset( $ meta[ $ key ] );         }          return $ meta; }; add_filter( 'amp_post_template_meta_parts', 'theme_amp_meta' ); 

amp_post_template_metadata is for customizing the data structure in AMP pages. The following example shows how we provide the site logo that will be shown in the AMP carousel in the Google search result, and remove the page modified timestamp.

 function amp_schema_json( $ metadata ) {          unset( $ metadata[ 'dateModified' ] );          $ metadata[ 'publisher' ][ 'logo' ] = array(                 '@type' => 'ImageObject',                 'url' => get_template_directory_uri() . '/images/logo.png',                 'height' => 60,                 'width' => 325,         );         return $ metadata; } add_filter( 'amp_post_template_metadata', 'amp_schema_json', 30, 2 ); 

amp_post_template_file this is an alternative way to override template files. It is useful if you prefer to host your custom AMP template files in another directory other than /amp/.

 function theme_custom_template( $ file, $ type, $ post ) {     if ( 'meta-author' === $ type ) {         $ file = get_template_directory_uri() . '/partial/amp-meta-author.php';     }     return $ file; } add_filter( 'amp_post_template_file', 'theme_custom_template', 10, 3 ); 

amp_query_var is used to change the AMP page endpoint when the URL Permalink is enabled. By default it is set to /amp/. Given the following, the AMP page is now accessible by adding /m/ on the URL (e.g.

 function custom_amp_endpoint( $ amp ) {     return 'm'; } add_filter( 'amp_query_var' , 'custom_amp_endpoint' ); 

Let’s block ads! (Why?)


Matsusaka Beef Fair In Singapore – Here Is Your Chance To Try The Best Beef From Japan

Matsusaka Beef

There will be a Matsusaka Beef Fair in Singapore from 01 to 11 Sep 2016 – this is one food fair you do not want to miss.

Most people are probably familiar with Kobe beef, but have you heard of Matsusaka beef? Also known as Japanese Black, Black-haired Wagyu or Kuroge Washu, Matsusaka beef from the Mie Prefecture is, in fact, a grade higher than Kobe beef.

The superior A4 grade Matsusaka beef is flown directly from Japan just for this occasion. Here is your chance to try Matsusaka beef in Singapore. 

Matsusaka beef is prized as one of the top three beef selections in Japan due to the strict pedigree requirements and breeding guidelines that have been imposed.

Only cattle that are reared by certified farmers, and are born and raised in the Matsusaka production tea for more than 900 days are considered to be qualified as a “Special Grade Matsusaka Cattle”.

Matsusaka Beef Yakiniku M

Matsusaka Beef has one of the highest fat-to-meat ratios, and it literally melts in your mouth, with an unbeatable creamy texture and a sweet aftertaste.

A total of 10 participating restaurants at Japan Food Town will be creating special dishes that incorporate the top-notch Matsusaka beef.

Have the premium meat straight in the form of Shabu Shabu or Sukiyaki (from S$ 50.90++) at Shabu Shabu Tajimaya, which will offer an all-you-can-eat buffet. Imagine all the Matsusaka beef you can indulge in!

Have the premium meat straight in the form of Shabu Shabu or Sukiyaki (from S$ 50.90++) at Shabu Shabu Tajimaya, which will offer an all-you-can-eat buffet. Imagine all the Matsusaka beef you can indulge in!

If you can’t go without carbs, head to Inaniwa Yosuke to have a bowl of Matsusaka Beef Tsuke Men (S$ 29.80++) which incorporates cold Inaniwa udon with hot Matsusaka Beef dipping sauce.

The prices will range from S$ 9.80 to S$ 200 at the different outlets.

Japan Food Town
Wisma Atria Shopping Centre
435 Orchard Road
Singapore 238877
Nearest Station: Orchard

Let’s block ads! (Why?)



8 AMP Components for Social Media Integration

The biggest conflict that Google’s mobile web standard, Accelerated Mobile Pages needs to solve is making mobile sites faster, while keeping them functional & rich in content. These days rich and engaging content can hardly be imagined without embeds from popular social media sites — tweets, videos, audios, posts, photos.

Beginner’s Guide to Accelerated Mobile Pages (AMP)

Beginner’s Guide to Accelerated Mobile Pages (AMP)

Accelerated Mobile Pages is Google’s initiative that intends to solve the biggest problem of the mobile web –…Read more

Extended AMP Componentsamong other great features — provide a great way to integrate AMP documents with different social content types.

How Extended AMP Components Work

At the core of AMP’s philosophy there are Google’s best performance practices. To improve page load times, the AMP standards restrict how you can use front-end technologies. For instance, you cannot use custom JavaScript, external stylesheets, and any HTML element that loads external resources, such as the <img> tag.

In exchange, you get a bunch of AMP Components you can use to display external resources, such as images, videos, audios, advertisements, etc. on your site.

AMP Components are specific HTML tags that can be used similarly to ordinary HTML tags. A few of them are built in to the AMP runtime, while the majority works as extensions. Components that makes social media integration possible on AMP pages are all extended components.

10 Important Accelerated Mobile Pages (AMP) Components You Should Know

10 Important Accelerated Mobile Pages (AMP) Components You Should Know

Accelerated Mobile Pages or AMP is Google’s initiative to make the mobile web faster. To achieve this goal,…Read more

Extended AMP Components require you to import the belonging script in the <head> section of your AMP HTML document. As AMP is an open-source project, the number of extended components may grow in the future.

In this post we have collected a handful of AMP Components that can help you with social media integration. Keep in mind that the versions of the scripts may change over time, so always check out the documentation before you include them on your site.

1. amp-facebook

<amp-facebook> makes it possible to embed a Facebook post or video into an AMP page.

You always need to specify the dimensions of the embedded post, which means you need to add a width and a height attribute with values in integer pixels. You can find the proper dimensions by clicking on the “Embed” menu on the top of the Facebook post.

You’re also required to add the URL of the given post in the data-href attribute. You can find the URL by clicking on the timestamp of the Facebook post, and the browser will insert the unique URL into the address bar.

If you want to embed a video without the belonging Facebook post, add the optional data-embed-as="video" attribute

If you want to make your embed responsive use the layout attribute with the "responsive" value. You can also use the optional layout attribute on any other AMP component to control its layout.

Code example:

 <amp-facebook width="500" height="485" layout="responsive"     data-href=""> </amp-facebook> 

Code preview:

Script to include:

 <script async custom-element="amp-facebook"     src=""> </script> 

2. amp-twitter

You can embed tweets into AMP pages by using the <amp-twitter> component.

To do so, you need to specify the ID of the tweet in the data-tweetid attribute. You can modify how the tweet is displayed by adding any of the
display options of the Twitter APi as a data-* HTML5 attribute.

For instance, in the example below I used the Twitter API’s linkColor display option as data-link-color (its data-* format) to change the default link color to the color uses on its Twitter account.

Code example:

 <amp-twitter width="506" height="338" layout="responsive"     data-tweetid="765234426166915072" data-link-color="#698aba"> </amp-twitter> 

Code preview:

The <amp-twitter> component is not perfect yet, Github docs says that Twitter does not currently provide an API that yields fixed aspect ratio Tweet embeds.

This means you need to manually set the width and height attributes, as the AMP runtime sometimes doesn’t display a part (usually the bottom) of the tweet.

It’s always a good idea to check how your embedded tweets look like before publishing the AMP page.

Add a Placeholder

Although it’s not required, the documentation recommends adding a placeholder in case the tweet doesn’t load at once.

The placeholder attribute can be used on each AMP component. The placeholder is shown immediately if the final resources are not available. When the AMP element loads, it hides its placeholder.

Take a look at how the above example code looks like with a placeholder. On Twitter, I simply clicked on the Embed Tweet button, copy-pasted the embeddable blockquote (without the script at the end), and added the placeholder attribute to the <blockquote> tag.

Code example with placeholder:

 <amp-twitter width="506" height="338" layout="responsive"   data-tweetid="765234426166915072" data-link-color="#698aba">   <blockquote placeholder class="twitter-tweet" data-lang="en">     <p lang="en" dir="ltr">How to Validate Accelerated Mobile Pages       (<a href="">#AMP</a>)       <a href="">#google</a>       <a href="">#seo</a>       <a href=""></a>     </p>     — Hongkiat (@hongkiat)       <a href="">         August 15, 2016</a>   </blockquote> </amp-twitter> 

Script to include:

 <script async custom-element="amp-twitter"     src=""> </script> 

3. amp-instagram

With <amp-instagram>, you can embed Instagram photos and videos into your AMP pages.

You are required to specify the dimensions of the embed with the width and height attributes, and you also have to add the identifier of the Instagram photo or video using the data-shortcode attribute.

You can find the identifier at the end of the URL, for the example for the photo below the URL is, so I need to use -PFt7tF8Km as value for the data-shortcode attribute.

Code example:

 <amp-instagram data-shortcode="-PFt7tF8Km"     width="400" height="400" layout="responsive"> </amp-instagram> 

Code preview:

For responsive layouts, AMP automatically calculates the required space which also includes the “Instagram chrome” (account name, date, number of likes, etc).

This means you can use any value for width and height, until the two values are equal (Instagram photos are usually square), as the AMP runtime will resize the image according to the available space.

If the photo doesn’t happen to be a square, you have to specify its actual width and height values.

For fixed layouts, you need to include the extra space (top and bottom: +48 px, left and right: +8px) needed for the Instagram chrome when you calculate the image dimensions.

Script to include:

 <script async custom-element="amp-instagram"     src=""> </script> 

4. amp-pinterest

<amp-pinterest> allows you to embed either a Pin widget or a Pin It button into an AMP HTML document.

Embed a Pin Widget

To embed a Pin widget, you have to specify the dimensions, the URL of the pin using the data-url attribute, and you also need to add the data-do="embedPin" attribute.

Code example (default size):

 <amp-pinterest width="245" height="330" data-do="embedPin"   data-url=""> </amp-pinterest> 

As the default Pin widget is quite small, you can also opt for a bigger version by using the data-width="medium" attribute.

Code example (medium size):

 <amp-pinterest width="355" height="410" data-do="embedPin"   data-width="medium"   data-url=""> </amp-pinterest> 

Code preview (medium size):

Display a Pin It Button

You can also add a Pin It button to your AMP page with the help of the <amp-pinterest> component. Apart from the width and height dimensions, you’re required to specify four attributes in order to embed the Pin It button:

  1. data-do="buttonPin" to let the AMP runtime know that this will be a Pin It button
  2. data-url with the URL you want share
  3. data-media with the absolute URL of the image you want users to pin
  4. data-description with the description you want to appear in the Pin create form

There are many different button sizes, to choose from, check the docs for all sizes available.

Code example:

In this example, I created a Pin It button that would allow users to pin an image from this former post. I used the small rectangular button size.

 <figure>   <amp-img src="image.jpg" width="640" height="385"         alt="Image Example">   </amp-img>   <amp-pinterest height="28" width="56" data-do="buttonPin"         data-url=""         data-media=""         data-description="Best 5 Free Twitter Clients for Android">    </amp-pinterest> </figure> 

Code preview:

Note that you need to use additional CSS to display the Pin It button on top of the image.

You can also create a Pinterest Follow button by using the data-do="buttonFollow" attribute, and specifying the name you want to display inside the Follow button in the data-label & the URL of your account in the data-href attribute.

Code example (Follow button):

 <amp-pinterest height="20" width="87" data-do="buttonFollow"   data-href=""   data-label="Hongkiat"> </amp-pinterest> 

Script to include:

 <script async custom-element="amp-pinterest"     src=""> </script> 

5. amp-soundcloud

SoundCloud is a popular audio distribution platform where users can share their music. With the help of the <amp-soundcloud> component you can play SoundCloud tracks right from your AMP HTML page.

This component can only be used with fixed-height layout which means you only need to specify the height, and the width will be calculated by the AMP runtime. As a result the embedded SoundCloud audio player will fill all the available horizontal space.

The <amp-soundcloud> component can be displayed in either classic or visual mode. You can choose from the two modes by setting the value of the data-visual attribute to either true or false (the default is false).

In both modes, you have to use the data-trackid attribute to specify the identifier of the audio; you can find the audio ID by clicking the Share button below the audio player on, and looking up the long-form URL inside the Embed code.

Classic Mode

The Classic Mode displays a small thumbnail image on the left, and the audio player on the right. You can get the proper value for the height attribute from the Embed code on

In Classic Mode, you can specify the color of the audio player if you want using the data-color attribute (you cannot do this in Visual Mode).

Code example (classic mode):

 <amp-soundcloud height="166" layout="fixed-height"       data-trackid="264419072" data-color="ff5c44"> </amp-soundcloud> 

Code preview (classic mode):

Visual Mode

In Visual Mode, the featured image spans behind the audio player. Here, you can also find the proper height belonging to Visual Mode in the Embed code on

Code example (visual mode):

 <amp-soundcloud height="450" layout="fixed-height"     data-trackid="264419072" data-visual="true"> </amp-soundcloud> 

Code example (visual mode):

If you want to embed a private audio, use the optional data-secret-token attribute.

Script to include:

 <script async custom-element="amp-soundcloud"     src=""> </script> 

6. amp-vine

Vine is a short-form video sharing site on which you can share 6-second long videos with your friends. The <amp-vine> component makes it possible to easily embed Vine videos into your AMP HTML pages.

This AMP component is quite simple, you only need to add the dimensions, and the ID of the Vine video in the data-vineid attribute. You can get the ID from the URL of each Vine.

As Vines are squares, if you use the responsive layout, the same rule applies as with Instagram embeds; you can add any value to the width and height attributes, until they’re equal they’ll properly work.

Code example:

 <amp-vine width="400" height="400"     layout="responsive" data-vineid="hKQjlJPtWKT"> </amp-vine> 

Code preview:

Script to include:

 <script async custom-element="amp-vine"     src=""> </script> 

7. amp-youtube

You can embed YouTube videos on AMP pages with the help of the <amp-youtube> component.

To do so, you need to add the dimensions, plus the ID of the video in the data-videoid attribute. When specifying width and height, it’s important to pay attention to the aspect ratio.

You can also use the parameters of YouTube embeds in AMP documents, just insert the name of the parameter after the data-param- prefix.

Code example:

In this example, I made use of the start YouTube parameter in the data-param-start attribute in order to make the video begin at 43s.

   <amp-youtube width="480" height="270" layout="responsive"       data-videoid="n0PVwYoKQmo" data-param-start="43">   </amp-youtube> 

Code preview:

Script to include:

 <script async custom-element="amp-youtube"     src=""> </script> 
Other Video Sharing Services

AMP also has components related to other video sharing services, that work similarly to <amp-youtube>. You can use the following extended AMP components for video embeds from providers other than YouTube:

8. amp-social-share

Apart from social media embeds, you can also display social share buttons on your AMP pages by using the <amp-social-share> component.

The social share feature is preconfigured for some providers, but with the right settings you can use the <amp-social-share> component for any other social share buttons.

Pre-Configured Share Buttons

Pre-configured share buttons don’t require too many settings; you have to define the width (default is 60px) and height (default is 44px) attributes, and the name of the social media provider in the type attribute.

With Facebook, you’re also required to specify the Facebook app id in the data-param-app_id attribute.

Code example:

 <div>   <!-- Facebook -->   <amp-social-share type="facebook" width="60" height="44"       data-param-app_id="254325784911610">   </amp-social-share>    <!-- Twitter -->   <amp-social-share type="twitter" width="60" height="44">   </amp-social-share>    <!-- Google Plus -->   <amp-social-share type="gplus" width="60" height="44">   </amp-social-share>    <!-- Pinterest -->   <amp-social-share type="pinterest" width="60" height="44">   </amp-social-share>    <!-- Linkedin -->   <amp-social-share type="linkedin" width="60" height="44">   </amp-social-share>    <!-- Email -->   <amp-social-share type="email" width="60" height="44">   </amp-social-share> </div> 

Code preview:

The pre-configuration makes assumptions that the URL you want to share is the canonical URL of the current page, and the text you want to include in your share is the page title.

If you want to use another config, you can do that with the following three optional attributes:

  1. data-text for the text you want to include in the share
  2. data-url for the URL you want to share
  3. data-attribution for the name of the person or provider you want your share to be attributed to
Unconfigured Share Buttons

To display social share buttons of unconfigured providers, such as WhatsApp, you need to specify the custom protocol of the provider in the data-share-endpoint attribute. Check out in the docs how you can do this.

Script to include:

 <script async custom-element="amp-social-share"     src=""> </script> 

Let’s block ads! (Why?)