Saya sedang mengerjakan aplikasi ASP dan kode, templat, dan file disusun dengan cara yang tidak memungkinkan saya mengubah apa pun di luar tag tubuh. Jadi saya berpikir tentang memasukkan tag meta ke dalam tubuh - seperti ini:
<!-- FEW ASP INCLUDES -->
<html>
<head>
<!-- FALLBACK TITLE AND DESCRIPTION -->
<title>Default Title</title>
<meta name="description" content="Default Description">
</head>
<body>
<!-- SOME HTML MARKUP -->
<div class="dynamic-content">
<!-- InstanceBeginEditable name="dynamic-content" -->
<!-- THIS IS WHERE I CAN WRITE ASP CODE -->
<title><%= Page.Meta.GetTitle( yada, yada ) %></title>
<meta name="description" content="<%= Page.Meta.GetDescription( yada, yada ) %>">
<!-- InstanceEndEditable -->
</div>
<!-- SOME MORE HTML MARKUP -->
</body>
</html>
Saya bertanya-tanya seberapa bagus menempatkan tag meta di dalam tubuh dokumen HTML. Bagaimana pengaruhnya:
Ini tentu saja tidak valid sesuai HTML4.01. Tag META adalah hanya diijinkan dalam HEAD (seperti, katakan, TITLE) jadi dengan memasukkannya ke dalam BODY, Anda pada dasarnya membuat markup yang tidak valid.
Dari tes sepintas, tampaknya beberapa browser (mis. Firefox 3.5 dan Safari 4) benar-benar memasukkan elemen-elemen ini ke HEAD saat membuat pohon dokumen. Ini tidak terlalu mengejutkan: browser dikenal untuk mentolerir dan mencoba menafsirkan semua jenis markup yang rusak.
Memiliki markup yang tidak valid jarang merupakan ide bagus. Penanganan non-standar oleh browser dapat menyebabkan berbagai inkonsistensi rendering (dan perilaku) yang sulit. Daripada mengandalkan menebak browser, yang terbaik adalah mengikuti standar.
Saya tidak tahu bagaimana mesin pencari bereaksi terhadap sup tag tersebut, tetapi saya tidak akan mengambil risiko bereksperimen untuk mengetahuinya :) Mungkin mereka hanya mengurai tag HEAD untuk informasi tertentu dan akan melewatkan semua tag yang berisi BODY Anda. Atau mungkin mereka menganggap ini sebagai upaya perjudian berbahaya dan halaman daftar hitam yang berisi markup tersebut. Siapa tahu.
Intinya - hindari ini bila memungkinkan.
Intinya adalah untuk menghindari hal ini sedapat mungkin ketika DOCTYPE melarangnya. Saya pikir ini benar-benar diizinkan dalam HTML5 dan sangat berguna dalam kasus menggunakan microdata. Contoh: http://schema.org/Event
Saya tidak akan melakukannya. Itu bukan tempat tag itu pergi, dan mesin pencari mungkin melihatnya sebagai spamming. Jika Anda dapat mengatur ulang halaman master, Anda selalu dapat menambahkan pemegang konten di bagian kepala. Saya telah melakukannya dengan sepele dengan:
<asp:ContentPlaceHolder ID="HeadTags" runat="server" />
Dengan cara ini Anda dapat menambahkan konten apa pun yang Anda suka di bagian kepala kembali di halaman Anda:
<asp:Content ID="Whatever" ContentPlaceHolderID="HeadTags" runat="server" >
<meta ... >
</asp:Content>
Jika tujuan Anda adalah optimasi mesin pencari, maka mungkin ide yang baik untuk mengikuti standar dan meletakkan semua meta tag Anda di <head>
. Namun, sejauh perilaku peramban berjalan, jika Anda menempatkan tag <meta>
ke dalam <body>
Anda, itu masih akan berfungsi. Saya memutuskan untuk menguji ini menggunakan beberapa tag <meta http-equiv="refresh"/>
dan tag <title>
dalam dokumen yang memenuhi standar.
Hasil tes saya:
Firefox 18, Firefox 3.6, Firefox Mobile, Chrome 24, Chrome untuk Mobile, Opera 12, IE6, IE8, IE10:
<meta>
dalam tubuh diproses.<title>
pertama dalam dokumen diproses, meskipun ada di badan. Tag <title>
selanjutnya diabaikan.IE9:
<title>
di tubuh diabaikan.<title>
di dalam tubuh.Jadi, apa yang terjadi ketika Anda menggunakan meta tag di badan? Pada umumnya, mereka tampaknya berfungsi dengan baik. Tag meta mungkin akan diproses, jadi jika Anda tidak dapat menempatkannya di kepala maka saya tidak akan terlalu khawatir.
Beberapa tag meta yang dimaksudkan untuk mesin pencari tidak akan dihormati oleh mesin pencari di bagian tubuh halaman.
Sebagai contoh Google mengatakan bahwa itu tidak akan menghormati rel = kanonik di badan halaman, tetapi hanya di kepala halaman. Inilah yang dikatakan Matt Cutts dari Google :
Kami tidak mengizinkan rel = kanonik dalam BODY (karena seperti yang saya sebutkan, orang-orang akan melakukan spam itu),
Saya akan mengatakan Anda untuk menggunakannya. Saya menemukan tag meta di dalam tubuh di berbagai halaman web, dan mereka berada di salah satu dari 10 pencarian teratas (di google). Ini menunjukkan, setidaknya bagi saya, bahwa mesin searh tidak masalah jika Anda telah menggunakan pendekatan ini.
Anda harus terus maju jika tidak ada jalan lain.
tag meta dapat ditambahkan di mana saja dalam HTML.
Perayap web dapat membacanya tetapi satu-satunya masalah adalah ketika Anda harus berbagi halaman Anda melalui beberapa aplikasi seperti facebook messenger, whatsapp dll.
Aplikasi ini hanya membaca tag meta ada di dalam tag head . Jadi, og: image, og: description properti dari meta tag jika ditempatkan di dalam tag tubuh tidak dibaca dan karenanya tidak akan ditampilkan saat berbagi dalam aplikasi tersebut.
Jika ini hanya untuk keperluan SEO, Anda dapat menambahkan meta tag di mana saja tetapi disarankan untuk menambahkan di dalam tag kepala hanya
Saya telah memasukkan beberapa tag meta ke dalam tubuh, tetapi itu karena teknologi Microdata. Ketika saya tidak memiliki elemen reguler dengan info, bahwa saya perlu menggambarkan objek sesuai dengan kosa kata schema.org, saya menetapkan tag meta dengan konten ini. Saya lebih suka melakukannya dengan cara itu, untuk mengatur elemen dengan tampilan: tidak ada. Cara dengan tampilan: tidak ada yang bisa menyebabkan lebih banyak masalah google daripada ini, sejauh yang saya tahu. Saya setuju itu bukan praktik terbaik, tetapi ketika saya memvalidasi dokumen saya (HTML5) saya melewati validasi dengan nol kesalahan. Juga saya telah melakukan trik ini untuk beberapa proyek dan tidak satupun dari mereka memiliki masalah dengan google atau mesin pencari lainnya. Bahkan microdata meningkatkan peringkat mesin pencari. Saya tidak tahu apa sebenarnya yang ingin Anda lakukan dengan meta tag ini ke dalam tubuh, karena saya belum melihat ada mikrodata dalam kode Anda. Jika Anda membutuhkannya untuk pendekatan ini saya pikir itu ok, tetapi dalam kasus lain elemen meta harus di bagian kepala!
Memiliki tag Deskripsi META di situs web adalah markup yang tidak valid, namun bukan masalah besar karena mesin pencari dapat secara teratur menemukan tag di mana pun tag itu berada. Situs web saya melakukan ini, lihat HTML saya
http://cameras.specced.co.uk/compare/268/Canon_EOS_200D
META ada di situs web BODY namun telah diindeks oleh google dan deskripsi meta halaman telah ditetapkan sebagai teks klik meskipun dalam hasil pencarian google.