如何用POST META创建WordPress类?

时间:2018-08-09 作者:wpdev

我正试着做这样的东西。

<?php 
class themeSettings {

    private $key = \'themeSettings\';

    public function __construct( $key ) {
        global $post;
        $post_id = $post->ID;

        $settings = get_post_meta( $post_id, $this->key, true );
    }

    public function getData(){
        print_r( $settings[\'post_description\'] );
    }
}

$themeSettings = new themeSettings();
?>

<?php
// Print \'post_description\' values
getData();
?>
但它不起作用。我错在哪里?

1 个回复
最合适的回答,由SO网友:Serkan Algur 整理而成

你能试试这个吗。这应该行得通。如果调用getData在主题文件中。您的键必须是静态值。之后你可以这样称呼它self::$key

使用方式如下:echo $theme->getData(get_the_ID()); 如果代码有效,请通知我:)

<?php
class themeSettings {

    private static $key= \'themeSettings\'; // We Need to create a static value
    public $id; // we nedd this for postID

    public function __construct() {}

    public function getData($id){
        //$des = get_the_title($id); For Testing
        $des =  get_post_meta($id,self::$key,true);
        /** All these area and If clause for testing */
        if($des){
            //return print_r($des); For testing
            return print_r($des[\'post_description\']);
        } else {
            return \'Yok\';
        }
    }
}

$theme = new themeSettings();

/**
 * Simple usage $theme->getData(get_the_ID());
 * Dont add global WordPress values to classes.
 */

结束

相关推荐

如何在QUERY_POSTS中的自定义字段上放置orderby

我在我的query\\u帖子中有以下查询,希望向其中添加order by。Order by将位于另一个自定义字段上,并按desc Order排序。这是我现有的查询。//show all active posts for this taxonomy query_posts( array( \'post_type\' => APP_POST_TYPE, \'post_status\' => \'publish\', APP_CUSTOM_TAX