Sinop Tanıtım Platformu

Php-Fusion HTML Tema Entegrasyonları 3

Php-Fusion HTML Tema Entegrasyonları 3

PHP-FUSION ve HTML Entegrasyonları 3. dersimiz ile kaldığımız yerden devam ediyoruz. Bu scripti tercih edip kullanmamın en büyük sebebi temel php yapısına sadık kalması, geliştirilebilir tema yapısı, her framework'e entegre olabilme, modüler sistem, blok sistemi, tamponlama kolaylığı, dinamik içerikte header'a bilgi gönderebilme vs. sıralanabilir. 

Bir önceki dersimizde html kod yapısının php-fusion ile çalışabilmesi için (lisans mekanizmasınıda bozmadan) gerekli kod yapısını göstermiştim. Şimdi bu yapıyı daha da geliştirerek, header fonksiyonları, meta düzenleme işlemlerini de dahil ederek, gelişmiş bir meta yapısı oluşturacağız. Bu dersimizi dikkatlice okuyup takip ediniz. Çünkü meta düzenlemeleri (seo) çekirdek yapıda bulunmayan, tamamen kendi geliştirdiğim entegrasyonlar içerecektir.

Temamızın yapısında gelen header yapısı aşağıdaki kod bloğundan oluşmakta
<html>
<head>
<title>Editorial by HTML5 UP</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<!--[if lte IE 8]><script src="assets/js/ie/html5shiv.js"></script><![endif]-->
<link rel="stylesheet" href="assets/css/main.css" />
<!--[if lte IE 9]><link rel="stylesheet" href="assets/css/ie9.css" /><![endif]-->
<!--[if lte IE 8]><link rel="stylesheet" href="assets/css/ie8.css" /><![endif]-->
</head>
<body>
           ....
       </body>
</html>

Peki hemen hemen her temada verilen bu header yapısı yanlışmı?
Elbette yanlış değil fakat eksik. İçinde bulunduğumuz bu dönemde web siteniz (scriptiniz) özellikle sosyal ağlarla etkileşimli çalışacaksa ve google tarafından düzgün algınlanması isteniyorsa, google tarafından istenen olmazsa olmaz bilgileri mutlaka bu kısımda işlemeliyiz. 

Peki standart meta yapısı nasıl olmalıdır?

Aşağıdaki kod bloğunda olmazsa olmaz ve düzgün çalışan yapıyı veriyorum
<title>Sayfa Başlığı</title>
<meta name='keywords' content='Sayfa Anahtar Kelimeler' />
<meta name='description' content='Sayfa açıklaması ( içerikle ilgili olmalı )'>
<meta name='author' content='Sayfa editörü veya sorumlu'>
<meta property='og:url' content='sayfa adresi' />
<meta property='og:type' content='içerik tipi - haber - makale - galeri vs..' />
<meta property='og:title' content='Sayfa Başlığı' />
<meta property='og:description' content='Sayfa açıklaması ( içerikle ilgili olmalı )' />
<meta property='og:image' content='sayfası temsil edecek görsel' />

Evet, kodlamaya yeni başlayanlar için yabancı meta elemanları görmetiz. og:url, og:type vs.. Bunlar OpenGraph protokolleridir. og.me web sayfasından tüm og elemanlarını görebilirsiniz. 

Meta taglarını dinamik olarak değiştirmek. Sayfanın herhangi bir yerinden meta değiştirmek.
PHP-FUSION v7 bilgi tamponlamayı çok iyi yapar, body taglar arasındaki tüm bilgiler bir değişkende tutulur, bu değişken sayfa yüklenirken head tagları arasında çalışan bir fonksiyonla okunur ve sayfaya işlenir. footer bölümünde bu değişken yeniden bilgi tamponlamak için temizlenir.  Tüm bu karmaşık işlemleri yapan dosyamız ise includes/output_handling_include.php dosyamızdadır. Hadi "çıktı işleme" anlamına gelen bu dosyamıza bir gözatalım. Neden sayfa başında dahil ediliyormuş...

Evet includes/output_handling_include.php dosyamızı herhangi bir metin editörüyle açıyoruz. 
21. $fusion_page_meta = array("description" => $settings['description'], "keywords" => $settings['keywords']);
fusion_page_meta adında bir dize değişkenine meta elemanları sıralanmış ve bu bilgileri veritabanımızdaki settings tablosundan okuyor. Demekki settigns tablomuza extra olarak eklediğimiz og bilgilerini de eklememiz gerekiyor. Eğer bu makaleyi inceliyorsanız bir tabloya alan ekleyebildiğinizi varsayıyorum. Temel Mysql ve php bilgisi olmayan okurlar lütfen burdan sonrasını okuyarak kafalarını karıştırmasınlar.

devam ediyoruz.... 
set_title
add_to_title          -> Başlığa ek yap 
set_meta              -> Meta ayarla
add_to_meta        -> Meta ekle
add_to_head        -> Head tagları arasına birşeyler ekle
add_to_footer      --> </body> sonrasına footer kısmına birşeyler ekle
replace_in_output -> çıktı değişkeninde değişiklik yap
add_handler        -> işleyici ekle
handle_output     -> buda tüm bu fonksiyonlardan gelen verileri yerli yerine yerleştir...

gibi fonksiyonları görüyoruz. Gayet akıllıca düşünülmüş olan bu fonksiyonlar adeta hayat kurtarıcı...

Öyleyse son olarak sayfa kod yapımız aşağıdaki gibi olmalı...

<?php 
require_once "maincore.php";
require_once INCLUDES."output_handling_include.php";
require_once INCLUDES."header_includes.php";
require_once THEMES."templates/render_functions.php";

 

if ($settings['maintenance'] == "1" && ((iMEMBER && $settings['maintenance_level'] == "1" 

&& $userdata['user_id'] != "1") || ($settings['maintenance_level'] > $userdata['user_level'])

)) { 

redirect(BASEDIR."maintenance.php");

 }

if (iMEMBER) { 

$result = dbquery(

"UPDATE ".DB_USERS." SET user_lastvisit='".time()."', user_ip='".USER_IP."', user_ip_type='".USER_IP_TYPE."'

WHERE user_id='".$userdata['user_id']."'"

); 

}

 

echo "<!DOCTYPE HTML>";

echo "

<html>

<head>

<title>".$settings["sitename"]."</title>

<meta charset='utf-8' />

<meta name='viewport' content='width=device-width, initial-scale=1, user-scalable=no' />

<!--[if lte IE 8]><script src='tema/assets/js/ie/html5shiv.js'></script><![endif]-->

<link rel='stylesheet' href='tema/assets/css/main.css' />

<!--[if lte IE 9]><link rel='stylesheet' href='tema/assets/css/ie9.css' /><![endif]-->

<!--[if lte IE 8]><link rel='stylesheet' href='tema/assets/css/ie8.css' /><![endif]-->";

 

if (function_exists("get_head_tags")) { echo get_head_tags(); }

 

echo "

</head>

<body>";

 

ob_start();

 

require_once INCLUDES."theme_functions_include.php";

 

function render_page($license = false) {

global $settings, $userdata,  $mysql_queries_time, $aidlink;

HTML KODLARI

}

require_once "themes/templates/footer.php";

 

?>

 

Bir sonraki dersimizde sayfadaki menu, blok yapısı, footer bilgileri işlemeye başlayacağız.


 

SGT - Mart 02 2017 Yazar Adı: PHP-FUSION · Yazdır Okunma : 1690



Etiketler

Php-Fusion v7 ve HTML Entegrasyon dersleri 2 Türkiye Offroad Şampiyonası Sinop Sinop Offroad Prof. Dr. Azmi Hamzaoğlu Kimdir? Mobil uygulamalardaki tehlike facebook telefonuma erişiyormu sahte mail fake mail eposta şifre güvenliği sosyal mühendislik Tarzan Kemal Kimdir? hackerlerın yeni taktiği steganos safe sunucum hacklendi verilerimi şifrelediler bu hackerlara dikkat hangi web tarayıcı daha hızlı Ozan Öztürk Kimdir? windows 7 ölüyormu sosyal mühendisler nasıl hedef seçer sahte hediye çekleri SSD nedir bilgisayar alırken nelere dikkat etmeliyiz HDD mi SSD mi türk ordunaryuslar cevdet kerim incedayı kimdir Paphlagonia nedir antik çağda sinop sinop adı nereden geliyor sinopa verilen isimler bozuk harddiskleri kurtarmak lazer kesim lazer takvim Ömürlük Ahşap Duvar Takvimi bitmeyen takvim 100 yıllık takvim sinoptan ne alınır sinop hediyelik eşyalar drawdizayn sinop lazer kesim sinop cnc Php-Fusion v7 ve HTML Entegrasyon dersleri 1 ahmet muhip dıranas kimdir kişiye özel fotoğraf çerçevesi Seydi Ali Reis Kimdir? doğrulama mesajlarındaki tehlike Teyyareci Nuri Bey Kimdir? Sinop İli Genel Bakış sinop hakkında bilgiler domain kiralama domain satın alınmaz kiralanır alanadı satılmaz kiralanır domain tescilleme php-fusion v7 php-fusion responsive php-fusion bootstrao php-fusion mobil cryptolocker virüsü fatura virüsü sahte fatura virüsü Yusuf Kemal Tengirşek Kimdir? her yerde IP nedir bu ip dr. muhit tümerkan kimdir sinoplu bilim adamları
Haberler