(function () {
try {
// AQ-r2 (2026-06-09): respect the explicit-denial sentinel
// written by cookie-consent-harden.js writeATR() on any
// marketing-axis denial (payload.marketing === false; cycle-3 F1).
// Without this gate, the next page navigation re-creates
// gmx_first_touch from the current URL+referrer+utm_*+click_ids,
// silently undoing the reject-all deletion (sweep finding #1).
// The sentinel is cleared the moment the visitor grants
// marketing in the banner (analytics-only grant does NOT
// clear), restoring the writer path on the very next
// page load. Page-cache-safe: the sentinel is a
// browser-resident cookie checked in the inline script, so
// varnish/breeze-served HTML still hits this gate.
if (/(?:^|;\s*)gmx_consent_denied=1(?:;|$)/.test(document.cookie || '')) return;
var CLICK_IDS = ['gclid','fbclid','msclkid','ttclid','wbraid','gbraid','li_fat_id'];
var qs = new URLSearchParams(window.location.search);
var urlClickIdKey = null;
for (var i = 0; i < CLICK_IDS.length; i++) {
if (qs.get(CLICK_IDS[i])) { urlClickIdKey = CLICK_IDS[i]; break; }
}// Parse existing cookie.
var existing = null;
var match = document.cookie.match(/(?:^|;\s*)gmx_first_touch=([^;]+)/);
if (match) {
try { existing = JSON.parse(decodeURIComponent(match[1])); } catch (e) { existing = null; }
}// GWP-273 — referrer-enrichment branch.
// Keep existing unless either (a) URL carries a new click id
// the stored payload lacks (paid click is a higher-value
// signal and upgrades direct/organic), OR (b) the stored
// payload has empty referrer AND the current document.referrer
// is non-empty + external (Safari/ITP/policy-quirk catch:
// first-hit may have missed the referrer; later same-session
// page-loads can recover it).
var existingHasRef = !!(existing && existing.referrer && existing.referrer !== '');
var docRef = document.referrer || '';
var refHost = '';
if (docRef) {
try {
refHost = new URL(docRef).hostname.replace(/^www\./, '').toLowerCase();
} catch (e) { refHost = ''; }
}
var ownHost = (location.host || '').replace(/^www\./, '').toLowerCase();
var currentExternalRef = !!(refHost && refHost !== ownHost);
var canEnrichRef = !!existing && !existingHasRef && currentExternalRef;if (existing) {
if (!urlClickIdKey && !canEnrichRef) return;
if (urlClickIdKey && existing[urlClickIdKey] && !canEnrichRef) return;
}var utm_keys = [
'utm_source','utm_medium','utm_campaign','utm_content','utm_term',
'utm_adgroup','utm_matchtype','utm_network','utm_device','utm_placement'
];
// GWP-273 — merge-preserving base. When enriching an existing
// payload, retain its landing_url + ts + prior click ids /
// utms; only overlay referrer (and any click id appended below
// via the forEach). Branches with/without urlClickIdKey were
// collapsed — both produced the identical Object.assign — the
// click id is added uniformly later.
//
// GWP-273 design choice: "latest external referrer wins" —
// accepted edge case where a user opens a new external tab
// post-empty-first-touch and returns; low-volume, simple, no
// sentinel flag needed.
var data;
if (existing && canEnrichRef) {
data = Object.assign({}, existing, { referrer: docRef });
} else {
data = { landing_url: window.location.href, referrer: docRef, ts: Date.now() };
}
utm_keys.concat(CLICK_IDS).forEach(function (k) {
var v = qs.get(k);
if (v) data[k] = v;
});
// GWP-208 — carry Meta's first-party click-linker cookies (_fbc
// = fb.1.<ts>.<fbclid>, _fbp) into the captured payload so they
// ride the persistent gmx_first_touch cookie cross-page (LP X →
// LP Y) the same way the URL click-ids do. The CF7 hidden-field
// populator copies the whole payload verbatim, so fbc/fbp reach
// the lead even when the form lives on a page without ?fbclid.
var fbcMatch = document.cookie.match(/(?:^|;\s*)_fbc=([^;]+)/);
if (fbcMatch && fbcMatch[1]) data.fbc = decodeURIComponent(fbcMatch[1]);
var fbpMatch = document.cookie.match(/(?:^|;\s*)_fbp=([^;]+)/);
if (fbpMatch && fbpMatch[1]) data.fbp = decodeURIComponent(fbpMatch[1]);
var encoded = encodeURIComponent(JSON.stringify(data));
if (encoded.length > 3800) return;
var expires = new Date(Date.now() + 90 * 864e5).toUTCString(); // GWP-143 C1: match Google Ads 90-day attribution window
var secure = window.location.protocol === 'https:' ? '; Secure' : '';
document.cookie = 'gmx_first_touch=' + encoded + '; Path=/; Expires=' + expires + '; SameSite=Lax' + secure;
} catch (e) {}
})();
/* Meta Pixel base — inline in wp_head so Breeze Delay-All-JS does not defer it; fbevents.js is async-injected (optimizer-invisible). */
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,document,'script',
'https://connect.facebook.net/en_US/fbevents.js');/* Symmetric with server GMX_Consent: revoke BEFORE init; cookies/sends held until grant. */
fbq('consent', 'revoke');
fbq('init', '1857131551802431');
fbq('track', 'PageView'); /* queued; flushed to Meta only after consent grant *//* Grant bridge — reads the SAME ATR marketing signal as GMX_Consent.applyConsent(). */
(function () {
function read(name){var m=document.cookie.match('(?:^|; )'+name.replace(/([.*+?^${}()|[\]\\])/g,'\\$1')+'=([^;]*)');return m?decodeURIComponent(m[1]):'';}
function marketingGranted(){
try {
var given = read('atr_cookie_notice_consent_given');
if (!given) return false; // undecided -> stay revoked
var c = JSON.parse(read('atr_cookie_notice_consent') || '{}');
return !!(c.marketing || c.ad_storage === 'granted');
} catch (e) { return false; } // NO-SILENT-OK: parse/read failure degrades gracefully to revoked (consent stays held; no marketing send) — not an error to report.
}
function apply(){ if (marketingGranted()) fbq('consent', 'grant'); }
apply();
document.addEventListener('click', function(ev){
if (ev.target && ev.target.closest && ev.target.closest('[class*="atr-cookie"], #atr-cookie-notice')) setTimeout(apply, 50);
}, true);
window.addEventListener('storage', apply);
})();
var breeze_prefetch = {"local_url":"https://gomixapp.com","ignore_remote_prefetch":"1","ignore_list":["/cart/","/checkout/","/my-account/","https://gomixapp.co.il/(.)/u05d4u05d8u05d5u05e4u05e1-u05e0u05e9u05dcu05d7-u05d1u05d4u05e6u05dcu05d7u05d4/","wp-admin","wp-login.php"]};
//# sourceURL=breeze-prefetch-js-extra
Opening Hours Sign for Your Business — Free Printable
Need a printable opening hours sign for your business? Here is a ready-made days-and-hours template to hang on the door of your shop, clinic or office — copy it with one click, print it, or download it as an editable Word file. Replace the hours in the square brackets with your own and you have a tidy sign in under a minute.
Fill in the details — the notice updates automatically:
How to make an opening hours sign that works — and what it must include
Your opening hours sign is the first service touchpoint of the business: a customer who reaches a locked door with no idea when to come back usually doesn’t come back at all. A clear sign at the entrance saves needless phone calls after closing, prevents disappointment at the door, and signals from the sidewalk that this is a well-run business that respects the customer’s time.
What must it include? Every day of the week, spelled out. In Israel that means a separate line for Fridays and holiday eves — when most businesses close early — and an explicit “closed” line for Saturdays and holidays. Don’t write “Sun-Thu” and leave the rest to guesswork: the Friday and Saturday lines are exactly the ones customers look for. Add a phone number for inquiries — someone who is unsure will call instead of giving up.
Printing and hanging: an A4 page in a large bold font reads comfortably from two to three meters — hang it at eye level on the entry side of the door, and laminate it if it is exposed to sun or rain. A yellowed, crumpled sign with outdated hours is worse than no sign at all, because it misleads customers with full confidence. Print two copies: one for the door and one by the register.
Good to know: Israel has no general legal duty to display opening hours (unlike price display, which the Consumer Protection Law does require), but municipal bylaws regulate which days and hours businesses may operate — so the sign should reflect what is permitted and actually practiced. Just as important: make sure the hours on the sign match your Google Business Profile, website and social pages. A mismatch between the door and Google is one of the most common reasons for negative reviews.
Frequently Asked Questions
What must appear on a business opening hours sign?
A full list of trading days, the opening and closing time for each day, a separate line for Fridays and holiday eves, an explicit note of closed days (Saturday and holidays in most Israeli businesses) and a phone number for inquiries. A sign that leaves room for guessing — for example, no Friday line — generates needless phone calls and disappointed customers at the door.
Is a business legally required to display an opening hours sign in Israel?
There is no general legal duty in Israel to display opening hours (unlike price display, which the Consumer Protection Law requires). However, municipal bylaws regulate the days and hours businesses may operate, and a clear opening hours sign is considered a basic service standard that builds customer trust.
What size and font should an opening hours sign be printed in?
For most businesses a portrait A4 page is enough, with a large heading and the hours in a bold, readable font — so the sign reads comfortably from two to three meters away. Choose a simple font without decorations, leave space between the lines, and protect the page with lamination or a plastic sleeve if it hangs outside.
How do I update the sign for daylight saving changes or holiday eves?
The simplest way is to keep the file (Word) and print an updated version whenever the season changes — that is exactly the advantage of an editable template. For short periods, such as a single holiday eve, add a prominent temporary note next to the permanent sign, for example a closed-for-holiday sign.
What if the hours on Google don’t match the sign on the door?
Update your Google Business Profile immediately so it matches the sign — most customers check the hours on Google before heading out. A mismatch between the door and Google is one of the most common causes of negative reviews, so any change of hours should be updated in both places on the same day.
Does this template also suit a clinic, office or salon?
Yes. The days-and-hours table is identical for every type of business — change the closing line and adjust the hours. Clinics and offices should consider a separate line for phone-answering hours if they differ from walk-in hours.
Key Takeaways
A clear opening hours sign is the first service touchpoint — before the customer even walks in
Spell out every day: separate Friday & holiday-eve line, closed days and a phone number
Print on A4 in a large font readable from 2-3 meters, and laminate it
The hours on the sign must match Google, your website and social pages
The template here is free — copy, print, or download as Word
Printing a new sign every time your hours change? With a digital signage screen at the entrance, your opening hours, promotions and notices update remotely in seconds — no printer, no laminating, no tape on the glass.
var atrCookieNoticeSettings = {"cookieName":"atr_cookie_notice_consent","decisionCookieName":"atr_cookie_notice_consent_given","expiryDays":"365","autoHideDelay":"0","enableDebug":"","siteName":"GoMixApp","isPrivacyPage":"","privacyPolicyUrl":"https://gomixapp.com/privacy-policy/","privacyNoteText":"\ud83d\udca1 You can read this page while deciding about cookies","mode":"simple"};
//# sourceURL=atr-cookie-notice-simple-js-extra