WordPress中的命名空间--如何启动主类?

时间:2015-07-09 作者:Rutwick Gangurde

我对PHP中的OOP有非常基本的了解,并且正在尝试学习在WordPress插件中使用名称空间。遵循以下两个来源的说明:

  1. WPSE 63668
  2. Paulund
这是我当前代码的外观:

Root Folder: plugins/oowp

File: oowp/bootstrap.php

<?php
/*
Plugin name: OOWP
*/
require_once(\'autoload.php\');

File: oowp/autoload.php

<?php
spl_autoload_register(\'autoload_function\');
function autoload_function( $classname )
{
    $class = str_replace( \'\\\\\', DIRECTORY_SEPARATOR, str_replace( \'_\', \'-\', strtolower($classname) ) );

    // create the actual filepath
    $filePath = WP_PLUGIN_DIR . DIRECTORY_SEPARATOR . $class . \'.php\';

    // check if the file exists
    if(file_exists($filePath))
    {
        // require once on the file
        require_once $filePath;
    }
}

File: oowp/objects/custom-objects.php

<?php

namespace oowp\\objects;

class Custom_Objects {
    public function __construct() {
        add_action(\'plugins_loaded\', array($this, \'trial\'));
    }

    public function trial() {
        echo \'Works\';
    }
}
我如何以及在哪里开始这门课?我是否需要编写另一个类来启动处理?我尝试创建custom-objects 类,但它不起作用。

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

试一试,就像这样:

File: oowp/bootstrap.php

<?php
/*
Plugin name: OOWP
*/

require_once( \'autoload.php\' );

use oowp\\objects\\Custom_Objects;

new Custom_Objects;

结束

相关推荐

Specific loop in Shortcode

我在做短码,我被困在这里了。以下是代码:add_shortcode(\'service-shortcode\', \'service_shortcode\'); function service_shortcode($atts) { extract( shortcode_atts( array( \'title\' => \'Service One\', \'icon\' => \'fa-briefcase\'