11 Places To Celebrate Authentic Local Culture in Germany

728*90



This post is proudly produced in partnership with the German National Tourist Board.

As one of Europe’s most popular destinations, Germany effortlessly combines the classic with the contemporary, the comfortable with the cutting-edge. A consummate all-rounder, this central European hub offers the full gamut of experiences, from urban thrills and nature retreats to family-friendly adventures and endless cultural treats.

Tradition meets modernity when it comes to the themes of TASTE and CRAFT, with centuries-old recipes and handicrafts sitting easily alongside contemporary innovations and creative updates. Whether it’s savoring delicious dishes and world-class wines or shopping for fashion or furniture, you’ll be able to find a generous array of styles and flavors to fit what you’re looking for.

The country’s GREEN credentials are well established and growing each year, with more and more hiking and cycling trails positioned to take advantage of abundant nature and national parks. And then there’s that je ne sais quoi quality that is Germany’s FLAIR, present not only in sensational landscapes but also metropolitan charms ranging from the exciting and vibrant to the quaint and traditional, spanning architecture and art in all its glorious forms.

Experience the country’s diverse regions — and diverse local cultures — for yourself. Here’s a list of 11 destinations for any dream trip to Germany, along with just some of the delights they hold in store.

TASTE: North Rhine-Westphalia has an impressively diverse and extensive culture of beer and brewing. Kölsch — the local style of beer in Cologne — is a light, top-fermented beer that’s traditionally enjoyed in narrow 200ml glasses. Alt beer, ostensibly Kölsch’s friendly rival, hails from the Lower Rhine and is associated with Düsseldorf. But these two are just the tip of the iceberg that includes a slew of craft beers produced by smaller breweries and some of Europe’s best-known Pilsners (Krombacher, Warsteiner, and Veltins, to name but a few).

CRAFT: Mustard is one of the oldest spices in the culinary world. At the historic Mustard Mill in Monschau, in Eifel National Park, owner Ruth Breuer — representing the fifth generation of her family to run the establishment — offers insights into how this world-famous condiment is made. Visitors can purchase mustard products from the shop, dine on hearty local cuisine at the mill’s adjoining Schnabuleum Restaurant, and visit the mill’s wine cellar.

GREEN: It often surprises outsiders to learn that more than half of North Rhine-Westphalia — the most populous state in Germany — is covered in forests, rivers, meadows, and fields. And with all that green space, it’s no wonder NRW is home to a bevy of wild animals. Wild horses roam the 400-hectare Merfelder Bruch nature preserve near Dülmen. Hike around for a chance to see these beautiful creatures. Flamingos are known to spend their summers in the Münsterland region, and you may even catch a glimpse of long-haired highland cattle. On the Lower Rhine River, you can encounter a gaggle of wild Artic geese and great white egrets. You may even spot some beaver or wildcat tracks. Elsewhere, you can encounter wild geese, bees, bison, and entire colonies of butterflies.

FLAIR: Münster’s appeal is as architectural as it is historical. Start with the stunning Town Hall, where the Peace of Westphalia was concluded; admire the Prinzipalmarkt, with its gabled houses; and check out the opulent Schloss Münster (city palace), the former residence of the prince-bishop, which was constructed from 1767 to 1787. Don’t miss the harbor district, which has been transformed into a leisure hub with restaurants, clubs, and art projects. The city and surrounding region are bicycle-friendly too, especially along the 100-CASTLES-ROUTE and the handsome and distinctly car-free Ringpromenade.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a86aa’;
var atts = {“lat”:”51.40438262027598″,”lng”:”7.303264066044874″,”zoom”:”7″};
var markers = [{“lat”:”50.97080054591506″,”lng”:”6.954983977212038″,”title”:”Colonge”},{“lat”:”50.597410610382845″,”lng”:”6.4260577442899685″,”title”:”Eifel National Park”},{“lat”:”50.56255340177363″,”lng”:”6.2371974829126176″,”title”:”Mustard Mill”},{“lat”:”51.97372232505887″,”lng”:”7.63112227009788″,”title”:”Mu00fcnster”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: The city of Baden-Baden is a goldmine for gourmets, but it’s also a destination for connoisseurs of fine wines. In the surrounding Rebland wine region, countless sun-drenched vineyards produce top-notch bottles of Riesling, Pinot Noir, Pinot Bianco, and Pinot Gris, as well as sparkling wine and schnapps. The lush views are just as impressive, dotted with castles, palaces, and endless rolling hills.

CRAFT: Baden-Baden is well known for its well-heeled consumer prowess, from high-end fashion stores to artisanal ateliers. Vickermann und Stoya, founded in 2005, is one of the city’s finest purveyors of handcrafted shoes made from leather and other elegant materials. Fully bespoke, their wares are ideal for a comfortable stroll along the elegant boutiques of the Kurhaus colonnades.

GREEN: The city is peppered with numerous green escapes, from well-maintained parks and gardens to the Merkur Mountain, the highest point in greater Baden-Baden. The place to be for memorable views and lovely sunsets, it can be reached by a traditional funicular railway, and there’s a launch for paragliders at the top, if you’re so inclined (or just want to watch).

FLAIR: One of Baden-Baden’s most iconic spots is the Kurhaus, which dates back to 1766 when it was built for the local margrave. Today it encompasses “the most beautiful casino in the world,” according to Marlene Dietrich, as well as elegant classical concerts by the venue’s philharmonic orchestra, top-notch cuisine at the restaurant The Grill, and cocktails at the Bernstein Club.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a889a’;
var atts = {“lat”:”48.744623665330465″,”lng”:”8.251880204506753″,”zoom”:”12″};
var markers = [{“lat”:”48.72451094187852″,”lng”:”8.176635169327378″,”title”:”Rebland Wine Region”},{“lat”:”48.75951143285252″,”lng”:”8.24097364234156″,”title”:”Vickermann und Stoya”},{“lat”:”48.766356758594384″,”lng”:”8.279827401589495″,”title”:”Merkur Mountain”},{“lat”:”48.760493937998234″,”lng”:”8.236377371177076″,”title”:”Kurhaus”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

TASTE: Mountains and meat seem like natural bedfellows, but times they are a-changing. The first-ever vegetarian mountain hut in the Alps — the Hündeleskopfhütte near Pfronten, located between Lindau and Füssen — eschews Schnitzel and roasted pork in favor of delicious vegan zucchini lasagna and cheese spätzle, all based on traditional family recipes.

CRAFT: The art of goldsmithing has been popular in Bavaria for centuries, and local jewelry designer Florian Blickenberger has committed to keeping this tradition alive in his own way. His unique designs are directly inspired by Bavarian landscapes — sparkling lakes and spectacular mountains — making them ideal local keepsakes.

GREEN: The Bavarian Forest National Park, located two hours east of Munich, is Germany’s first national park. It protects extensive woodland areas, mountain peaks, crystal-clear mountain streams, and Lake Rachelsee, the park’s only glacial lake. A popular highlight is the 1,300-meter treetop walk, with its 44-meter tower and glorious views.

FLAIR: Würzburg offers an idyllic setting amidst photogenic vineyards and architectural splendors that reflect its long history. Built in the middle of the 18th century by Balthasar Neumann and with an iconic ceiling fresco by Tiepolo, the Würzburg Residence is one of the most lauded European royal courts of its time, and has been a UNESCO World Heritage Site since 1981.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a8a66’;
var atts = {“lat”:”49.09019477149387″,”lng”:”11.17588539489963″,”zoom”:”7″};
var markers = [{“lat”:”47.59791321380631″,”lng”:”10.531411640453632″,”title”:”Hu00fcndeleskopfhu00fctte”},{“lat”:”47.83353525991186″,”lng”:”12.177847656024683″,”title”:”Florian Blickenberger”},{“lat”:”48.95980459017752″,”lng”:”13.39505937303235″,”title”:”Bavarian Forest National Park”},{“lat”:”49.79295698628702″,”lng”:”9.939987533874676″,”title”:”Wu00fcrzburg Residence”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: The Franconian city of Bayreuth has emerged in recent years as something of a culinary destination. Not only are Franconian classics endlessly reinterpreted throughout a variety of atmospheric restaurants, they’re also supported by a constellation of bakeries and confectioneries, butcher shops and breweries. Look out for the “Original Regional” label, a guarantee of local, sustainable produce.

CRAFT: In Bayreuth, a stop at Maisel’s Beer World is a must for beer lovers. This historic venue provides visitors insights into all aspects of the fascinating art of brewing, as well as the opportunity to sample the hoppy wares and stay for dinner in the adjacent Liebesbier restaurant.

GREEN: Beautiful Bayreuth is conveniently situated between two of the most stunning holiday regions in Germany. There are the Fichtel Mountains in the northeast, a major draw for hikers and cyclists with trails for all levels; and in the southwest you’ll find the romantic Franconian Switzerland, replete with pristine valleys, medieval castles, and climbing and bouldering options.

FLAIR: Bayreuth’s world-famous Margravial Opera House, today a UNESCO World Heritage Site, was the brainchild of the Margravine Wilhelmine, a prodigious artistic talent in her own right. Modeled on the greatest opera houses of the time in Vienna and Dresden, it was designed by the era’s most important theater architect, Giuseppe Galli Bibiena, and built between 1744-1748.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a8c36’;
var atts = {“lat”:”49.936461382183666″,”lng”:”11.581849312414665″,”zoom”:”9″};
var markers = [{“lat”:”49.94640423695206″,”lng”:”11.588715767129672″,”title”:”Margravial Opera House”},{“lat”:”50.03869908594578″,”lng”:”12.006094473012954″,”title”:”Fichtel Mountains”},{“lat”:”49.69329046829695″,”lng”:”11.506778230903905″,”title”:”Franconian Switzerland”},{“lat”:”49.94574680818472″,”lng”:”11.567019782863113″,”title”:”Maisel’s Beer World”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: In Berlin’s uniquely multicultural and experimental food scene, barely a week goes by without new restaurants or cafés springing up somewhere. Unusual spots to dine include an Israeli 24-hour breakfast joint (Benedict), Germany’s first Michelin-starred dessert restaurant (Coda Dessert Bar), and the first-ever vertical farm-to-table restaurant (Good Bank).

CRAFT: The best place to sample Berlin’s burgeoning street food culture is Kreuzberg’s Markthalle Neun, where regional and German products are sold next to stalls hawking delicious ethno-cuisine treats from Italy and India, Mexico and Sri Lanka. Moabit’s Arminiusmarkthalle also serves up traditional staples like Fischbrötchen alongside international dishes including fish & chips and barbecued beef brisket.

GREEN: What was once a city airport is now one of the largest public parks in Europe. Known as Tempelhofer Feld since the airport closed in 2010, the vast grounds — the size of about 450 soccer fields — are almost wholly used for recreation, drawing cyclists and kite surfers, picnickers and bird watchers.

FLAIR: The Artpark Tegel project began in 2015 with a large mural on the side of a residential building, an artistic approach to creating a sense of community. The work was so well received that the concept was expanded with a slew of pieces created by Berliners as well as international street-art luminaries.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a8df1’;
var atts = {“lat”:”52.52907469180972″,”lng”:”13.40822721549516″,”zoom”:”11″};
var markers = [{“lat”:”52.49008703700769″,”lng”:”13.427829067057196″,”title”:”Coda Dessert Bar”},{“lat”:”52.49690687868634″,”lng”:”13.323946455966723″,”title”:”Benedict”},{“lat”:”52.52549314032155″,”lng”:”13.36639584062579″,”title”:”Good Bank”},{“lat”:”52.502155423540714″,”lng”:”13.43207754247342″,”title”:”Markthalle Neun”},{“lat”:”52.52833706859483″,”lng”:”13.33869891733574″,”title”:”Arminiusmarkthalle”},{“lat”:”52.47587500094388″,”lng”:”13.402011362400028″,”title”:”Tempelhofer Feld”},{“lat”:”52.57714993617063″,”lng”:”13.27572849829866″,”title”:”Artpark Tegel”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: Bremerhaven’s Schaufenster Fischereihafen (translation: Shop Window Fishery Harbor) neatly combines maritime history with fantastic local gastronomy. The former fish-packing hall includes bars and restaurants selling shrimp, fish sausage, herring, and more, and there’s a smokehouse with a shop, a convivial pub, and a converted fish-shipping hall with cooking presentations.

CRAFT: Art is omnipresent in Bremerhaven. The city’s main art museum and gallery presents works from more than a hundred years of collecting, while the former house of landscape painter Paul Ernst Wilke is now a home and atelier for guest artists. The all-female project “Kunst-Werk – Werk-Kunst” in Alte Bürger is also worth seeking out. Small businesses such as a glass shipyard and a ceramics workshop produce unique handicrafts as well.

GREEN: Although Bremerhaven is most strongly identified with its maritime location, it’s also dotted with plenty of pleasant green spaces. The Luneplate Nature Reserve, for example, is home to tens of thousands of birds, while the Bürgerpark is popular for walking, jogging, and boating, and the family-friendly Speckenbüttel health park features a playground, pond, and tree-lined avenue.

FLAIR: Bremerhaven has much to offer those curious about maritime culture. The big-hitting attractions are the Climate Experience Center Bremerhaven, German Emigration Center, and German Maritime Museum, which has a submarine right next door. Don’t miss the Zoo at the Sea, where Nordic animals can be observed above and below water, and the accompanying North Sea Aquarium.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a8fc0’;
var atts = {“lat”:”53.53543838112801″,”lng”:”8.583293925102627″,”zoom”:”13″};
var markers = [{“lat”:”53.52221030522223″,”lng”:”8.588724896484642″,”title”:”Schaufenster Fischereihafen”},{“lat”:”53.540562302483664″,”lng”:”8.581770615407489″,”title”:”Kunstmuseum Bremerhaven”},{“lat”:”53.538126028536794″,”lng”:”8.579198440662694″,”title”:”Paul Ernst Wilke House”},{“lat”:”53.55273859943554″,”lng”:”8.571264686689142″,”title”:”Alte Bu00fcrger”},{“lat”:”53.499284474214065″,”lng”:”8.536126177365524″,”title”:”Luneplate Nature Reserve”},{“lat”:”53.54043594377677″,”lng”:”8.604200027579378″,”title”:”Bu00fcrgerpark”},{“lat”:”53.55273859943554″,”lng”:”8.571264686689142″,”title”:”Speckenbu00fcttel”},{“lat”:”53.543543960216326″,”lng”:”8.573792827169383″,”title”:”Climate Experience Center Bremerhaven”},{“lat”:”53.54522377880822″,”lng”:”8.574446471346894″,”title”:”German Emigration Center”},{“lat”:”53.54025872114997″,”lng”:”8.57696815600472″,”title”:”German Maritime Museum”},{“lat”:”53.54492670504309″,”lng”:”8.570463169498437″,”title”:”Zoo at the Sea”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: One of the tastiest treats to seek out in Dresden is the Dresdner Christstollen — a raisin pastry made exclusively by bakeries and confectioneries in and around the city. First mentioned as long ago as 1474, today it’s the focus of the Striezelmarkt, one of the world’s oldest Christmas markets.

CRAFT: Saxon prince elector Augustus the Strong was obsessed with porcelain and spent fortunes importing the “white gold” into Europe from China and Japan. The first European porcelain factory in Europe opened in Meissen, in 1710, and still operates today. After visiting, don’t miss Meissen’s beautiful small streets, castle, and Gothic cathedral.

GREEN: If you like palaces and castles backdropped by stunning natural scenery, Dresden and the surrounding Elbland is the perfect destination. Highlights include Dresden’s Royal Palace and Zwinger Court, Saxony’s first baroque palace in Dresden’s Great Garden; the summer residence known as Pillnitz, the greatest ensemble of Chinese-inspired architecture in Europe; and the hunting lodge of Moritzburg, which appears to float in the artificial lakes that flank it.

FLAIR: It was in 1736 that Johann Sebastian Bach traveled from Leipzig to Dresden to give a debut concert on the brand-new organ in the recently built Frauenkirche. Destroyed in 1945, along with Dresden’s entire city center, the church was rebuilt after the fall of the Wall as a symbol of peace and reconciliation, and Bach’s works are again played here.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a9186’;
var atts = {“lat”:”51.07933799299012,”,”lng”:”13.715587517133219″,”zoom”:”10″};
var markers = [{“lat”:”51.0526795939257″,”lng”:”13.737105646557184″,”title”:”Dresden Castle”},{“lat”:”51.01273104178462″,”lng”:”13.869644936988003″,”title”:”Pillnitz”},{“lat”:”51.167766538138935″,”lng”:”13.679463327083653″,”title”:”Moritzburg”},{“lat”:”51.15644753597537″,”lng”:”13.464396382905791″,”title”:”Meissen”},{“lat”:”51.05206222013898″,”lng”:”13.74205804001865″,”title”:”Frauenkirche”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: You won’t go hungry in Regensburg. Savor the various types of meat specialties along with sweet local Händlmaier mustard in the Wurst & Bier store, or enjoy a bratwurst in the historic Wurstkuchl (Sausage Kitchen). Sweet tooths can find chocolates for dessert at Café Prinzess, while the city also hosts three Michelin-starred restaurants.

CRAFT: The best way to discover Regenburg’s burgeoning handicraft scene is to join the Craft Walk, a special tour organized by the tourist board. The stroll merges the city’s history of medieval crafts and trades with contemporary stores and ateliers, including the milliner who made the famous hat from Alice in Wonderland, Stradivarius violins, woven baskets, chess boards, and shoes.

GREEN: As well as enjoying the myriad cultural treasures and architecture of this UNESCO World Heritage Site, visitors can now also benefit from the city’s commitment to sustainable culture. Practical information for all travelers on sustainable accommodation, dining establishments, shopping, and other activities is available at a special website (English version available in early 2023).

FLAIR: Regensburg, with its youthful Bavarian-Italian atmosphere, offers an energetic slew of events and festivities all year round. Alongside the famous concert festival in the Thurn and Taxis Palace in July, visitors can experience the Dult — a local beer festival held twice a year in spring and autumn — as well as festive Christmas markets all over the city during December, especially the world-famous market in the courtyard of the Thurn and Taxis Palace.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a935e’;
var atts = {“lat”:”49.014″,”lng”:”12.093″,”zoom”:”13″};
var markers = [{“lat”:”49.02078738231279″,”lng”:”12.099894555844074″,”title”:”Wurst & Bier”},{“lat”:”49.020460647721045″,”lng”:”12.094689711666593″,”title”:”Wurstkuchl”},{“lat”:”49.0148737590257,”,”lng”:”12.093359798172886″,”title”:”Thurn and Taxis Palace”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: A Gasterey was a lavish medieval feast given by the lord of a castle and high-ranking knights. The concept can still be enjoyed today at the Reichsburg Castle in Cochem, in the state of Rhineland-Palatinate. The castle is perched on a mountain peak over the town and the river Moselle; the meal includes hot beef soup and pork knuckle, followed by cheese and cake.

CRAFT: The town of Idar-Oberstein has been famous for its precious stones and jewelry for centuries, with kings and rulers proudly sporting locally found gems. It’s still home to many jewelry makers today, whose works are sold by luxury brands all over the world. The local German Gemstone Museum allows guests a peek into this sparkling world.

GREEN: The 360-meter-long Geierlay suspension bridge is considered the “Queen of Bridges” in the Rhineland-Palatinate region. It draws hikers from far and wide to admire both the technical mastery of the construction and the striking natural landscapes in the Hunsrück area, with its lush forests and numerous paths.

FLAIR: Eltz Castle, which stands on a rocky outcrop at the edge of the Eifel, just 5km from the river Moselle, is one of Germany’s most iconic and picturesque structures. Since 1157 it has been the seat of the Moselle’s noble Eltz family, who still run the property today. Guided tours bring the history of this remarkable building alive.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a950d’;
var atts = {“lat”:”50.142″,”lng”:”7.167″,”zoom”:”10″};
var markers = [{“lat”:”50.14234865971748″,”lng”:”7.167053809967592″,”title”:”Reichsburg Castle”},{“lat”:”50.17283214179105″,”lng”:”7.168641312389904″,”title”:”German Gemstone Museum”},{“lat”:”50.09015374796731″,”lng”:”7.341217355881184″,”title”:”Geierlay Bridge”},{“lat”:”50.205377950460196″,”lng”:”7.336568755885222″,”title”:”Eltz Castle”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: The Neinerlaa — regional Saxon dialect for “Nine Things” — is the name of the traditional Christmas dinner in the Ore Mountains, a UNESCO World Heritage Site since 2019 in the German state of Saxony. There are nine components of the meal, representing nine good wishes for the upcoming year, and you can find it year round at the restaurant Ratskeller Zum Neinerlaa in Annaberg-Buchholz, served on a patented plate.

CRAFT: The distinctive Moravian Stars that adorn Christmas trees and festive scenes around Germany and beyond have a very special history. The Saxon town where they’re still made, Herrnhut, was the birthplace of the Moravian Church. The stars started as a geometry exercise for children in the 18th century, while the current version, which can be disassembled, goes back to 1897.

GREEN: Hermann Prince von Pückler-Muskau lived a full and fascinating life, serving in various armies and traveling the world. He was also a self-taught genius of landscape architecture, as can be witnessed in the UNESCO-approved Muskau Park — which he established in 1815.

FLAIR: Weingut Klaus Zimmerling in Pillnitz, on the outskirts of Dresden, is a unique collaboration between Polish artist Malgorzata Chodakowska and German engineer Klaus Zimmerling. Their wines — made without herbicides or synthetic pesticides — have won many prestigious awards, but are also famed for the artwork on the labels as well as the creative decoration throughout the winery.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a96ba’;
var atts = {“lat”:”51.1351159739879″,”lng”:”13.325022889236767″,”zoom”:”7″};
var markers = [{“lat”:”50.58049867269362″,”lng”:”13.00281496939184″,”title”:”Ratskeller Zum Neinerlaa”},{“lat”:”51.01641514988721″,”lng”:”14.738274301139684″,”title”:”Herrnhut”},{“lat”:”51.55074763662718″,”lng”:”14.723131884768247″,”title”:”Muskau Park”},{“lat”:”51.00606900761538″,”lng”:”13.891431355913362″,”title”:”Weingut Klaus Zimmerling”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

 

TASTE: Wiesbaden’s vineyards are geographically part of the famed Rheingau wine-growing area. That means an abundance of renowned winemakers are based here, creating world-class Pinot Noirs, Rieslings, and more. You can visit local wine cellars (Gutsausschank) and taverns (Straußwirtschaft) and enjoy wine-related events, festivals, and hiking trails.

CRAFT: Art NouveauJugendstil in German — was a revolutionary utopian movement that used art to explore possibilities for an aesthetical­ly determined form of society. The south wing of the Museum Wiesbaden is home to the Jugendstil collection of Ferdinand Wolfgang Neess, whose 500 works create a compelling cross-section of the genre.

GREEN: Neroberg, a 245-meter-high hill within the Wiesbaden city limits, is a popular leisure-time destination that can be accessed via a funicular railway. As well as admiring the local vineyards and incredible views, visitors can enjoy the Opelbad, an outdoor swimming pool, and explore the Neroberg Nature Trail and Neroberg Climbing Course.

FLAIR: Wiesbaden has history galore, but at Café Maldaner — welcoming diners since 1859 — you can chow down on some delicious cakes while absorbing the stately nostalgia. The interior has a classic Viennese-style coffeehouse feel, with its striped walls, crystal chandeliers, and classical music soundtrack. The clientele is wonderfully diverse, as are the sweet treats: chocolate cakes, meringues, apple strudel, and more.

.map * {
font-family: sans-serif !important;
}
.info-window-link {
display: block;
margin-top: 10px;
padding: 3px 10px;
border-radius: 3px;
background-color: #0099ff;
color: white !important;
font-size: 12px;
text-align: center;
}
.info-window-link:hover {
text-decoration: none;
}

var _icons = {
red: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
orange: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_orange_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
},
yellow: {
url: ‘https://travelstoke.s3.amazonaws.com/assets/images/precise_marker_yellow_2x.png’,
size: { width: 22.8, height: 35.4 },
anchor: { x: 11.4, y: 35.4 }
}
};
var _styles = {
travelstoke: [
{
featureType: ‘administrative’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#999999’ }]
},
{
featureType: ‘landscape.natural.terrain’,
elementType: ‘geometry’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘poi.business’,
elementType: ‘all’,
stylers: [{ visibility: ‘off’ }]
},
{
featureType: ‘road’,
elementType: ‘geometry.stroke’,
stylers: [{ color: ‘#ffffff’ }]
},
{
featureType: ‘water’,
elementType: ‘geometry’,
stylers: [{ color: ‘#53acce’ }]
}
],
desert: [{“elementType”:”labels”,”stylers”:[{“visibility”:”off”},{“color”:”#f49f53″}]},{“featureType”:”landscape”,”stylers”:[{“color”:”#f9ddc5″},{“lightness”:-7}]},{“featureType”:”road”,”stylers”:[{“color”:”#813033″},{“lightness”:43}]},{“featureType”:”poi.business”,”stylers”:[{“color”:”#645c20″},{“lightness”:38}]},{“featureType”:”water”,”stylers”:[{“color”:”#1994bf”},{“saturation”:-69},{“gamma”:0.99},{“lightness”:43}]},{“featureType”:”road.local”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#f19f53″},{“weight”:1.3},{“visibility”:”on”},{“lightness”:16}]},{“featureType”:”poi.business”},{“featureType”:”poi.park”,”stylers”:[{“color”:”#645c20″},{“lightness”:39}]},{“featureType”:”poi.school”,”stylers”:[{“color”:”#a95521″},{“lightness”:35}]},{},{“featureType”:”poi.medical”,”elementType”:”geometry.fill”,”stylers”:[{“color”:”#813033″},{“lightness”:38},{“visibility”:”off”}]},{},{},{},{},{},{},{},{},{},{},{},{“elementType”:”labels”},{“featureType”:”poi.sports_complex”,”stylers”:[{“color”:”#9e5916″},{“lightness”:32}]},{},{“featureType”:”poi.government”,”stylers”:[{“color”:”#9e5916″},{“lightness”:46}]},{“featureType”:”transit.station”,”stylers”:[{“visibility”:”off”}]},{“featureType”:”transit.line”,”stylers”:[{“color”:”#813033″},{“lightness”:22}]},{“featureType”:”transit”,”stylers”:[{“lightness”:38}]},{“featureType”:”road.local”,”elementType”:”geometry.stroke”,”stylers”:[{“color”:”#f19f53″},{“lightness”:-10}]},{},{},{}]
};

window.addEventListener(‘load’, function() {
console.log(‘test’);
jQuery(document).ready(function($) {
var boundPadding;
var id = ‘map-636a1084a9859’;
var atts = {“lat”:”50.06530799014772″,”lng”:”8.132202868618847″,”zoom”:”11″};
var markers = [{“lat”:”50.04779023763709″,”lng”:”8.003430653114892″,”title”:”Rheingau”},{“lat”:”50.077608284001364″,”lng”:”8.245672198209743″,”title”:”Museum Wiesbaden”},{“lat”:”50.09887711202631″,”lng”:”8.23020168812117″,”title”:”Neroberg”},{“lat”:”50.083018858917285″,”lng”:”8.239299273012954″,”title”:”Cafu00e9 Maldaner”}];

var map = new google.maps.Map(document.getElementById(id), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true,
zoomControl: true,
scrollwheel: false,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.LEFT_CENTER
}
});

if (atts.style && _styles[atts.style])
map.setOptions({ styles: _styles[atts.style] });

if (atts.padding !== undefined)
boundPadding = parseInt(atts.padding);

var mapBounds;

if (atts.lat !== undefined && atts.lng !== undefined) {
// Use lat and lng if provided
map.setCenter({ lat: parseFloat(atts.lat), lng: parseFloat(atts.lng) });
} else if (markers && markers.length) {
if (markers.length === 1) {
// Use lat lng from first marker if only 1 provided
map.setCenter({ lat: parseFloat(markers[0].lat), lng: parseFloat(markers[0].lng) });
} else {
// With multiple markers create a boundry that includes all of them
mapBounds = new google.maps.LatLngBounds();
}
}

var labels = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
var labelIndex = 0;

if(atts.offset !== undefined) {
labelIndex = parseInt(atts.offset);
}

var infoWindow = new google.maps.InfoWindow({ content: ” });
var openInfoWindow = function(marker, target) {
var info = $(‘

‘, { style: ‘max-width:150px’ });
$(‘

‘).append(marker.title).appendTo(info);

if (marker.scroll_to) {
$(‘‘, {
class: ‘info-window-link’,
href: ‘#’ + marker.scroll_to,
}).append(‘Jump To’).appendTo(info);
}

infoWindow.setContent(info[0].outerHTML);
infoWindow.open({
anchor: target,
map: map,
shouldFocus: false
})
};

$(‘#’ + id).on(‘click’, ‘.info-window-link’, function(e) {
console.log(‘info window’);

e.preventDefault();

var target = $(e.target).attr(‘href’);
$(‘html, body’).animate({ scrollTop: $(target).offset().top – 55 }, 1000);
});

for (var i = 0; i < markers.length; i++) {
var marker = markers[i];

if (marker.lat !== undefined && marker.lng !== undefined) {

var markerObject = {
map: map,
position: { lat: parseFloat(marker.lat), lng: parseFloat(marker.lng) },
animation: google.maps.Animation.DROP,
locationId: i,
}

if(atts.ordered !== undefined) {
if(atts.numbered !== undefined) {

number = labelIndex = labelIndex + 1;
markerObject.label = number.toString();
} else {
markerObject.label = labels[labelIndex++ % labels.length];
}
}

if(marker.icon !== undefined) {
markerObject.icon = marker.icon;
}

var mapMarker = new google.maps.Marker(markerObject);

if (mapBounds) mapBounds.extend(mapMarker.getPosition());

if (marker.title) {
var infowindow = new google.maps.InfoWindow({ content: marker.title });

if (markers.length === 1) {
setTimeout(function() {
openInfoWindow(marker, mapMarker);
}, 1200);
}

google.maps.event.addListener(mapMarker, 'click', function() {
openInfoWindow(markers[this.locationId], this);
});
}
}
}

if (mapBounds) {
map.fitBounds(mapBounds, {top:boundPadding, right:boundPadding, left:boundPadding, bottom:boundPadding});
} else if (atts.zoom) {
map.setZoom(parseInt(atts.zoom));
} else {
map.setZoom(16);
}
});
});

One thing’s for sure: Whether it’s tantalizing your taste buds, shopping for handcrafted items, seeing green, or finding the flair in your surroundings, you can satisfy all of your senses as you explore the authentic local cultures of Germany.


This post is proudly produced in partnership with the German National Tourist Board.

source
728*90

Leave a Comment