2017-03-28 89 views
9

Im this scriptUyarı: hattında /var/www/html/mytheme/wp-includes/formatting.php dize dönüştürme Dizi 1025

I kullanarak Metabokslar dosyasında yerine özel alan kimlikleri değişken eklemek için çalışıyor özel alanların değiştirilmesine olanak tanımak için redux çerçevesinde bazı seçenekler ekledi.

<?php 
/*global from framework*/ 
global $redux; 
/*custom fields options retrieved from redux framework*/ 
$custom_videourl = $redux['mytheme_videourl']; 
$custom_duration = $redux['mytheme_duration']; 
$custom_description = $redux['mytheme_desc']; 
$fields = array(
    array(
    'label' => __('MP4/FLV & Youtube Url', 'framework'), 
    'desc' => __('Here you can add videos with mp4 format', 'framework'), 
    'id' => $custom_videourl, 
    'type' => 'text' 
    ), 
    array(
    'label' => __('Video Duration', 'framework'), 
    'desc' => __('Example: 5:20', 'framework'), 
    'id' => $custom_duration, 
    'type' => 'text' 
    ), 
    array(
    'label' => __('Video Description', 'framework'), 
    'id' => $custom_description, 
    'desc' => __('Here you can write a description', 'framework'), 
    'type' => 'editor' 
    ) 
); 
$my_metaboxes = new custom_add_meta_box('mytheme_metaboxes', __('Video - Additional Information', 'framework'), $fields, 'post', true); 

Fakat yukarıdaki örnekle ben Bildirim var: 1025

Yani on line /var/www/html/mytheme/wp-includes/formatting.php dize dönüştürme Dizi ı eklerseniz değişken Metabokslar olmadan özel alan ince içeriğin altındaki gibi çalışıyoruz:

$fields = array(
    array(
    'label' => __('MP4/FLV & Youtube Url', 'framework'), 
    'desc' => __('Here you can add videos with mp4 format', 'framework'), 
    'id' => 'mytheme_videourl', 
    'type' => 'text' 
    ), 
    array(
    'label' => __('Video Duration', 'framework'), 
    'desc' => __('Example: 5:20', 'framework'), 
    'id' => 'mytheme_duration', 
    'type' => 'text' 
    ), 
    array(
    'label' => __('Video Description', 'framework'), 
    'id' => 'mytheme_desc', 
    'desc' => __('Here you can write a description', 'framework'), 
    'type' => 'editor' 
    ) 
); 
$my_metaboxes = new custom_add_meta_box('mytheme_metaboxes', __('Video - Additional Information', 'framework'), $fields, 'post', true); 

Ben print_r kullanarak denedi ama Metabokslar daha tutmuyoruz. İlk kodu çalışmanın bir yolu var mı? Özel alan kimlikleri yerine değişkenler kullanılıyor mu?

+0

Örneğin içeriği nedir. $ redux ['mytheme_videourl']; '? Dikkat, bunun bir dizi olduğunu söylüyor, ama sadece belirli bir elemente sahip olmak istiyorsun. – Eknoes

+0

'$ redux ['mytheme_videourl'];' redux/tema ayarları panelinde sadece bir alan redux framework seçeneğidir. Gördüğünüz gibi customfields değiştirilebilme imkanı vermek istiyorum. Bu değişkenleri sadece meta kutularımda kullanmak istiyorum.Metaboxes dosyası, yayın editörünün altındaki özel alan seçeneklerini oluşturuyor ve bildirim de editörün altında. – Gazi

+0

Evet Biliyorum, ama $ redux ['mytheme_videourl']; 'bir dizidir, String değildir. İçeriğini görebileceğiniz bir yerde print_r ($ redux ['mytheme_videourl']) 'yapabilir misiniz? Veya print_r ($ redux ['mytheme_videourl'], true) 'açıklaması veya benzerleri gibi, içeriğini görebilmeniz için? – Eknoes

cevap

3

Redux değişkenlerinizden birinin String yerine bir Array içermesi olası görünüyor. Bunu bildiğinizde, hangisinin olduğunu bulmanız ve aradığınız gerçek veri parçasının nerede olduğunu bulmanız yeterlidir.

Bunu hata ayıklamanın bir yolu, redux değişkenlerinin üçünün de dizelere açık bir şekilde dönüştürülmesidir. (ör. 'id' => implode("***", $custom_videourl)). Ardından, hangisinin bir (veya birden fazla) bir dizi olduğunu belirledikten sonra, muhtemelen gerçekten istediğiniz veri parçasına nasıl erişeceğinizi bilirsiniz.

Bu sizin için yapmazsa, bunu wp-config.php dosyanıza eklemenizi öneririm: define('WP_DEBUG_LOG', true);

Bu, sizin için bir hata ayıklama günlüğü oluşturur. Daha sonra çıkış yapabilirsiniz (ör. error_log(print_r($custom_videourl)); Genellikle debug.log dosyasını wp-content klasöründe sakladığına inanıyorum.

+0

Size daha iyi açıklayayım. soru bunu bir https: // github kullanıyor.com/bainternet/My-Meta-Box ve bu meta kutuları komut dosyasında redux değişkenlerini çağırıyorum ama redux değişkenleri sadece redux framework'teki metin alanlarıdır – Gazi

+0

Brainuxet komut dosyasından kaldırdığımda redux değişkeni iyi çalışıyor (ikinci kodumda olduğu gibi) ve get post meta komutu 'get_post_meta ($ post-> ID, $ custom_videourl, true); 'sorunu yalnızca meta kutular alanındadır. Ben hata ayıklama ile çalışıyorum, ancak ben – Gazi

+0

@ Gazi kullanarak explantion bir göz atacağım Nasıl çalıştı? Hatanın nereden geldiğini bilmek istiyorum. – vlasits