Siteyi arama motoru gibi görmek için public_html dosyası içinde delorie.htm isimli boş bir sayfa yerleştiriyoruz.
Sonra Lynx Viewer http://www.delorie.com sayfasına site adresimizi yazıyoruz.
Arama motorları sitemizi nasıl göroyorsa bizde öyle görebileceğiz.
29 Eylül 2014 Pazartesi
31 Ağustos 2014 Pazar
Wordpress Üst Menüden Class wp_nav_menu Kaldırma
Wordpress temalarının üst menüsünde <ul> <li> Class değerleri çok uzun bunları nasıl kaldırırım diye küçük bir araştırmanın sonunda.
Temamızın functions.php dosyası içerisine sadece şu kodları eklemem yetti.
-------
add_filter('nav_menu_css_class', 'my_css_attributes_filter', 100, 1);
add_filter('nav_menu_item_id', 'my_css_attributes_filter', 100, 1);
add_filter('page_css_class', 'my_css_attributes_filter', 100, 1);
function my_css_attributes_filter($var) {
return is_array($var) ? array() : '';
}
-------
Kaynak : http://stackoverflow.com/
Eski Haline örnek
-------
<div id="navi">
<div class="menu-primary-container">
<ul id="menu-primary" class="menu">
<li id="menu-item-14" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-14"></li>
<li id="menu-item-16" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-16"></li>
<li id="menu-item-20" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20"></li>
<li id="menu-item-15" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-15"></li>
<li id="menu-item-17" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17"></li>
</ul>
</div>
-------
Temamızın functions.php dosyası içerisine sadece şu kodları eklemem yetti.
-------
add_filter('nav_menu_css_class', 'my_css_attributes_filter', 100, 1);
add_filter('nav_menu_item_id', 'my_css_attributes_filter', 100, 1);
add_filter('page_css_class', 'my_css_attributes_filter', 100, 1);
function my_css_attributes_filter($var) {
return is_array($var) ? array() : '';
}
-------
Kaynak : http://stackoverflow.com/
Eski Haline örnek
-------
<div id="navi">
<div class="menu-primary-container">
<ul id="menu-primary" class="menu">
<li id="menu-item-14" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-14"></li>
<li id="menu-item-16" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-16"></li>
<li id="menu-item-20" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-20"></li>
<li id="menu-item-15" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-15"></li>
<li id="menu-item-17" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-17"></li>
</ul>
</div>
-------
Wordpress Header kodlarını Footer 'a Gönderme
Wordpress kurulu sitede SEO için site yüklenme hızlandırma çalışmalarında, Wordpress Header bölümüne .js .css gibi kodları gönderen wp kodlarını değiştirmek lazım oldu. Bi inceleyelim.
Önce bulduğumuz kodları yazalım.
Examples
------------
Add custom css within head section using wp_head action.
add_action('wp_head','hook_css');
function hook_css()
{
$output="<style> .wp_head_example { background-color : #f1f1f1; } </style>";
echo $output;
}
----------
Add custom javascript within head section using wp_head action.
----------
add_action('wp_head','hook_javascript');
function hook_javascript()
{
$output="<script> alert("Page is loading..."); </script>";
echo $output;
}
----------
Kaynak : http://codex.wordpress.org/Plugin_API/Action_Reference/wp_head
Wordpress Footer veya Header bölümüne scritp veya html kodu ekleme kodları.
Add PHP to your head -( Header 'a PHP kodu ekleme.)
-----------
// Add scripts to wp_head()
function child_theme_head_script() {
// Your PHP goes here
}
add_action( 'wp_head', 'child_theme_head_script' );
------------
Add HTML to your head - (Header 'a HTML kodu ekleme.)
------------
// Add scripts to wp_head()
function child_theme_head_script() { ?>
<!-- Your HTML goes here -->
<?php }
add_action( 'wp_head', 'child_theme_head_script' );
----------
Bu kodları hazırladığımız plugin içine veya başka bir yere yazacağız. (function.phd) de kullanılabilir diye düşünüyorum. Benim niyetim pluginlerin header eklediklerini footer bölümüne göndermek, şimdi de footer bölümüne gönderecek foknsiyon kodunu bulalım.
--------------
<?php
function your_function() {
echo '<p>This is inserted at the bottom</p>';
}
add_action('wp_footer', 'my_function');
?>
-----------------
<?php
function your_function() {
echo '<p>This is inserted at the bottom</p>';
}
add_action('wp_footer', 'your_function', 100);
?>
-------------------
KAYNAK http://codex.wordpress.org/Plugin_API/Action_Reference/wp_footer
Bu kodları buldum ancak ben plugin de değişiklik yaparak, head bölümünde yer alan css ve js dosyalarını foot bölümüne göndermek istiyordum. Konuyu şimdilik tamamlayamasamda kullandığımı pluginin
add_action('wp_print_styles', array(&$this, 'WP_print_styles'));
yazılı satırını aşağıdaki gibi yaptım.
add_action('wp_footer', array(&$this, 'WP_print_styles'));
Şimdilik işin bir kısmını halletim ancak asıl istediğim olmadı. Konuyuda bir yere bağlayamadık.
Bu çalışmaları kamuya açık çalışma notlarım olduğunu unutmayın. Sadece öğrendiklerimi paylaşıyorum.
Önce bulduğumuz kodları yazalım.
Examples
------------
Add custom css within head section using wp_head action.
add_action('wp_head','hook_css');
function hook_css()
{
$output="<style> .wp_head_example { background-color : #f1f1f1; } </style>";
echo $output;
}
----------
Add custom javascript within head section using wp_head action.
----------
add_action('wp_head','hook_javascript');
function hook_javascript()
{
$output="<script> alert("Page is loading..."); </script>";
echo $output;
}
----------
Kaynak : http://codex.wordpress.org/Plugin_API/Action_Reference/wp_head
Wordpress Footer veya Header bölümüne scritp veya html kodu ekleme kodları.
Add PHP to your head -( Header 'a PHP kodu ekleme.)
-----------
// Add scripts to wp_head()
function child_theme_head_script() {
// Your PHP goes here
}
add_action( 'wp_head', 'child_theme_head_script' );
------------
Add HTML to your head - (Header 'a HTML kodu ekleme.)
------------
// Add scripts to wp_head()
function child_theme_head_script() { ?>
<!-- Your HTML goes here -->
<?php }
add_action( 'wp_head', 'child_theme_head_script' );
----------
Bu kodları hazırladığımız plugin içine veya başka bir yere yazacağız. (function.phd) de kullanılabilir diye düşünüyorum. Benim niyetim pluginlerin header eklediklerini footer bölümüne göndermek, şimdi de footer bölümüne gönderecek foknsiyon kodunu bulalım.
--------------
<?php
function your_function() {
echo '<p>This is inserted at the bottom</p>';
}
add_action('wp_footer', 'my_function');
?>
-----------------
<?php
function your_function() {
echo '<p>This is inserted at the bottom</p>';
}
add_action('wp_footer', 'your_function', 100);
?>
-------------------
KAYNAK http://codex.wordpress.org/Plugin_API/Action_Reference/wp_footer
Bu kodları buldum ancak ben plugin de değişiklik yaparak, head bölümünde yer alan css ve js dosyalarını foot bölümüne göndermek istiyordum. Konuyu şimdilik tamamlayamasamda kullandığımı pluginin
add_action('wp_print_styles', array(&$this, 'WP_print_styles'));
yazılı satırını aşağıdaki gibi yaptım.
add_action('wp_footer', array(&$this, 'WP_print_styles'));
Şimdilik işin bir kısmını halletim ancak asıl istediğim olmadı. Konuyuda bir yere bağlayamadık.
Bu çalışmaları kamuya açık çalışma notlarım olduğunu unutmayın. Sadece öğrendiklerimi paylaşıyorum.
26 Ağustos 2014 Salı
Wordpress Yazı İçeriğini Topluca Değiştirme
Blooğumda ki bazı yazılar içinde sabit bir kod vardı bunun değişmesi gerekiyordu googleye sordum aşağıdaki kodları verdi birkaç sitede aynı kodları görünce denedim sonuç başarılı. Çok kolay oldu. Not edelim lazım olur diye düşündüm.
phpMyAdmin de wordpress tablolarına giriyorum, yedeklerimi alıyorum,
UPDATE wp_posts SET post_content = replace(post_content, 'eski yazı', 'yeni yazı');
UPDATE wp_posts SET post_content = replace( post_content, 'deneme123', 'deneme1234' ) ;
phpMyAdmin de wordpress tablolarına giriyorum, yedeklerimi alıyorum,
UPDATE wp_posts SET post_content = replace(post_content, 'eski yazı', 'yeni yazı');
UPDATE wp_posts SET post_content = replace( post_content, 'deneme123', 'deneme1234' ) ;
Etiketler:
değiştirme,
phpMyAdmin,
post,
post_content,
Wordpress,
yazı içeriği
Wordpress SQL Tablosu phpMyAdmin de WP_PostMeta Temizleme
Dünden buyada şişmiş olan SQL tablolarını temizlemeye çalışıyorum epey bi elle uğraştım. SQL tablolarını inceleyip kafama yatmayan verileri ARA yaparak kimisininde deneme yanılma yolu ile sildim.
50 MiB WP_PostMeta tablosunu 22.1 MiB indirdim. Satır sayısı hala 77,587 'de.
phpMyAdmin üzerinden,
SİLDİĞİM BAZI KEYLER (dünden buyana siliyorum aklıma gelenler bunlar.)
phpMyAdmin wordpress tablolarına giriş yaptım.
localhost >> ..._tabloadi>> wp_postmeta seç
ARA
meta_key karşısına (silinecek key verilerini) yaz LIKE seçili
Seçeneklerden Sayfa başına satır sayısı ben 1000 yaptım
GİT
Çıkan sonuşlardan, hepsini seç
SİL
Sildiğim ve henüz bir problem yaşamadığım meta_key satırları.
aa
hh
jj
mm
mn
cur_aa
cur_hh
cur_jj
cur_mm
cur_mn
closedpostboxesnonce
excerpt (meta_key dosyasında olması ilginç, önce denedim sonra hepsini sildim. Şimdilik sorun yok.)
samplepermalinknonce
edit_date (herhalde yazı düzenleme tarihi diye düşünerek 110 kayıt sildim.)
_status
save_menu
------------------
Çalışmalarımı aşağıdaki kodlarla devam ettireceğim tekrar lazım olur diye not ediyorum.
SQL Tablosunda kullanılmayan etiketleri (post tags ) temizleme.
Etiket kaydedilmiş ama bağlı yazısı yok, nasıl olduysa oluyor işte.
SQL kod bölümüne aşağıdaki kodları yapıştırdım GİT butonuna bastım
DELETE FROM wp_terms WHERE term_id IN (SELECT term_id FROM wp_term_taxonomy WHERE COUNT = 0 );
DELETE FROM wp_term_taxonomy WHERE term_id NOT IN (SELECT term_id FROM wp_terms);
DELETE FROM wp_term_relationships WHERE term_taxonomy_id NOT IN (SELECT term_taxonomy_id FROM wp_term_taxonomy);
SQL kod bölümüne aşağıdaki kodları yapıştırdım GİT butonuna bastım ve optimize ettim.
OPTIMIZE TABLE `wp_terms` , `wp_term_taxonomy` , `wp_term_relationships`;
-----------------------------
wp_postmeta tablosundaki verileri gruplayarak sayalım

SELECT meta_key, COUNT(meta_key) FROM wp_postmeta GROUP BY meta_key;
SQL (SQL sorgusu çalıştır) kod bölümüne
SELECT meta_key, COUNT( meta_key )
FROM wp_postmeta
GROUP BY meta_key
LIMIT 0 , 500
güzel bir kod şimdi meta_key kolonunda ki verileri ve kullanma sayısın görebiliyorum. Gerisi yorumlamaya kaldı.
şimdi aşağıdaki kodu deniyorum.
DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';
DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';
SONUÇ
DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';# 1586 satır etkilendi.
DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';# 1546 satır etkilendi.
Bu kadar çok satır etkilenmesi beni korkuttu, bakalım sitemiz ne durumda.
Bir sorun yok görünüyor. Hemen bir dışa aktarla bir yedek daha alıp araştırmaya devam ediyoruz.
----------------
wp_options tablosundan feed cache dosyalarını silmekte sakınca görmedim ve aşağıdaki kodla 19 satır silindi.
DELETE FROM `wp_options` WHERE `option_name` LIKE ('_transient%_feed_%')
------------------
İşi bu kodla başlamıştım. SQL temizleme deyince Türkçe bloglarda tüm detayları ile yer alıyor, bizde not edelim.
DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'
50 MiB WP_PostMeta tablosunu 22.1 MiB indirdim. Satır sayısı hala 77,587 'de.
phpMyAdmin üzerinden,
SİLDİĞİM BAZI KEYLER (dünden buyana siliyorum aklıma gelenler bunlar.)
phpMyAdmin wordpress tablolarına giriş yaptım.
localhost >> ..._tabloadi>> wp_postmeta seç
ARA
meta_key karşısına (silinecek key verilerini) yaz LIKE seçili
Seçeneklerden Sayfa başına satır sayısı ben 1000 yaptım
GİT
Çıkan sonuşlardan, hepsini seç
SİL
Sildiğim ve henüz bir problem yaşamadığım meta_key satırları.
aa
hh
jj
mm
mn
cur_aa
cur_hh
cur_jj
cur_mm
cur_mn
closedpostboxesnonce
excerpt (meta_key dosyasında olması ilginç, önce denedim sonra hepsini sildim. Şimdilik sorun yok.)
samplepermalinknonce
edit_date (herhalde yazı düzenleme tarihi diye düşünerek 110 kayıt sildim.)
_status
save_menu
------------------
Çalışmalarımı aşağıdaki kodlarla devam ettireceğim tekrar lazım olur diye not ediyorum.
SQL Tablosunda kullanılmayan etiketleri (post tags ) temizleme.
Etiket kaydedilmiş ama bağlı yazısı yok, nasıl olduysa oluyor işte.
SQL kod bölümüne aşağıdaki kodları yapıştırdım GİT butonuna bastım
DELETE FROM wp_terms WHERE term_id IN (SELECT term_id FROM wp_term_taxonomy WHERE COUNT = 0 );
DELETE FROM wp_term_taxonomy WHERE term_id NOT IN (SELECT term_id FROM wp_terms);
DELETE FROM wp_term_relationships WHERE term_taxonomy_id NOT IN (SELECT term_taxonomy_id FROM wp_term_taxonomy);
SQL kod bölümüne aşağıdaki kodları yapıştırdım GİT butonuna bastım ve optimize ettim.
OPTIMIZE TABLE `wp_terms` , `wp_term_taxonomy` , `wp_term_relationships`;
-----------------------------
wp_postmeta tablosundaki verileri gruplayarak sayalım

SELECT meta_key, COUNT(meta_key) FROM wp_postmeta GROUP BY meta_key;
SQL (SQL sorgusu çalıştır) kod bölümüne
SELECT meta_key, COUNT( meta_key )
FROM wp_postmeta
GROUP BY meta_key
LIMIT 0 , 500
güzel bir kod şimdi meta_key kolonunda ki verileri ve kullanma sayısın görebiliyorum. Gerisi yorumlamaya kaldı.
şimdi aşağıdaki kodu deniyorum.
DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';
DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';
SONUÇ
DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';# 1586 satır etkilendi.
DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';# 1546 satır etkilendi.
Bu kadar çok satır etkilenmesi beni korkuttu, bakalım sitemiz ne durumda.
Bir sorun yok görünüyor. Hemen bir dışa aktarla bir yedek daha alıp araştırmaya devam ediyoruz.
----------------
wp_options tablosundan feed cache dosyalarını silmekte sakınca görmedim ve aşağıdaki kodla 19 satır silindi.
DELETE FROM `wp_options` WHERE `option_name` LIKE ('_transient%_feed_%')
------------------
İşi bu kodla başlamıştım. SQL temizleme deyince Türkçe bloglarda tüm detayları ile yer alıyor, bizde not edelim.
DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'
24 Ağustos 2014 Pazar
JavaScript CSS Dosya Sıkıştırma Online Minify
Online JavaScript/CSS Compression Using YUI Compressor
ÖNERİLEN KAYNAK SİTE : http://refresh-sf.com/yui/
AYARLAR
Şeklinde olması yeterli. Diğer ayarlara dokunmaya gerek yok.
JavaScript CSS Dosya Sıkıştırma Online Minify yapmak
ÖNERİLEN KAYNAK SİTE : http://refresh-sf.com/yui/
AYARLAR
Şeklinde olması yeterli. Diğer ayarlara dokunmaya gerek yok.
JavaScript CSS Dosya Sıkıştırma Online Minify yapmak
16 Haziran 2014 Pazartesi
Input Gölge Yazı Ekleme JavaScript Kodu
Input içerisine Java Script kodu kllanarak geçici bir yazı yazdırma, input içine tıklandığında görünen demo yazı kaybolacak, kullanıcı tarafından yazılan yazı görünecek, kullanıcı yazısını sildiğinde tekrar demo yazımız. Örneğimizde "Kullanıcı Adı Buyara Girilecek" yazısı görünecek.
Aşağıda yazılı kodların DEMO uygulaması
Örneğimizin kodları
<input type="text" name="username" placeholder="Kullanıcı Adı Buyara Girilecek" />
<script>
$(document).ready(function () {
if(!Modernizr.input.placeholder) {
$('[placeholder]').focus(function () {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
input.removeClass('placeholder');
}
}).blur(function () {
var input = $(this);
if (input.val() == '' || input.val() == input.attr('placeholder')) {
input.addClass('placeholder');
input.val(input.attr('placeholder'));
}).blur();
$('[placeholder]').parents('form').submit(function () {
$(this).find('[placeholder]').each(function () {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
}
})
});
}
})
</script>
Aşağıda yazılı kodların DEMO uygulaması
Örneğimizin kodları
<input type="text" name="username" placeholder="Kullanıcı Adı Buyara Girilecek" />
<script>
$(document).ready(function () {
if(!Modernizr.input.placeholder) {
$('[placeholder]').focus(function () {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
input.removeClass('placeholder');
}
}).blur(function () {
var input = $(this);
if (input.val() == '' || input.val() == input.attr('placeholder')) {
input.addClass('placeholder');
input.val(input.attr('placeholder'));
}).blur();
$('[placeholder]').parents('form').submit(function () {
$(this).find('[placeholder]').each(function () {
var input = $(this);
if (input.val() == input.attr('placeholder')) {
input.val('');
}
})
});
}
})
</script>
Etiketler:
input,
input value,
JavaScript,
örnek kodlar
Kaydol:
Kayıtlar (Atom)
