- Bir SEO Uzmanı yazılım bilmeli mi?
- Sağlıklı SEO süreçlerine Yazılım bilmenin katkıları nelerdir?
- Yazılım bilmek bir SEO Uzmanı için neden önemlidir?
- Hangi yazılım dillerini bilmeliyiz, hangi süreçleri SEO Uzmanı için kolaylaştırır?
2. Yusuf Özbay Kimdir?
SEO Manager
Head of SEO
SEO & SEM Manager
VP, SEO
/yusuffozbay /yusufozbay Yusufozbay.com
3. Neden Yazılım Öğrenmeliyiz?
Rekabet edebilmenizi sağlar.
Teknik SEO tarafında en iyisi olmanızı sağlar.
Yazılım öğrenmek;
Yaratıcılığı körükler.
Problem çözme becerilerinizi geliştirir.
İşleri kolaylaştırmak için Otomasyon geliştirebilirsiniz.
Sabırlı ve ısrarlı olmayı öğretir :)
Analitik düşünmenizi sağlar ve analiz yeteneklerinizi geliştirir.
Development ekibi ile daha sağlıklı ilişkiler geliştirmenize yardımcı olur :)
9. HTML (Hyper Text Markup Language)
Bir web sitenin iskeletini oluşturmanızı sağlar.
Renkleri, fontları, yazıları, görselleri videoları belli bir hiyerarşide
konumlandırmanızı sağlar.
HTML öğrenmek;
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web tasarımları yapmanızı sağlar.
Web Tarayıcı Geliştirici Araçlarıyla rahatlıkla çalışabilirsiniz.
Zaman kazandırır.
Pagespeed Optimizasyonu çalışmalarında light-weight yapı
oluşturmanızı, gereksiz kodları elimine etmenizi sağlar.
Front-End Dev olup para kazanmanızı sağlar.
Moz
11. CSS (Cascading Style Sheets)
HTML iskeletine dilediğiniz görüntüyü vermenizi sağlar.
Renkleri, fontları, yazıları, görselleri videoları bir araya getirerek
derli toplu bir şablon/görüntü oluşturmanızı sağlar.
CSS öğrenmek;
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web tasarımları yapmanızı sağlar. Ör; Responsive Design
Web Tarayıcı Geliştirici Araçlarıyla rahatlıkla çalışabilirsiniz.
Zaman kazandırır.
Render Blocking yapıya sahiptir. Pagespeed Optimizasyonunda CSS dosyalarını Bundel etmeyi,
kodları Inline etmeyi, kullanılmayan CSS kodlarını elimine etme becerinizi geliştirir.
Front-End Dev olup para kazanmanızı sağlar.
Moz
14. Javascript (JS)
Teknik SEO tarafında hayati bir yeteneğe sahip olursunuz.
HTML ve CSS ile oluşturulmuş web sitelerini etkileşimli/hareketli
bir yapıya kavuşturmanızı sağlar.
Javascript öğrenmek;
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web tasarımları yapmanızı sağlar.
Web Tarayıcı Geliştirici Araçlarıyla rahatlıkla çalışabilirsiniz.
Zaman kazandırır.
Render Blocking yapıya sahiptir. Pagespeed Optimizasyonunda JS dosyalarını Bundel etmeyi,
kodları Inline etmeyi, kullanılmayan JS kodlarını elimine etme becerinizi geliştirir.
Front-End Dev olup para kazanmanızı sağlar.
Moz
23. — GOOGLE
“Sometimes things don’t go perfectly during rendering, which
may negatively impact search results for your site . . .
Sometimes the JavaScript may be too complex or arcane for
us to execute, in which case we can’t render the page fully
and accurately . . . Some JavaScript removes content from
the page rather than adding, which prevents us from
indexing the content.”
25. DOM (Document Object Model)
Genellikle Javascript aracılığıyla web sitede bulunan bir metni, yapıyı
veya stili değiştirmek için kullanılan bir arayüzdür.
<html>, <head>, <div>, <table>, <h1>, <a>, <footer> DOM ağacı
içerisinde bulunan birer HTML etiketidir.
Pre-DOM içeriğini Sayfanın Kaynak kodunda, Post-DOM Developer
Tools tarafında analiz edebilirsiniz.
DOM-Tree, CSSOM (CSS Object Model) ve DOM’dan oluşur.
DOM oluşabilmesi için HTML etiketlerinin bir hiyerarşi ile dizilmesi
gerekmektedir.
Gereksiz DOM elementlerini elimine ederek web sitenizin hız
performansını arttırabilirsiniz.
DOM yapısını ve mantığını anlayarak JS, CSS ve HTML kodlarının
birbiriyle olan iletişimini analiz edebilir, anlayabilirsiniz.
27. Web Developer Tools
Web sitenizin nasıl render edildiğini anlarsınız.
Web sitenizin Render edilmiş HTML, Inlined JS & CSS
kaynağını görebilirsiniz.
Web Developer Tools ile;
HTML, JS, CSS kod yazarak uygulamanızın ya da ya da yaptığınız
geliştirmeyi analiz ve test edebilirsiniz.
Sitenizin Font, Yazı, Görsel, Video gibi elemanlarını değiştirebilirsiniz.
Web sitenizin nasıl çalıştığını anlayabilirsiniz.
Zaman kazanırsınız.
Pagespeed Optimizasyonu çalışmalarında sitenizi yavaşlatan JS, CSS, HTML ve diğer statik
kaynakların neler olduğunu ve yüklenme süresini analiz ederek aksiyonlar alabilirsiniz.
Front-End geliştirmeleri yaparak derdinizi Development ekiplerine rahatlıkla anlatabilirsiniz :)
30. JSON (Javascript Object Notation)
Temel amacı veri alışverişi yaparken daha küçük boyutlarda veri alıp
göndermektir.
Anahtar ve değerlerden oluşur.
Verileri, dizi ya da obje olarak transferini yapabilirsiniz.
Google, Yapılandırma Verilerini JSON olarak kullanmamızı istiyor.
Render Blocking değildir.
Web Analytics çalışmalasında kullanılmaktadır.
Google Analytics veya Google Tag Manager ile çalışırken JSON kodları
genellikle kullanırız.
JSON:
31. PHP (Hypertext Preprocessor)
PHP Öğrenerek:
Back-End Dev olarak bir web sitenin/Uygulamanın fonksiyonel çalışmasını sağlarsınız.
HTML, CSS, JS bildikten sonra Rahatlıkla bir web sitesi geliştirebilirsiniz.
Laravel, Codeigniter, Symfony gibi birçok framework bulunmaktadır.
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web siteleri geliştirmenizi sağlar.
Wordpress, Joomla gibi CMSler ile kendi temanızı geliştirebilirsiniz.
Zaman kazandırır.
Pagespeed Optimizasyonu çalışmalarında light-weight yapı
oluşturmanızı, gereksiz kodları elimine etmenizi sağlar.
Back-End Dev olup para kazanmanızı sağlar.
32. HTML, CSS, JS bildikten sonra Rahatlıkla bir web sitesi geliştirebilirsiniz.
DJango, Web2Py gibi frameworkler ile web site geliştirebilirsiniz.
PYTHON
Python Öğrenerek:
Back-End Dev olarak bir web sitenin fonksiyonel çalışmasını sağlarsınız.
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web siteleri geliştirmenizi sağlar.
Otomasyonlar geliştirerek küçük ve tekrar eden işlerin sıkıcılığından vakit
almasından kurtulabilirsiniz.
Zaman kazandırır.
Web Scraping, Data Science, Data Görselleştirme gibi alanlarda Python ile geliştirmeler
yaparak daha etkili analizler yapabilirsiniz.
Back-End Dev olup para kazanmanızı sağlar.
33. PYTHON ile Search Console API Bağlantısı
https://peakment.com/tr/ilk-sayfadan-dusen-anahtar-kelimelerin-tespiti-python/
34. PYTHON ile Basit Veri Analizi
https://zeo.org/blog/basic-seo-data-analysis-python/
36. ASP.NET
ASP.NET Öğrenerek:
Back-End Dev olarak bir web sitenin/Uygulamanın fonksiyonel çalışmasını sağlarsınız.
HTML, CSS, JS bildikten sonra Rahatlıkla bir web sitesi geliştirebilirsiniz.
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
SEO Friendly web siteleri geliştirmenizi sağlar.
Yüksek güvenlikli web siteleri geliştirmenize olanak sağlar.
Banka siteleri ASP.NET ile geliştirilmiştir.
Zaman kazandırır.
Pagespeed Optimizasyonu çalışmalarında light-weight yapı
oluşturmanızı, gereksiz kodları elimine etmenizi sağlar.
Back-End Dev olup para kazanmanızı sağlar.
38. SQL (Structured Query Language)
SQL Öğrenerek:
Daha büyük Veri setleriyle çalışmanızı sağlar. Google Search Console, Analytics gibi araçlardan
aldığınız büyük veri setlerini analiz etmenizi sağlar.
Excel’in yetemediği yerlerde Google Big Query imdadınıza yetişecektir
lakin SQL bilmeniz gerekiyor.
Development ekibine derdinizi kanıtlarla/örneklerle anlatabilirsiniz.
Teknik SEO çalışmalarında advanced seviye Log analizi yapmanızı sağlar.
ASP.NET ve SQL ile harika siteler geliştirebilirsiniz.
Zaman kazandırır.
Veri Tabanı oluşturmanızı ve optimize etmenizi sağlar.
Veri Tabanı Uzmanı olarak kariyer yapabilirsiniz :)
41. Wordpress
Wordpress Öğrenerek:
Hızlı bir şekilde web sitesi geliştirebilirsiniz.
Farklı tasarımlarda temalarla web sitesi geliştirebilir ya da
kendi temanızı PHP öğrendikten sonra geliştirebilirsiniz.
Ücretsiz ve Open Source bir sistem olduğu için kolaylıkla destek alabilirsiniz.
SEO Friendly bir yapıya sahiptir. Responsive Design, Hızlı temalar,
Yoast SEO gibi eklentiler işinizi daha da kolaylaştıracaktır.
E-ticaret, Blog, Kurumsal Web sitesi gibi farklı ihtiyaçları kolaylıkla karşılar.
Maliyeti düşürür ve Zaman kazandırır.
Wordpress ile yapılmış web sitelerinde kolay ve ileri seviye Teknik SEO çalışmaları yaparsınız.
Wordpress Developer olarak kariyer yapabilirsiniz :)
43. GTM (Google Tag Manager)
GTM Öğrenerek:
Web sitenize ya da uygulamanıza kod enjekte edebilirsiniz.
Çalışabilmek için birçok entegrasyonda JS kullanmak durumundasınız
ve bunun için de Javascript öğrenmelisiniz.
Ücretsizdir, Maliyeti düşürür ve Zaman kazandırır.
Birçok SEO geliştirmesini yapabilirsiniz. Canonical, Meta Title & Description,
Open Graph Meta Data gibi geliştirmelerde Developer ekibine ihtiyaç duymazsın
Back-End tarafta gereksiz kod karmaşasına sebebiyet vermeden
GTM ile 3rd Party kodları enjekte edebilirsin.
Test ortamında çalışmana imkan verir.
77 farklı Marketing Teknology aracı ile çalışarak esnek bir yapı sağlar.
GTM tarafında markaların ihtiyaçlarını çözerek kariyer yapabilir ve para kazanabilirsiniz.
46. Schema ~ Structure Data
Schema Data;
Arama motorlarının web sayfalarınızı ve içeriklerinizi daha verimli anlamlandırmasını sağlar.
Schema data JSON-LD, RDFa, Microdata ile yazılımlarıyla geliştirilir.
Ücretsizdir ve Open Source bir kaynaktır. Developer ekibinin siteye enjekte etmesini
beklemeden GTM ile kolayca yapabilirsiniz.
SEO dünyasında verileri anlamlandırmak ve hedef kitleye verimli yollarla sunmak hayati
önem taşımaktadır. Schema Data ile SERP üzerinde daha estetik sonuçlar sunarsınız.
Günümüzde bir SEO uzmanın olmazsa olmazlarındandır. Arama motorları için de öyle.
Schema Data ile dilediğiniz gibi geliştirme yapabilmek için HTML, JSON, JS bilmelisiniz.
Farklı sektörlerde çözümler sunmaktadır. E-ticaret, Yemek, Rent A Car, Blog, Lokasyon vs. vs.
GTM ile Schema Data implementasyonunu rahatlıkla yapabilirsiniz.
50. AMP (Accelerated Mobile Pages)
AMP;
Google tarafından geliştirilen Yeni Mobile Web Teknolojisi
Hızlandırılmış Mobile Sayfalar anlamına gelmektedir.
Google ve kullanıcılar Speed Obsess olduğu için Mobile tarafta bu teknolojiyi üretti.
SEO dünyasında önemli bir yere sahiptir. Mobil-First Indexing ortamında daha iyi
performans gösteren sayfalar için iş modelinize ve hedeflerinize göre AMP önemli olabilir.
AMP ile E-ticaret, Blog, Kurumsal Web site yapılabilir. Modülleri iyi anlayıp geliştirme ortamında
gereksinimlere hakim olmak gerek. SEO uzmanı developer ekibini yönlendirmelidir.
AMP HTML, AMP JS, AMP Cache bileşenleri ile teknolojiyi güçlendiriyor.
Oldukça Light Weight bir yapıya sahip. Temel HTML yapısından çok farklı değil.
56. PWA (Progressive Web Apps)
PWA;
Native bir Mobile App deneyimini yaşatır..
Hem App hem de Web özelliklerini barınıdırır. Kurulabilir bir App gibi Mobile
masaüstüne app icon eklenebilir. Tıpkı bir uygulamaymış gibi.
Service Worker teknolojisi ile Offline çalışabilir.
Responsive bir altyapıya sahip olduğu için her cihaza göre uyarlanabilir.
Yalnızca mobile cihazlarda değil tüm masaüstü cihazlarda Chrome browser destekler.
HTTPS, Service Worker, App Manifest, App Shell Arch., TLS ve Workbox bileşenleri ile teknolojiyi
güçlendiriyor.
Oldukça Light Weight bir yapıya sahip AMP ile birleştirilerek harika Web App deneyimi
sunabilirsiniz.
JS bilmelisiniz ve Developer ekibi ile sağlıklı ilişkiler için yazılım öğrenmelisiniz. En Azından
anlayacak kadar ;)
57. PWA (Progressive Web Apps)
One North
https://developers.google.com/web/progressive-web-apps
58. PWA (Progressive Web Apps)
https://www.creativebloq.com/how-to/build-a-progressive-web-app
https://developers.google.com/web/progressive-web-apps/checklist
59. — Google Webmaster Help
“One common approach to creating PWAs is to use
client-side-rendering... Regardless, I'm certain that the future
will bring more and more of these kinds of sites, so as an SEO
it's great to get started on understanding them early on; and
as a front-end developer, it's important to learn the basics of
SEO too. These are certainly valuable skills & experiences that
will be in higher demand, so making a non-critical site to
practice with would be my first recommendation.”
60. 301 Redirect
Redirect 301 /pagename.php http://www.domain.com/pagename.html
Tek sayfayı 301 Redirect ederken:
Redirect 301 / http://www.domain.com/
Tüm siteyi yeni bir domaine 301 Redirect ederken:
RewriteEngine on
RewriteBase /
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
non-WWW to WWW 301 Redirect ederken:
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}
HTTP to HTTPS 301 Redirect ederken:
61. Robots.txt
Robots.txt;
Arama motorlarının web sitenizde dilediğiniz sayfayı ya da bölümü tarama(ma)sını sağlar.
Gereksiz sayfaları arama motorlarına kapatmanızı ve SERPte son kullanıcıya değersiz
sayfaların çıkmasını engellemenizi sağlar.
Web Sitenizde herhangi bir sayfanın erişimini arama motorlarına kapatmak istiyorsanız
Robots.txt dosyasını kullanın. Server-side bir dosya olduğu için botlar ilk bunu okuyacaktır.
NOINDEX META DATA arama motorlarının sayfanızı indexlememesini sağlar lakin URL adresine
erişime engel olamaz. Robots.txt ile bunun önüne geçmiş olursunuz.
Doğrudan root domain altında host edilmelidir. Domain.com/robots.txt
Çok dikkatli olunması gereken hassas bir dosya. Tek bir hatanızla tüm sitenizi arama
motorlarına kapatmış olursunuz. Bkz. Disallow: /
62. Robots.txt
User-agent: * OR User-agent: Googlebot OR User-agent: Bingbot
User Agent tanımlama
Allow: / AND Disallow: OR Disallow: /
İzinler
Disallow: /prefix
Disallow: /*prefix
Disallow: /prefix/
Disallow: /prefix*
Prefix Engelleme
Disallow: /*?param
Disallow: /*¶m
Parametre Engelleme
Disallow: /*?Param
Disallow: /*¶m
Robots.txt Case-Sensitive tir.
https://developers.google.com/search/reference/robots_txt
64. Sitemap.xml
Sitemap.xml;
Arama motorlarına web sitenizin URL adreslerini sunacağınız bir XML dosyasıdır.
Status Code: 200 dönen URL adreslerini içermelidir. 2XX, 3XX, 4XX, 5XX Status Code dönen URL
adresleri çıkarılmalıdır.
Arama motorlarına URL adreslerinizi bildirmenin en hızlı, kolay ve maliyetsiz yoldur.
Başarılı bir site haritası oluşturmak ve Developer ekibi ile iyi ilişkiler geliştirmek için XML
öğrenebilirsiniz :)
Web Sitenin herhangi bir bölümünde host edilebilir. Ya da dosyA adı herhangi bir ad olabilir.
Bkz. Domain.com/sitemap.xml OR Domain.com/sitemap/sitemap-EN.xml
XML büyük bir data tiplerinin ve kümesinin yığın halinde, bir arada ve küçük dosya boyutlarında
birleştirilmesidir. Bkz. Sitemap.xml, Product XML, Product Feed XML
Çok dilli siteler, Görseller, Videolar, Haberler ve farklı cihazlar için Sitemap oluşturabilirsiniz.
66. XPATH (XML Path Language)
XPATH;
XML veri setleriyle çalışırken istediğiniz bir elementin özelliklerini ve değerlerini scrape etmenizi
sağlar.
HTML kodları arasında dilediğiniz bir özelliği ya da elementi scrape etmek için kullanılır.
Screaming Frog, Deepcrawl, Sitebulb gibi Crawl araçlarının Data Extraction özelliğini Xpath
kullanarak veri ayrıştırmanızı sağlar.
67. XPATH (XML Path Language)
//title
Page Title
//link[@rel='canonical']/@href
Canonical Meta Data
//*[@class=xPath]
class=”xPath” adında sınıfları bulmak için
//link[@rel='amphtml']/@href
AMP URL bulmak için
//link[@rel='alternate']/@hreflang
Hreflang bulmak için
//meta[@name='description']/@content
Page Description
//@href
HTML Dökümanındaki Tüm Linkler
//h1
//h2
//h3
//h4
H1, H2, H3, H4… bulmak için
https://chrome.google.com/webstore/detail/scraper/mbigbapnjcgaffohmbkdlecaccepngjd?hl=en
69. REGEX (Regular Expression)
REGEX;
Bir veri seti içerisinde arama yapmanızı ve bir veri kümesi ayrıştırmanızı sağlar.
Bir Crawl verisi içerisinde REGEX ile belli nitelik ve nicelikte veri kümeleri bulabilirsiniz.
Screaming Frog, Deepcrawl, Sitebulb gibi Crawl araçları ile yaptığınız audit verisi içerisinde
işlem yapabilir. kısa zamanda çok fazla veriyi ayrıştırablirsiniz.
Hızlı ve kolay işlemler yapabilmenizi sağlar. Zaman kazandırır.
Data ekipleri ve Developer Ekipleri ile rahatlıkla çalışabilir. Bilgi birikiminizle derdinizi kolayca anlatabilirsiniz.
Google Analytics gibi araçlarda Detaylı analizler yapmanızı ve değerli içgörüler çıkarmanızı sağlar.
70. REGEX (Regular Expression)
^[0-9]+$
Numeric Veri Setini Bulmak
b(0?[1-9]|[12]d|3[01])([/-])(
0?[1-9]|1[012])2(d{4})
Tarih Veri Seti Bulmak
(https?://)(www.)?(?<domain>[-a-zA-Z0-9@:%._+~#=]{2,256}.[a-z]{2,6})(
?<path>/[-a-zA-Z0-9@:%_/+.~#?&=]*)?
URL Veri Seti Bulmak
^.+.(?i)(png|jpg|jpeg|gif|webp)$
Herhangi bir Görsel Bulmak
([^/]+[^/]|[^/]+[/])$
URL Adresinin Son Prefixini Bulmak
b([01]?[0-9]|2[0-3]):([0-5]d)b
Zaman Veri Setini Bulmak
^[^@s]+@[^@s]+.w{2,6}$
E-Mail Doğrulamak
https://regex101.com/
72. API (Application Program Interface)
API;
Bir programın, uygulamanın ya da web sitesinin izin verdiği ölçüde verilerini bir uygulama
arayüzü ile çekip analizler yapmanızı sağlar.
Google Analytics, Google Search Console, Google Adwords gibi online araçların API’lerini
kullanarak verileri çekebilir ve analizler gerçekleştirebilirsiniz.
Screaming Frog, Deepcrawl, Sitebulb gibi Crawl araçları ile yaptığınız audit verisi içerisinde
işlem yapabilir. kısa zamanda çok fazla veriyi ayrıştırablirsiniz.
Hızlı ve kolay işlemler yapabilmenizi sağlar. Zaman kazandırır.
Data ekipleri ve Developer Ekipleri ile rahatlıkla çalışabilir. Bilgi birikiminizle derdinizi kolayca anlatabilirsiniz.
Google Analytics gibi araçlarda Detaylı analizler yapmanızı ve değerli içgörüler çıkarmanızı sağlar.
73. — Mark Headd
““APIs are important for a number of reasons… They allow a
specific audience to use data more quickly, easily and
efficiently when they are looking to do something specific
with the information.”
74. API (Application Program Interface)
Bir programın,
uygulamanın ya da web
sitesinin izin verdiği
ölçüde verilerini bir
uygulama arayüzü ile
çekip analizler yapmanızı
sağlar.