teknoloji,

Ghost CMS için Yandex Turbo Pages akışı oluşturma

Tolga Altaş Tolga Altaş Takip Et May 01, 2020 · 6 dakikada okunur
Ghost CMS için Yandex Turbo Pages akışı oluşturma
Paylaşın

Yandex Turbo Pages, Google’ın AMP teknolojisine benzer bir servistir. AMP’e kıyasla geliştiricilerin sistemlerine entegrasyonu oldukça basittir. Turbo Pages için yeni bir RSS oluşturarak kullanmaya hemen başlayabilirsiniz.

Ancak Yandex’in Turbo Pages özelliği genellikle Avrupa ve Amerika bölgelerinde geliştirilen içerik yönetim sistemleri tarafından varsayılan olarak desteklenmez. Neyse ki AMP’e göre entegrasyonu çok daha kolay olduğundan Yandex Turbo Pages’i kendi sisteminize de kolaylıkla entegre edebilirsiniz, tıpkı Ghost’a entegre edebileceğimiz gibi. Bu içerik temel olarak Kartashev‘in blogundan edinilen bilgiler ışığında hazırlanmıştır.

Kurulum

Kurulum için öncelikle temamızın dosyaları arasına yeni bir dosya daha eklememiz gerekiyor. Bunun için öncelikle Ghost paneline gidelim, Settings altında bulunan Design sekmesinde yer alan Installed Themes’de yer alan kullandığımız temayı indirelim. Tema dosyalarımızın içerisinde turbo.hbs adlı bir dosya oluşturalım ve içerisine aşağıdaki kodları ekleyelim;

<?xml version = "1.0" encoding = "UTF-8"?>
<rss
  xmlns:yandex="http://news.yandex.ru"
  xmlns:media="http://search.yahoo.com/mrss/"
  xmlns:turbo="http://turbo.yandex.ru"
  version="2.0">
<channel>
<title><![CDATA[  ]]></title>
<description><![CDATA[  ]]></description>
<link></link>
<language></language>
<turbo:analytics type="Google" id="UA-164600120-1"></turbo:analytics>
<turbo:analytics type="Yandex" id="62324554"></turbo:analytics>
<image>
    <url>/favicon.png</url>
    <title></title>
    <link></link>
</image>
<lastBuildDate></lastBuildDate>


    
    <item turbo="true">
        <title><![CDATA[  ]]></title>
        <link></link>
        <turbo:topic><![CDATA[  ]]></turbo:topic>
        <turbo:source></turbo:source>
        <author><![CDATA[  ]]></author>
        <pubDate></pubDate>
        <media:content url="" medium="image"/>
        <turbo:content><![CDATA[ <img src=""/> <p></p> 
<div class="container">
<div class="jumbotron jumbotron-fluid mb-3 pl-0 pt-0 pb-0 bg-white position-relative">
		<div class="h-100 tofront">
			<div class="row  justify-content-between ">
				<div class=" col-md-6  pr-0 pr-md-4 pt-4 pb-4 align-self-center">
					<p class="text-uppercase font-weight-bold">
                        <span class="catlist">
						
                          <a class="sscroll text-danger" href="/etiketler.html#sinema-televizyon">sinema-televizyon</a><span class="sep">, </span>
                        
                        </span>
					</p>
					<h1 class="display-4 mb-4 article-headline">Riley Stearns, yeni filmi ile geliyor: DUAL</h1>
					<div class="d-flex align-items-center">
                        
                        <img class="rounded-circle" src="https://tolgaaltas.com//assets/images/2021.jpg" alt="Tolga Altaş" width="70"/>
                        
						<small class="ml-3"> Tolga Altaş <span><a target="_blank" href="https://vero.co/tolgaaaltas" class="btn btn-outline-success btn-sm btn-round ml-1">Takip Et</a></span>
                            <span class="text-muted d-block mt-1">Apr 29, 2020 · <span class="reading-time">
  
  
    1 dakikada okunur
  
</span>
    
</span>
						</small>
					</div>
				</div>
                
				<div class="col-md-6 pr-0 align-self-center">
					<img class="rounded" src="/assets/images/dual-1.jpg" alt="Riley Stearns, yeni filmi ile geliyor: DUAL">
				</div>
                
			</div>
		</div>
	</div>
</div>





<div class="container-lg pt-4 pb-4">
	<div class="row justify-content-center">
        
        
        <!-- Share -->
		<div class="col-lg-2 pr-4 mb-4 col-md-12">
			<div class="sticky-top sticky-top-offset text-center">
				<div class="text-muted">
					Paylaşın
				</div>
				<div class="share d-inline-block">
					<!-- AddToAny BEGIN -->
					<div class="a2a_kit a2a_kit_size_32 a2a_default_style">
						<a class="a2a_dd" href="https://www.addtoany.com/share"></a>
						<a class="a2a_button_facebook"></a>
						<a class="a2a_button_twitter"></a>
					</div>
					<script async src="https://static.addtoany.com/menu/page.js"></script>
					<!-- AddToAny END -->
				</div>
			</div>
		</div>
        
        
		<div class="col-md-12 col-lg-8">
            
            <!-- Article -->
			<article class="article-post">                
			<p>Riley Stearns büyük ihtimalle Türkiye özelinde konuşacak olursak pek az kişinin tanıdığı bir yönetmen. Kendisini belki bir yönetmen olarak tanımıyor olsanız bile Mary Elizabeth Winstead’in eski eşi olarak tanıyabilirsiniz. Ancak <a href="https://www.imdb.com/name/nm2720681/">Riley Stearns</a>‘ü yönetmen olarak tanımak isteyeceğinize eminim. Kendisi bugüne kadar Faults ve <a href="https://www.imdb.com/title/tt7339248/">The Art of Self-Defense</a> filmlerini yazdı ve yönetti.</p>

<p>Kendisi şimdi yeni filmi olacak olan DUAL ile beyaz perdede boy gösterecek. Hali hazırda The Art of Self-Defense’de çalıştığı <a href="https://www.imdb.com/name/nm0251986/">Jesse Eisenberg</a> de dahil olmak üzere <a href="https://www.imdb.com/name/nm2394794/">Karen Gillian</a>, <a href="https://www.imdb.com/name/nm3872230/">Beulah Koale</a>, <a href="https://www.imdb.com/name/nm0666739/">Aaron Paul</a> ve <a href="https://www.imdb.com/name/nm2194373/">Martha Kelly</a>‘nin de kadrosunda yer alacağı film bilim kurgu gelirim konusunda olacak. Stearns, bu filmde arkadaşları ve ailesinde oluşacak üzüntüyü hafifletmek için kendisini klonlayan ölümcül hastalığa sahip Gillan’ın hayat verdiği karakterin hikayesini anlatacak. Ancak Gillan’ın karakteri, filmde mucizevi bir şekilde iyileştikten sonra klonunu ortadan kaldırmaya çalışırken başarısız olur ve mahkeme de ikisinden birinin ölmesi gereken bir düelloya karar verir.</p>

<p>Filmi hem yazıp hem de yönetecek olan Riley Stearns, XYZ Films ile anlaştı ve çekimlerin bu yaz gerçekleşeceği bilgisi de paylaşıldı.</p>

<p>Şimdilik film hakkında tüm bildiklerimiz bunlar ve benim için bu kadar bilgi bile filmi merak etmemi sağladı, çünkü yönetmenin ilk uzun metraj filmi Faults her ne kadar nevişahsına münhasır olsa da çok beğenimi kazanmamıştı ancak ikinci uzun metraj filmi olan The Art of Self-Defense’i izlerken gerçekten oldukça keyifli vakit geçirmiştim. Stearns, yine filminin geçtiği kurgu evrenin esaslarına bağlı kalarak bize güzel ve farklı bir hikaye anlatacak gibi gözüküyor. Şimdiden patlamış mısır stoğumu kontrol ediyorum.</p>
                
			</article>
			
			<!-- Tags -->
			<div class="mb-4">
				<span class="taglist">
				
				</span>
			</div>
 
            <!-- Mailchimp Subscribe Form -->
            
			<div class="border p-5 bg-lightblue">
				<div class="row justify-content-between">
					<div class="col-md-6 mb-2 mb-md-0">
						<h5 class="font-weight-bold">Bültene Abone Ol</h5>
						 Son gönderilerden ilk sen haberdar ol. Asla istenmeyen ileti almadan!
					</div>
					<div class="col-md-6">
						<div class="row">
                            <form action="https://tolgaaltas.us8.list-manage.com/subscribe/post?u=f466b0644dff94a7d92722e31&amp;id=87a6d466a0" method="post" name="mc-embedded-subscribe-form" class="wj-contact-form validate w-100" target="_blank" novalidate>
                            <div class="mc-field-group">
							
								<input type="email" placeholder="E-posta adresinizi girin" name="EMAIL" class="required email form-control w-100" id="mce-EMAIL" autocomplete="on" required>
							
							
								<button type="submit" value="Subscribe" name="subscribe" class="heart btn btn-success btn-block w-100 mt-2">Abone Ol</button>
							
                            </div>
                            </form>
						</div>
					</div>
				</div>
			</div>
            
            
            
             <!-- Author Box -->
                				
				<div class="row mt-5">
					<div class="col-md-2 align-self-center">
                         
                        <img class="rounded-circle" src="https://tolgaaltas.com//assets/images/2021.jpg" alt="Tolga Altaş" width="90"/>
                         
					</div>
					<div class="col-md-10">		
                        <h5 class="font-weight-bold">Tolga Altaş tarafından yazıldı <span><a target="_blank" href="https://vero.co/tolgaaaltas" class="btn btn-outline-success btn-sm btn-round ml-2">Takip Et</a></span></h5>
						I don't know what I'm doing but I'm going to figure it out.					
					</div>
				</div>				
                
            
            <!-- Comments -->
            
                <!--  Don't edit anything here. Set your disqus id in _config.yml -->

<div id="comments" class="mt-5">
<div id="graphcomment"></div>
<script type="text/javascript">

  /* - - - CONFIGURATION VARIABLES - - - */

  // make sure the id is yours
  window.gc_params = {
    graphcomment_id: 'tolgaaltas',

    // if your website has a fixed header, indicate it's height in pixels
    fixed_header_height: 0,
  };

  /* - - - DON'T EDIT BELOW THIS LINE - - - */

  
  (function() {
    var gc = document.createElement('script'); gc.type = 'text/javascript'; gc.async = true;
    gc.src = 'https://graphcomment.com/js/integration.js?' + Date.now());
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(gc);
  })();

</script>
</div>

            
            
		</div>
        
        
	</div>
</div>


<!-- Aletbar Prev/Next -->
<div class="alertbar">
    <div class="container">
        <div class="row prevnextlinks small font-weight-bold">
          
            <div class="col-md-6 rightborder pl-0">
                <a class="text-dark" href="/lifalif-ay-cekirdekli-domatesli-yulaf-toplari/"> <img height="30px" class="mr-1" src="/assets/images/lifalif.jpg">  Lifalif Ay Çekirdekli & Domatesli Yulaf Topları</a>
            </div>
          
          
            <div class="col-md-6 text-right pr-0">
                <a class="text-dark" href="/ghost-cms-icin-yandex-turbo-pages-akisi-olusturma/"> Ghost CMS için Yandex Turbo Pages akışı oluşturma  <img height="30px" class="ml-1" src="/assets/images/turbo-pages.jpg"> </a>
            </div>
          
        </div>
    </div>
</div>
 ]]></turbo:content>
    </item>
    


</channel>
</rss>

Temel olarak aslında Alexey’in hazırladığı ile hemen hemen aynı. Ama biz dilin otomatik tanımlanmasını sağlayan küçük bir düzeltme yaptık. Alexey ayrıca filtreleme için kendi İngilizce gönderine göre bir düzenleme yapmıştı, biz tüm gönderileri kapsaması için küçük bir düzenleme yaptık. Bir de ben öne çıkan görsellerin de gözükmesi için çok küçük bir ekleme daha yaptım kodda. Daha sonra Excerpt kısmının RSS’te gözükmediğini fark ederek içeriğin bütünlüğünün bozulmaması amacıyla bu kısmı da ekledim. Kısaca Kartashev bize Custom RSS için güzel bir şablon oluşturmuş ama pek çok eskikliği içerisinde barındırıyordu. Bizim yaşadığımız en büyük sorun ise dil bilgisi ile beraber tarih formatının da Türkçe’ye dönüşmesiydi ki bu RSS’in doğrulanmasında hata yaratıyordu. Bu nedenle <pubDate></pubDate> kısmını silmeniz gerekebilir. Ayrıca 12. ve 13. satırlardaki Google ve Yandex servislerine ait takip kodlarını da değiştirmeyi unutmayın. Ardından düzenlemiş olduğunuz dosyayı kaydedin ve Ghost’a yükleyin.

Bir sonraki adım ise Routes üzerinde gerçekleşecek. Bunun için yine panele gidin, Settings altındaki Labs menüsünü görüntüleyin. Beta Features altında yer alan Routes’ta bulunan Download current routes.yaml bağlantısına tıklayın. Mevcut dosyayı açtıktan sonra routes: satırının hemen altına aşağıdaki kodu ekleyin;

  /rss/turbo/:
    template: turbo
    content_type: text/xml

Dosyayı kaydedin ve yeniden yükleyin. Tüm işlemler bu kadar, eğer her şey doğru ise siteniz.com/rss/turbo bağlantısını kullanarak akışınızı görüntüleyebilirsiniz. Servisin Yandex’te etkili olması için sitenizi Yandex.Webmaster servisine kaydetmeli ve Turbo Pages için ilgili akışı tanımlamalısınız. Tanımlama işlemi esnasında hata kodu alıyorsanız muhtemelen yukarıda bahsettiğim tarihlerin Türkçe görüntülenmesi nedeniyledir, ilgili satırları sildiğinizde bir sorun yaşamayacağınızı düşünüyorum.

Melih‘e de buradan hatayı çözmeye vakit ayırdığı için teşekkür ederim, bayağı vakit ayırıp araştırdı ama bir sonuca varamadık maalesef.

Bunun haricinde Ghost CMS için Google News site haritası oluşturmayı düşünüyorsanız bu konu hakkında da bir yazı yazdım. Eğer Ghost CMS ile bir basın & haber sitesi hazırlamaya ilginiz varsa yazdığım yazıya da mutlaka göz atmanızı tavsiye ederim.

Bültene Abone Ol
Son gönderilerden ilk sen haberdar ol. Asla istenmeyen ileti almadan!
Tolga Altaş
Tolga Altaş tarafından yazıldı Takip Et
I don't know what I'm doing but I'm going to figure it out.