yakuphoca adlı üyeden alıntı

Bunun için elinizde hazır bir eklenti vs. var mı? Şu durumda eklenti yazmak gerekecek.
Ayrıca özel alanlarınızın adlarını, içerilerindeki bilgilerden birkaç örneği, taxonomylerinizin tanımlandığı kodları ya da en azından adlarını (örneğin yönetmen şeklinde taksonomi olmaz, olsa olsa yonetmen şeklinde olur) yazmanız iyi olur.


başka bir amaçla kullandığım eklentinin işime yarayacak parçalarını şu şekilde kestim üstadım bunun üzerine olabilir. gerçi hala fazla yerler var kullanılmayan.


/*
Plugin Name: Aktarım
Plugin URI: http://www.filmlerbizden.com
Description: aktarım
Version: 1.0
Author: Magical
Author URI: http://www.filmlerbizden.com
License: Kafasına göre :)
*/
/* Direkt çağrıları Engelleyelim */
if (preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF']))
{
die('You are not allowed to call this page directly.');
}

//Varsayılan Değer Atayalım
register_activation_hook(__FILE__, 'aktarim_eklenti_varsayilan');
function aktarim_eklenti_varsayilan( ) {
add_option('aktarim_eklenti_secenek', 'Aktarım');
}
//Değerleri Silelim
register_deactivation_hook(__FILE__, 'aktarim_eklenti_kaldirildi');
function aktarim_eklenti_kaldirildi( ) {
delete_option('aktarim_eklenti_secenek');
}

/* Admin Alanı için Sayfa Linki ve Sayfamızı Oluşturalım */
add_action('admin_menu', 'aktarim_eklentim_yonetim');
function aktarim_eklentim_yonetim()
{
add_menu_page( "Aktarım", "Aktarım", "administrator", basename( __FILE__ ), "aktarim_eklentim_fonks" );
}
function aktarim_eklentim_fonks() {
//Değerlerimizi güncelleyelim
if ($_POST['gizli'] == 'tmm') {
//Gönderdiğimiz veriyi alalım
$bizim_verimiz = $_POST['msid'];
//türkçe karakterleri düzeltelim.
function karakterleri_duzelt($tr1) {
$turkce = array( 'ş', 'Ş', 'ı', '(', ')', '‘', 'ü', 'Ü', 'ö', 'Ö', 'ç', 'Ç', ' ', '/', '*', '?', 'ş', 'Ş', 'ı', 'ğ', 'Ğ', 'İ', 'ö', 'Ö', 'Ç', 'ç', 'ü', 'Ü', 'Ãœ', 'ÅŸ', 'ÄŸ', 'Ç', 'Ä°', 'Ö', 'ü', 'ÅŸ', 'ÄŸ', 'ç', 'ı', 'ö' );
$duzgun = array( 's', 'S', 'i', '', '', '', 'u', 'U', 'o', 'O', 'c', 'C', '-', '-', '-', '', 's', 'S', 'i', 'g', 'G', 'I', 'o', 'O', 'C', 'c', 'u', 'U', 'U', 'S', 'G', 'C', 'I', 'O', 'u', 's', 'g', 'c', 'i', 'o' );
$tr1 = str_replace( $turkce, $duzgun, $tr1 );
$tr1 = preg_replace( '@[^A-Za-z0-9\-_]+@i', '', $tr1 );
return $tr1;
}
//posttaki veri

//arama kurtarma ekibi :)
//$my_post = array();


?>

yonetmen: postmeta = $wpdb->prefix . 'postmeta';
$metalar = $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key='yonetmen' AND (meta_id >= 1794 AND meta_id <= 1873)");
if ($metalar) {
foreach ($metalar as $meta) {
echo $meta->meta_id;
echo '
';
echo $meta->meta_value;
}
} ?>



}
?>

Eklentim Yönetim Sayfası
















form kutucuğu sadece geçiş yapabilmem için. boş gitsede sorun yok yani.

özel alan | aktarılacak taxonomy
___________________________________
oyuncular | oyuncu
yapim | yil
yonetmen | yonetmen


şeklinde üstadım.
oyuncular özel alanı : hulusi kentmen, şener şen, adile naşit ancak bazılarında 3 ten fazla var. ben şimdi ilk 3 oyuncuyu aıyorum ancak hepsi olsada sorun olmayaaktır.
yonetmen özel alanı : ahmet ahmetoğlu, mehmet mehmet oğlu gibi. bazılarında 2 3 yönetmen olabiliyor.
yapim : 2011

gibi

Ek Olarak: verildiği gibi ve
$metalar = $wpdb->get_results("SELECT * FROM $wpdb->film_postmeta WHERE meta_key='yonetmen' AND (post_id BETWEEN 17 AND 73)");
şeklinde deneme yapmama rağmen sonuç alamadım. veriler listelenmedi.
get_post_meta( $post_id, 'yonetmen', true );
bu şekilde normal olarak albiliyorum verileri. acaba buradaki post_id yerine istediğimiz gibi iki post_id arasındakileri yazdırabilir miyiz?

Ek Olarak:

Konyalı adlı üyeden alıntı



$listele=mysql_query("SELECT * FROM TabloAdi");//Veritabanı çekilecek tablo

/*Veritabanındaki tabloları satı satır çektik.*/
while($yaz=mysql_fetch_array($listele)){
$id=$yaz["id"];
$okul=$yaz["okul"];
$ortaokul=$yaz["ortaokul"];
$lise=$yaz["lise"];
}

/*Tablolarla id si 58 ile 437 arasında bulunan idleri çağırdık.*/
for($id=58;$id<437;$id++){

echo "

















ID $id
Okul $okul
Ortaokul $ortaokul
Lise $lise

";

}

?>


işinizi görecektir.



if (!@mysql_connect($dbhost, $dbuser, $dbpass)) {
die("Veritabanına bağlanılamadı...
HATA: ".mysql_error());
}
if (!@mysql_select_db($dbdata)) {
die("Veritabanı seçilemedi
HATA: ".mysql_error());
}

$listele=mysql_query("SELECT * FROM film_postmeta WHERE meta_key='oyuncular'");//Veritabanı çekilecek tablo
/*Veritabanındaki tabloları satı satır çektik.*/
while($yaz=mysql_fetch_array($listele)){
$id=$yaz["post_id"];
$okul=$yaz["meta_value"];
}

/*Tablolarla id si 58 ile 437 arasında bulunan idleri çağırdık.*/
for($id=1794;$id<1800;$id++){

echo "









ID $id
Okul $okul

";

}

?>
bu sorgu ilede idler değişiyor ancak meta bilgileri hep sabit.

Ek Olarak: an itibariyle sorunu hallettim sayılır. bir iki ufak şey kaldı.
for döngüsüne meta_value boş olanları dahil etmemek gibi. ve yapailirsem eğer pek gerekli olmasada oyuncuların ilk üç tanesini almak.