1. 程式人生 > >wordpress常用路徑函式總結

wordpress常用路徑函式總結

<?php
    // 不允許直接訪問此檔案。
    if ( ! defined( 'ABSPATH' ) ) {
	      exit( '拒絕直接訪問此指令碼.' );
    }    
    /**
     * 定義框架常用的幾個路徑,你也可以新增自己的路徑在此
     * 
     */
    //定義框架資料夾,預設為主題目錄下的redux
    
    /** 以下為常用路徑函式總結,可參考新增自己用到的變數。*/
    
    
    //主題常用路徑總結
    $op_home_url = home_url();  //輸出: http://www.xxxx.com
    $op_images_url = home_url('/images/');  //輸出: http://www.xxxx.com/images/
    $op_site_url = site_url(); //如果WordPress安裝在子目錄下,返回http://www.xx.com/wordpress,相當於後臺->設定->常規中的“WordPress 地址(URL)”。
    $op_admin_url = admin_url(); //輸出:http://www.solagirl.net/wp-admin/
    $op_content_url = content_url(); //輸出:http://www.solagirl.net/wp-content 如果在wp-config.php中改變了wp-content目錄的位置,則該函式會返回正確地址
    $op_includes_url = includes_url( '/js/'); //輸出:http://www.solagirl.net/wp-includes/js/
    
    $op_wp_upload_dir = wp_upload_dir();
    /** 可用引數
    * 示例:$upload_dir = wp_upload_dir();  
    * echo $upload_dir['baseurl'];  //輸出:http://www.solagirl.net/wp-content/uploads
    * 'path' - 上傳目錄的伺服器絕對路徑,通常以反斜槓(/)開頭
    * 'url' - 上傳目錄的完整URL
    * 'subdir' - 子目錄名稱,通常是以年/月形式組織的目錄地址,例如/2012/07
    * 'basedir' - 上傳目錄的伺服器絕對路徑,不包含子目錄
    * 'baseurl' - 上傳目錄的完整URL,不包含子目錄
    * 'error' - 報錯資訊.
    */
    
    $op_get_theme_root_uri = get_theme_root_uri(); //獲取存放主題的目錄URI 輸出:http://www.solagirl.net/wp-content/themes
    $op_get_theme_root = get_theme_root(); //獲取存放主題的目錄的伺服器絕對路徑 輸出:<tt>/home/user/public_html/wp-content/themes</tt>
    $op_get_theme_roots = get_theme_roots(); //獲取主題目錄的目錄名稱,如果你的主題目錄是/wp-content/themes,則輸出:/themes
    
    $op_get_stylesheet_directory = get_stylesheet_directory(); 
    /** //獲取當前啟用的主題目錄的伺服器絕對路徑,
    * /home/user/public_html/wp-content/themes/twentyeleven
    * 可以用來include檔案,例如
    * <?php include( get_stylesheet_directory() . '/includes/myfile.php'); ?>
    */
    
    $op_get_stylesheet_directory_uri = get_stylesheet_directory_uri();
    /** //獲取當前啟用的主題目錄的URI 
    * 輸出:http://www.solagirl.net/wp-content/themes/twentyeleven
    * 可以使用在需要主題目錄URI的場合,例如圖片
    * <img src="<?php echo get_stylesheet_directory_uri() ?>/images/aternus.png" alt="" title="" width="" height="" />
    */
    
    $op_GET_TEMPLATE_DIRECTORY_URI = GET_TEMPLATE_DIRECTORY_URI(); //如果當前啟用的主題是一個child theme,該函式返回parent theme的主題目錄URI,用法與get_stylesheet_directory_uri()類似。
    $op_GET_TEMPLATE_DIRECTORY = GET_TEMPLATE_DIRECTORY(); //如果當前啟用的主題是一個child theme,該函式返回parent theme的主題目錄的伺服器絕對路徑,用法與get_stylesheet_directory()類似。
    $op_get_stylesheet = get_stylesheet();//獲取當前啟用主題的主題目錄名稱,與get_template()的區別是,如果用了child theme,則返回child theme的目錄名稱。
    $op_get_template = get_template();//獲取當前啟用主題的主題目錄名稱,例如現在啟用的主題為twentyeleven,則輸出:twentyeleven
    
    //外掛常用路徑總結
    $op_plugins_url() = plugins_url(); //輸出:http://www.solagirl.net/wp-content/plugins
    $op_plugins_url('',__FILE__) = plugins_url(); //輸出:http://www.solagirl.net/wp-content/plugins/myplugin
    $op_plugins_url('js/myscript.js',__FILE__); = plugins_url(); //輸出:http://www.solagirl.net/wp-content/plugins/myplugin/js/myscript.js
    $op_plugin_dir_url( __FILE__ ) = plugin_dir_url( __FILE__ ); //輸出:(注意結尾有反斜槓):http://www.solagirl.net/wp-content/plugins/myplugin/
    
    
    $op_plugin_dir_path( __FILE__ ) = plugin_dir_path( __FILE__ ); 
    /** 
    * 輸出:/home/user/public_html/wp-content/plugins/myplugin/
    * 可以用來include檔案,例如
    * <?php
        define( 'MYPLUGINNAME_PATH', plugin_dir_path(__FILE__) );
        require MYPLUGINNAME_PATH . 'includes/class-metabox.php';
        require MYPLUGINNAME_PATH . 'includes/class-widget.php';
      ?>
    */
    
    
    $op_plugin_basename(__FILE__) = plugin_basename(__FILE__); 
    /** 
    * 返回呼叫該函式的外掛檔名稱(包含外掛路徑)
      例如在外掛myplugin下的myplugin.php檔案中呼叫該函式,結果如下
      echo plugin_basename(__FILE__); 
      //輸出:myplugin/myplugin.php
      如果在myplugin/include/test.php檔案中呼叫(test.php通過include引用到myplugin.php中),結果如下
      echo plugin_basename(__FILE__);
      //輸出:myplugin/include/test.php
    */
    $op_redux_path = get_template_directory() . '/redux';
    $op_redux_path = get_template_directory() . '/redux';
    
    
    $op_redux_path = get_template_directory() . '/redux';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_plugins_path = get_template_directory() . '/redux/plugins';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_themes_path = get_template_directory() . '/redux/themes';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_uploads_path = get_template_directory() . '/redux/uploads';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_languages_path = get_template_directory() . '/redux/languages';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_wp_content_path = get_template_directory() . '/redux';
    //定義框架資料夾,預設為主題目錄下的redux
    $op_wp_includes = get_template_directory() . '/redux';