我的工作有兩個應用共享Symfony和WordPress的會議
1)基於WordPress的CRM(前端) 2)基於Symfony的B2C應用程序中創建
Symfony的應用和做工精細的解決方案。當我們登錄到基於symfony的應用程序時,頂層菜單會隨着人員登錄而改變。登錄更改註銷等
事情是我們需要在基於Wordpress的CRM上有相同的菜單,當有人登錄到基於symfony的應用程序時,也應該更新這個菜單。
讓我知道你是否有任何經驗或建議。
我的工作有兩個應用共享Symfony和WordPress的會議
1)基於WordPress的CRM(前端) 2)基於Symfony的B2C應用程序中創建
Symfony的應用和做工精細的解決方案。當我們登錄到基於symfony的應用程序時,頂層菜單會隨着人員登錄而改變。登錄更改註銷等
事情是我們需要在基於Wordpress的CRM上有相同的菜單,當有人登錄到基於symfony的應用程序時,也應該更新這個菜單。
讓我知道你是否有任何經驗或建議。
WordPress通過功能wp_validate_auth_cookie
可讓您控制cookie驗證。幸運的是,這個函數是「可插入的」,所以你可以重寫它。
確保WordPress的可以看到symfony中的cookie(它們必須在同一個域),然後讓該函數做這樣的事情:
session_name('symfony');
session_start();
這會給你訪問的symfony的$_SESSION
。
的user_id是,默認情況下,$_SESSION['symfony/user/sfUser/attributes']['sfGuardSecurityUser']['user_id']
如果您使用sfGuard或sfDoctrineGuard。
該功能預計將返回一個WordPress的用戶ID,但是從該點的可能性,並在多個(也有很多其他的功能,這些功能「可插拔的」。
我有一個類似的問題在幾個月這個帖子是here。它說Symfony 1.2,但我現在使用1.4,它工作正常。
頂部答案中的說明涉及創建一個單獨的控制器的wordpress,它讓wordpress運行在Symfony內。你可以使用wordpress輸出上方的菜單創建一個wordpress模板,它還可以讓你訪問wordpress中的Symfony上下文,這樣你就可以覆蓋wordpress aut驗證函數使用Symfony的身份驗證。
感謝黑頭,這正是所需要的東西。 session_name('symfony'); session_start(); print_r($ _ SESSION); – Sadi 2010-08-13 09:14:04