2012-02-07 80 views
0

我正在尋找一些與Wordpress工作的指導。我的公司最近決定轉向使用Wordpress作爲我們的主要開發平臺。我習慣做OOP,並且看到Wordpress支持它,這非常棒。我確實有幾個問題,我希望一些經驗豐富的Wordpress開發人員能夠回答。WordPress插件更新

1)我們有設計人員要修改從一個插件來元素的佈局。從插件更新的角度來處理這個問題的最好方法是什麼,以便在未來的更新中不會覆蓋更改?我們可能會製作大部分自己的插件,並在可用時使用自定義內容類型。

2)從客戶的角度看,是處理自定義內容的URL(例如,常見問題解答插件,使設計人員可以處理佈局和客戶端可以很容易地進入他們)的最佳方式。我最初的想法是創建一個cutom post類型,並通過它使slu make。然而,這樣做的缺點是它們不能在頁面部分更改url並在調用插件內容之前添加任何自定義內容。我的第二個想法是隻使用短代碼,但客戶的垮臺可能會意外地將其刪除。還有另一種我失蹤或更好的方式嗎?

如果任何人有任何其他提示/建議,請隨時離開他們。此外,任何與偉大的文章/資源的工作與WordPress的鏈接表示讚賞。

回答

2

的一般提示:

  1. 始終使用Codex。 WordPress的確有一個很好的文檔。

  2. 的WordPress它很程序,但沒有人能阻止你使用OOP。我真的建議你使用自動加載器。在您的wp-配置,您註冊自動加載磁帶機是這樣的:

    定義( 'LIB_PATH',真實路徑(目錄名(FILE)) '/可溼性粉劑內容/主題/ yourtheme/lib目錄');

    需要LIB_PATH。 '/MainFolder/Autoloader.php';

    spl_autoload_register( 'MainFolder_Autoloader ::自動加載');

在主題中創建一個「lib」文件夾,並在lib目錄中創建一個「MainFolder」。然後在你的MainFolder,創建Autoloader.php文件,其中有這樣的內容:

class Autoloader 
{ 
/** 
* Namespace. 
*/ 
protected static $namespaces = array(
    'MainFolder' 

); 

/** 
* @param string $className 
* @return string|false 
*/ 
public static function autoload($className) 
{ 
    if (($classPath = self::getClassPath($className)) !== false) { 
     return include $classPath; 
    } else { 
     return false; 
    } 

} 

/** 
* @param string $className 
* @return string|false 
*/ 
private static function getClassPath($className) 
{ 
    $parts = explode("_", $className); 

    foreach (self::$namespaces as $ns) { 
     if (count($parts) && $parts[0] == $ns) { 
      $path = LIB_PATH . DIRECTORY_SEPARATOR . implode(DIRECTORY_SEPARATOR, $parts) . '.php'; 
      if (is_readable($path)) { 
       return $path; 
      } 
     } 
    } 
    return false; 
} 
} 
在「Mainfolder」你CAND將所有的類

現在,並訪問他們的主題,並祝這樣的:例如,如果你有一個Upload.php,你可以使用Mainfolder_Upload來訪問它。你可以在你的課堂上放置所有你需要的公共抽象函數。

  1. 利用自定義帖子類型。我建議你Custom post type Ui plugin。它從很多工作中保護你。

  2. 利用Page templates

  3. 當你使用AJAX在你前面,使用管理員-ajax.php文件。更多信息here。當你需要添加一些js腳本時,使用wp enque script

  4. 瞭解hooks

  5. 也許你的客戶端需要wp-admin中的一些菜單。在wp-admin區域中學習how to add administration menus

  6. 當您與數據庫連接時,請使用全局$wpdb

  7. 我不建議編輯外部插件文件。在更新時,他們會刪除您的修改。

  8. 玩得開心:) WordPress是真正的使用,你C和找到對谷歌:)

+0

我投你一起來,因爲你給了這麼多的信息大部分我已經知道的所有信息的,但你根本沒有真正回答我的問題。 – ngreenwood6 2012-02-07 15:04:25

+0

:))thx,我知道我沒有回答你的問題,但你說:「如果任何人有任何其他提示/建議,請隨時離開他們」,所以我很樂意爲您提供一些與Wordpress工作的技巧:) – zuzuleinen 2012-02-07 15:07:09

+0

儘管如此,我欣賞這些信息。 – ngreenwood6 2012-02-08 02:08:19