Sitemiz NextJS ile yapılmıştır, son güncellemelerden birinde ve meta etiketlerini kasıtlı olarak <body>‘ye taşıyarak sayfaların daha hızlı yüklenmesine yardımcı olacağını açıkladılar.</p> <p>NextJS belgelerinde Google’ın bu konuda sorun olmadığını söylüyor:</p> <blockquote> <p>Ne zaman <code>generateMetadata</code> çözümlendiğinde ortaya çıkan meta veri etiketleri <code><body></code> etiket. Meta verilerin, JavaScript’i çalıştıran ve DOM’un tamamını denetleyen botlar tarafından doğru şekilde yorumlandığını doğruladık (ör. <code>Googlebot</code>).</p> </blockquote> <p>Ama buraya tam olarak ikna olmadım.</p> <p>Google mı <strong>Gerçekten</strong> Sayfayı tararken başlık, meta açıklama, kanonik bilgiler, hreflang ve robot etiketlerini <head> yerine <body>‘den okumanın bir sakıncası var mı? </p> <p>Google’ın akıllı olduğunu ve birkaç </p> <h1> etiketine sahip olmak gibi html hatalarıyla başa çıkabileceğini biliyorum… ama bu daha mı önemli görünüyor? Google, <title> adresimi almada ve sitenin hreflang etiketlerine dayalı yerelleştirme şemasını anlamada sorun yaşar mı?</p> <p>Bonus soru: Meta veri oluşturmayı kullanıcı aracısına göre özelleştirmek mümkündür. Meta verileri googlebot için <head>‘de, ancak diğer herkes için <body>‘de gösterirsem, Google bunu gizleme olarak değerlendirip siteyi cezalandırır mı?</p> </div> <p><!-- SC_ON --></p> </div> <div class="post-footer"> <div class="post-categories"> Kategoriler: <a href="https://floodlar.com/category/seo/" rel="category tag">SEO</a> </div> </div> <div class="comments-section"> <div id="comments" class="comments-area"> <div id="respond" class="comment-respond"> <h3 id="reply-title" class="comment-reply-title">Yorum Yaz <small><a rel="nofollow" id="cancel-comment-reply-link" href="/de-meta-etiketlerin-olmasi-uygun-mudur/#respond" style="display:none;">Yanıtı iptal et</a></small></h3><p class="must-log-in">Yorum yapabilmek için <a href="https://floodlar.com/wp-login.php?redirect_to=https%3A%2F%2Ffloodlar.com%2Fde-meta-etiketlerin-olmasi-uygun-mudur%2F">oturum açmalısınız</a>.</p> </div><!-- #respond --> </div> </div> </article> </main> <!-- İstatistik Bölümü --> <div class="stats-section container"> <div class="stats-container"> <div class="stat-item"> <i class="fas fa-pen"></i> <span class="stat-number">13035</span> <span class="stat-label">Toplam Flood</span> </div> <div class="stat-item"> <i class="fas fa-comments"></i> <span class="stat-number">19817</span> <span class="stat-label">Toplam Yorum</span> </div> <div class="stat-item"> <i class="fas fa-users"></i> <span class="stat-number">11865</span> <span class="stat-label">Toplam Üye</span> </div> <div class="stat-item"> <i class="fas fa-clock"></i> <span class="stat-number">49</span> <span class="stat-label">Son 24 Saatte Flood</span> </div> </div> </div> <!-- İstatistik Bölümü Bitiş --> <footer> <div class="footer-widgets"> <div id="text-2" class="footer-widget widget_text"><h2>Floodlar.com</h2> <div class="textwidget"><p dir="auto">floodlar.com hakkında yapılacak tüm hukuksal şikayetler bizimle iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde tarafımızdan gerekli işlemler yapılacaktır. Telif ya da hukuki durumlar için irtibata geçin.</p> </div> </div><div id="pages-2" class="footer-widget widget_pages"><h2>Faydalı Linkler</h2> <ul> <li class="page_item page-item-3"><a href="https://floodlar.com/privacy-policy/">Gizlilik Politikası</a></li> <li class="page_item page-item-870"><a href="https://floodlar.com/hakkimizda/">Hakkımızda</a></li> <li class="page_item page-item-863"><a href="https://floodlar.com/iletisim/">İletişim</a></li> </ul> </div> </div> <div class="footer-bottom"> <p>© 2026 Floodlar.com. Tüm hakları saklıdır.</p> </div> </footer> <!-- Yukarı Çık Butonu --> <button class="back-to-top" title="Yukarı Çık"><i class="fas fa-arrow-up"></i></button> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/floodtheme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <style> .sm-popup-overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.8); display: none; z-index: 9998; } .sm-popup { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); display: none; z-index: 9999; background: #181923; color: #ffffff; width: 900px; /* Masaüstünde genişlik artırıldı */ max-width: 90%; max-height: 90vh; /* Masaüstünde yükseklik artırıldı */ border-radius: 5px; border: 1px solid rgba(255, 255, 255, 0.2); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); overflow: hidden; font-family: Arial, sans-serif; } .sm-popup-inner { padding: 20px; max-height: 90vh; /* Popup içeriği yüksekliği artırıldı */ overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; } .sm-popup-inner::-webkit-scrollbar { width: 0; height: 0; } .sm-close { position: absolute; top: 10px; right: 10px; width: 30px; height: 30px; background: #00fba5; color: #050f18; border: none; border-radius: 5px; font-size: 18px; line-height: 30px; text-align: center; cursor: pointer; transition: background 0.3s ease; } .sm-close:hover { background: #7132e5; color: #ffffff; } .sm-tabs { display: flex; margin: 0 -5px 15px; padding: 0; list-style: none; border-bottom: 1px solid rgba(255, 255, 255, 0.2); } .sm-tabs li { flex: 1; text-align: center; padding: 8px 0; margin: 0 5px -1px; background: #050f18; color: #ffffff; border-radius: 5px 5px 0 0; cursor: pointer; transition: background 0.3s ease; } .sm-tabs li.sm-active { background: #181923; border-bottom: 3px solid #00fba5; font-weight: bold; } .sm-tabs li:hover { background: #00fba5; color: #050f18; } .sm-form-wrap { display: none; padding-top: 10px; } .sm-form-wrap.sm-active { display: block; } .sm-error { display: none; padding: 8px; background: #a94442; color: #ffffff; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 5px; margin-bottom: 10px; } .sm-form-wrap input { width: 100%; padding: 10px; margin-bottom: 15px; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 5px; background: #050f18; color: #ffffff; font-family: Arial, sans-serif; } .sm-form-wrap input:focus { outline: none; border-color: #00fba5; } .sm-submit { width: 100%; padding: 10px 20px; background: #00fba5; color: #050f18; border: none; border-radius: 5px; font-weight: bold; cursor: pointer; transition: background 0.3s ease; font-family: Arial, sans-serif; } .sm-submit:hover { background: #7132e5; color: #ffffff; } .sm-submit[data-action="sm_resend_code"] { background: #181923; color: #ffffff; } .sm-submit[data-action="sm_resend_code"]:hover { background: #00fba5; color: #050f18; } .sm-spinner { display: inline-block; width: 16px; height: 16px; border: 2px solid #cccccc; border-top-color: #00fba5; border-radius: 50%; animation: sm-spin 0.6s linear infinite; margin-left: 5px; vertical-align: middle; } @keyframes sm-spin { to { transform: rotate(360deg); } } @media (max-width: 768px) { .sm-popup { width: 90%; max-height: 80vh; /* Mobilde yüksekliği biraz düşürdük */ } .sm-tabs li { padding: 6px 0; margin: 0 3px -1px; font-size: 0.9em; } .sm-form-wrap input { padding: 8px; margin-bottom: 10px; } .sm-submit { padding: 8px 16px; } } </style> <div class="sm-popup-overlay"></div> <div class="sm-popup"> <div class="sm-popup-inner"> <button class="sm-close">×</button> <ul class="sm-tabs"> <li data-tab="login" class="sm-active">Giriş Yap</li> <li data-tab="register">Kayıt Ol</li> <li data-tab="lostpw" >Şifremi Unuttum</li> <li data-tab="verify" >Doğrulama</li> </ul> <!-- LOGIN --> <div class="sm-form-wrap sm-active" data-section="login"> <div class="sm-error"></div> <input type="hidden" name="redirect_to" class="sm-redirect-to"> <input type="text" name="username" placeholder="Kullanıcı / E‑posta"> <input type="password" name="password" placeholder="Şifre"> <button class="sm-submit" data-action="sm_login" data-label="Giriş Yap"> Giriş Yap </button> </div> <!-- REGISTER --> <div class="sm-form-wrap" data-section="register"> <div class="sm-error"></div> <input type="hidden" name="redirect_to" class="sm-redirect-to"> <input type="text" name="reg_username" placeholder="Kullanıcı Adı" required> <input type="email" name="reg_email" placeholder="E‑posta" required> <input type="password" name="reg_password" placeholder="Şifre" required> <button class="sm-submit" data-action="sm_register" data-label="Kayıt Ol"> Kayıt Ol </button> </div> <!-- LOST PASSWORD --> <div class="sm-form-wrap" data-section="lostpw"> <div class="sm-error"></div> <input type="email" name="lost_email" placeholder="E‑posta" required> <button class="sm-submit" data-action="sm_lostpw" data-label="Şifremi Unuttum"> Şifremi Unuttum </button> </div> <!-- VERIFY --> <div class="sm-form-wrap" data-section="verify"> <div class="sm-error"></div> <p>Kod e‑postana gönderildi. (24 saat geçerli)</p> <input type="hidden" name="reg_username"> <input type="hidden" name="reg_email"> <input type="hidden" name="redirect_to" class="sm-redirect-to"> <input type="text" name="reg_code" placeholder="4 haneli kod" required> <button class="sm-submit" data-action="sm_verify_registration" data-label="Doğrula"> Doğrula </button> <button class="sm-submit" data-action="sm_resend_code" data-label="Tekrar Gönder" style="margin-top:5px;"> Tekrar Gönder </button> </div> </div> </div> <script> jQuery(function($){ var $ov = $('.sm-popup-overlay'), $pop = $('.sm-popup'), $tabs = $('.sm-tabs li'), $wrps = $('.sm-form-wrap'), spin = '<span class="sm-spinner"></span>'; function switchTab(tab){ $tabs.removeClass('sm-active'); $tabs.filter('[data-tab="'+tab+'"]').addClass('sm-active'); $wrps.hide().filter('[data-section="'+tab+'"]').show(); } // Popup açılmadan önce redirect URL’i ayarla $('body').on('click','.su-membership-trigger',function(e){ e.preventDefault(); $('.sm-redirect-to').val(window.location.href); switchTab('login'); $ov.fadeIn(200); $pop.fadeIn(200); }); // Kapat $ov.add('.sm-close').on('click',function(){ $pop.fadeOut(200); $ov.fadeOut(200); }); // Sekme tıklama $tabs.on('click',function(){ switchTab($(this).data('tab')); }); // AJAX submit handler $pop.on('click','.sm-submit',function(e){ e.preventDefault(); var $btn = $(this), act = $btn.data('action'), lbl = $btn.data('label'), $sec = $btn.closest('.sm-form-wrap'), err = $sec.find('.sm-error'), data = {action:act,nonce:'c1def400b1'}; err.hide(); // Tüm input’ları oku $sec.find('input').each(function(){ data[$(this).attr('name')] = $(this).val(); }); // Kayıttan doğrulamaya geçerken hiddenları doldur if(act==='sm_register'){ var v = $('.sm-form-wrap[data-section="verify"]'); v.find('input[name="reg_username"]').val(data.reg_username); v.find('input[name="reg_email"]').val(data.reg_email); v.find('input.sm-redirect-to').val(data.redirect_to); } $btn.prop('disabled',true).text(lbl).append(spin); $.post('https://floodlar.com/wp-admin/admin-ajax.php', data, function(res){ $btn.prop('disabled',false).text(lbl); $sec.find('.sm-spinner').remove(); // Şifremi Unuttum adımıysa sadece mesaj göster if(res.success && res.data.step==='lostpw'){ err.text(res.data.message).show(); return; } if(res.success){ if(res.data.step==='verify'){ switchTab('verify'); $('.sm-form-wrap[data-section="verify"] .sm-error') .hide().text(res.data.message).show(); } else if(res.data.redirect){ window.location = res.data.redirect; } } else { err.text(res.data.message).show(); } },'json'); }); }); </script> <script type="text/javascript" src="https://floodlar.com/wp-includes/js/dist/hooks.min.js?ver=dd5603f07f9220ed27f1" id="wp-hooks-js"></script> <script type="text/javascript" src="https://floodlar.com/wp-includes/js/dist/i18n.min.js?ver=c26c3dc7bed366793375" id="wp-i18n-js"></script> <script type="text/javascript" id="wp-i18n-js-after"> /* <![CDATA[ */ wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); //# sourceURL=wp-i18n-js-after /* ]]> */ </script> <script type="text/javascript" src="https://floodlar.com/wp-content/plugins/contact-form-7/includes/swv/js/index.js?ver=6.1.4" id="swv-js"></script> <script type="text/javascript" id="contact-form-7-js-translations"> /* <![CDATA[ */ ( function( domain, translations ) { var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; localeData[""].domain = domain; wp.i18n.setLocaleData( localeData, domain ); } )( "contact-form-7", {"translation-revision-date":"2024-07-22 17:28:11+0000","generator":"GlotPress\/4.0.1","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","plural-forms":"nplurals=2; plural=n > 1;","lang":"tr"},"This contact form is placed in the wrong place.":["Bu ileti\u015fim formu yanl\u0131\u015f yere yerle\u015ftirilmi\u015f."],"Error:":["Hata:"]}},"comment":{"reference":"includes\/js\/index.js"}} ); //# sourceURL=contact-form-7-js-translations /* ]]> */ </script> <script type="text/javascript" id="contact-form-7-js-before"> /* <![CDATA[ */ var wpcf7 = { "api": { "root": "https:\/\/floodlar.com\/wp-json\/", "namespace": "contact-form-7\/v1" } }; //# sourceURL=contact-form-7-js-before /* ]]> */ </script> <script type="text/javascript" src="https://floodlar.com/wp-content/plugins/contact-form-7/includes/js/index.js?ver=6.1.4" id="contact-form-7-js"></script> <script type="text/javascript" id="floodtheme-script-js-extra"> /* <![CDATA[ */ var floodtheme_ajax = {"ajax_url":"https://floodlar.com/wp-admin/admin-ajax.php","nonce":"7d176f1fb9","submit_nonce":"919010e105","current_user_id":"0"}; //# sourceURL=floodtheme-script-js-extra /* ]]> */ </script> <script type="text/javascript" src="https://floodlar.com/wp-content/themes/floodtheme/js/script.js?ver=1.5" id="floodtheme-script-js"></script> <script type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=6Le_QK4qAAAAALCZpFYS52K1gpodu975e5dwIi4c&ver=3.0" id="google-recaptcha-js"></script> <script type="text/javascript" src="https://floodlar.com/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0" id="wp-polyfill-js"></script> <script type="text/javascript" id="wpcf7-recaptcha-js-before"> /* <![CDATA[ */ var wpcf7_recaptcha = { "sitekey": "6Le_QK4qAAAAALCZpFYS52K1gpodu975e5dwIi4c", "actions": { "homepage": "homepage", "contactform": "contactform" } }; //# sourceURL=wpcf7-recaptcha-js-before /* ]]> */ </script> <script type="text/javascript" src="https://floodlar.com/wp-content/plugins/contact-form-7/modules/recaptcha/index.js?ver=6.1.4" id="wpcf7-recaptcha-js"></script> <script type="text/javascript" src="https://floodlar.com/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-events-provider-contact-form-7-40476021fb6e59177033.js" id="googlesitekit-events-provider-contact-form-7-js" defer></script> <script type="text/javascript" src="https://floodlar.com/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-events-provider-wpforms-ed443a3a3d45126a22ce.js" id="googlesitekit-events-provider-wpforms-js" defer></script> <script id="wp-emoji-settings" type="application/json"> {"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://floodlar.com/wp-includes/js/wp-emoji-release.min.js?ver=6.9"}} </script> <script type="module"> /* <![CDATA[ */ /*! This file is auto-generated */ const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))}); //# sourceURL=https://floodlar.com/wp-includes/js/wp-emoji-loader.min.js /* ]]> */ </script> </body> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4694992601105670" crossorigin="anonymous"></script> </html>