v2.5.2
Giriş yap

Wordpress ShortCode Eklentisi Yapımı Konusunda Yardıma İhtiyacım Var?

sukas
503 defa görüntülendi

Merhabalar,

İki adet talbom var.

wp_shortTable tablosu = hangi verileri çekeceğimi belirleyeceğim tablo. Eklenti içerisinden
bu tabloya veri eklenecek.

id | permalink

testers tablosu = Kısa kod ile ekrana yazdırmak istediğim verilerin olduğu tablo.

id | value | Permalink

Bu iki farklı veri tabanında bulunan iki farklı tablo arasındaki eşleşen Permalink
değerlerini kısa kod ile ekrana yazdırmak istiyorum.

Aşağıda wp_shortTable tablosunda tek bir veri olduğunda sorunsuz şekilde ekrana
yazdırabildğim kod bulunmaktadır. Ancak wp_shortTable tablosunda birden fazla veri
olunca ekrana nasıl yazdıracağım bir türlü yapamadım.

<?php
    $wpData = $wpdb->get_row("select * from wp_shortTable order by id asc");
function kodtestkod()
{
    global $db;
    global $wpData;
    $id = $wpData->permalink;
    $site = $db->query("SELECT * FROM testers WHERE Permalink = '{$id}'",PDO::FETCH_ASSOC);
    foreach ($site as $item) {
        return $item['value'];
    }

}

add_shortcode($wpData->permalink, 'kodtestkod');
?>
Cevap yaz
Cevaplar (1)
sukas
1259 gün önce
<?php 
function getsData($params)
{
    global $db;
    $perma = $params['perm'];
    $data = $db->query("SELECT * FROM testers WHERE Permalink = '{$perma}'",PDO::FETCH_ASSOC);
    foreach ($data as $item) {
        return $item['value'];
    }
}

add_shortcode('giris','getsData');
?>

Bu şekilde değer alarak sorunu çözdüm. İstediğim değeri istediğim şekilde getirebiliyorum.

Wordpress standartlarına göre de aşağıda ki gibi kullanılıyor.

<?php 
// [bartag foo="foo-value"]
function bartag_func( $atts ) {
	$a = shortcode_atts( array(
		'foo' => 'something',
		'bar' => 'something else',
	), $atts );

	return "foo = {$a['foo']}";
}
add_shortcode( 'bartag', 'bartag_func' );
?>